summaryrefslogtreecommitdiffstats
path: root/src/analyzer
diff options
context:
space:
mode:
authorUwe Klotz <uklotz@mixxx.org>2021-03-15 23:18:26 +0100
committerUwe Klotz <uklotz@mixxx.org>2021-03-15 23:18:26 +0100
commitcc99f0b10f95083a1aadb426d365638c1cfdf61a (patch)
tree56bf67ebaac0b054e6be542cdeb06e87e2c1c654 /src/analyzer
parent06cc43d6a853714513613e3a8ac04dca42ab759f (diff)
parent2a330ca4bd9e33b53bc1e05ac9da3c85d9dcee54 (diff)
Merge branch '2.3' of git@github.com:mixxxdj/mixxx.git
Diffstat (limited to 'src/analyzer')
-rw-r--r--src/analyzer/analyzerbeats.cpp26
-rw-r--r--src/analyzer/analyzerbeats.h2
-rw-r--r--src/analyzer/plugins/analyzerqueenmarybeats.cpp4
3 files changed, 6 insertions, 26 deletions
diff --git a/src/analyzer/analyzerbeats.cpp b/src/analyzer/analyzerbeats.cpp
index 7d9339c9c9..01591ea426 100644
--- a/src/analyzer/analyzerbeats.cpp
+++ b/src/analyzer/analyzerbeats.cpp
@@ -36,13 +36,10 @@ AnalyzerBeats::AnalyzerBeats(UserSettingsPointer pConfig, bool enforceBpmDetecti
m_bPreferencesReanalyzeOldBpm(false),
m_bPreferencesReanalyzeImported(false),
m_bPreferencesFixedTempo(true),
- m_bPreferencesOffsetCorrection(false),
m_bPreferencesFastAnalysis(false),
m_totalSamples(0),
m_iMaxSamplesToProcess(0),
- m_iCurrentSample(0),
- m_iMinBpm(0),
- m_iMaxBpm(9999) {
+ m_iCurrentSample(0) {
}
bool AnalyzerBeats::initialize(TrackPointer pTrack, int sampleRate, int totalSamples) {
@@ -63,11 +60,7 @@ bool AnalyzerBeats::initialize(TrackPointer pTrack, int sampleRate, int totalSam
return false;
}
- m_iMinBpm = m_bpmSettings.getBpmRangeStart();
- m_iMaxBpm = m_bpmSettings.getBpmRangeEnd();
-
m_bPreferencesFixedTempo = m_bpmSettings.getFixedTempoAssumption();
- m_bPreferencesOffsetCorrection = m_bpmSettings.getFixedTempoOffsetCorrection();
m_bPreferencesReanalyzeOldBpm = m_bpmSettings.getReanalyzeWhenSettingsChange();
m_bPreferencesReanalyzeImported = m_bpmSettings.getReanalyzeImported();
m_bPreferencesFastAnalysis = m_bpmSettings.getFastAnalysis();
@@ -86,9 +79,7 @@ bool AnalyzerBeats::initialize(TrackPointer pTrack, int sampleRate, int totalSam
qDebug() << "AnalyzerBeats preference settings:"
<< "\nPlugin:" << m_pluginId
- << "\nMin/Max BPM:" << m_iMinBpm << m_iMaxBpm
<< "\nFixed tempo assumption:" << m_bPreferencesFixedTempo
- << "\nOffset correction:" << m_bPreferencesOffsetCorrection
<< "\nRe-analyze when settings change:" << m_bPreferencesReanalyzeOldBpm
<< "\nFast analysis:" << m_bPreferencesFastAnalysis;
@@ -135,9 +126,6 @@ bool AnalyzerBeats::initialize(TrackPointer pTrack, int sampleRate, int totalSam
}
bool AnalyzerBeats::shouldAnalyze(TrackPointer pTrack) const {
- int iMinBpm = m_bpmSettings.getBpmRangeStart();
- int iMaxBpm = m_bpmSettings.getBpmRangeEnd();
-
bool bpmLock = pTrack->isBpmLocked();
if (bpmLock) {
qDebug() << "Track is BpmLocked: Beat calculation will not start";
@@ -182,12 +170,8 @@ bool AnalyzerBeats::shouldAnalyze(TrackPointer pTrack) const {
pluginID,
m_bPreferencesFastAnalysis);
QString newVersion = BeatFactory::getPreferredVersion(
- m_bPreferencesOffsetCorrection);
+ m_bPreferencesFixedTempo);
QString newSubVersion = BeatFactory::getPreferredSubVersion(
- m_bPreferencesFixedTempo,
- m_bPreferencesOffsetCorrection,
- iMinBpm,
- iMaxBpm,
extraVersionInfo);
if (version == newVersion && subVersion == newSubVersion) {
@@ -242,11 +226,7 @@ void AnalyzerBeats::storeResults(TrackPointer pTrack) {
beats,
extraVersionInfo,
m_bPreferencesFixedTempo,
- m_bPreferencesOffsetCorrection,
- m_sampleRate,
- m_totalSamples,
- m_iMinBpm,
- m_iMaxBpm);
+ m_sampleRate);
qDebug() << "AnalyzerBeats plugin detected" << beats.size()
<< "beats. Average BPM:" << (pBeats ? pBeats->getBpm() : 0.0);
} else {
diff --git a/src/analyzer/analyzerbeats.h b/src/analyzer/analyzerbeats.h
index af9568477a..0e4e44f74b 100644
--- a/src/analyzer/analyzerbeats.h
+++ b/src/analyzer/analyzerbeats.h
@@ -43,12 +43,10 @@ class AnalyzerBeats : public Analyzer {
bool m_bPreferencesReanalyzeOldBpm;
bool m_bPreferencesReanalyzeImported;
bool m_bPreferencesFixedTempo;
- bool m_bPreferencesOffsetCorrection;
bool m_bPreferencesFastAnalysis;
mixxx::audio::SampleRate m_sampleRate;
SINT m_totalSamples;
int m_iMaxSamplesToProcess;
int m_iCurrentSample;
- int m_iMinBpm, m_iMaxBpm;
};
diff --git a/src/analyzer/plugins/analyzerqueenmarybeats.cpp b/src/analyzer/plugins/analyzerqueenmarybeats.cpp
index 3cc16210fa..47ba8a1347 100644
--- a/src/analyzer/plugins/analyzerqueenmarybeats.cpp
+++ b/src/analyzer/plugins/analyzerqueenmarybeats.cpp
@@ -105,7 +105,9 @@ bool AnalyzerQueenMaryBeats::finalize() {
m_resultBeats.reserve(static_cast<int>(beats.size()));
for (size_t i = 0; i < beats.size(); ++i) {
- double result = (beats.at(i) * m_stepSize) - m_stepSize / 2;
+ // we add the halve m_stepSize here, because the beat
+ // is detected between the two samples.
+ double result = (beats.at(i) * m_stepSize) + m_stepSize / 2;
m_resultBeats.push_back(result);
}