changeset 216:ccdadbdd80df

Default the fft size in feature extractor params -- in practice we never vary it
author Chris Cannam
date Thu, 05 Mar 2015 11:18:05 +0000
parents 0df914e353e1
children aa795f660b2b
files src/FeatureExtractor.h src/MatchVampPlugin.cpp test/TestFeatureExtractor.cpp
diffstat 3 files changed, 9 insertions(+), 7 deletions(-) [+]
line wrap: on
line diff
--- a/src/FeatureExtractor.h	Thu Mar 05 10:59:32 2015 +0000
+++ b/src/FeatureExtractor.h	Thu Mar 05 11:18:05 2015 +0000
@@ -45,10 +45,10 @@
 public:
     struct Parameters {
 
-        Parameters(float rate_, int fftSize_) :
+        Parameters(float rate_) :
             sampleRate(rate_),
             useChromaFrequencyMap(false),
-            fftSize(fftSize_),
+            fftSize(2048),
             referenceFrequency(440.0),
             minFrequency(100.),
             maxFrequency(rate_/2.)
--- a/src/MatchVampPlugin.cpp	Thu Mar 05 10:59:32 2015 +0000
+++ b/src/MatchVampPlugin.cpp	Thu Mar 05 11:18:05 2015 +0000
@@ -60,8 +60,8 @@
     m_frameNo(0),
     m_params(defaultStepTime),
     m_defaultParams(defaultStepTime),
-    m_feParams(inputSampleRate, m_blockSize),
-    m_defaultFeParams(inputSampleRate, m_blockSize),
+    m_feParams(inputSampleRate),
+    m_defaultFeParams(inputSampleRate),
     m_secondReferenceFrequency(m_defaultFeParams.referenceFrequency),
     m_fcParams(),
     m_defaultFcParams(),
@@ -436,7 +436,7 @@
 size_t
 MatchVampPlugin::getPreferredBlockSize() const
 {
-    return 2048;
+    return m_defaultFeParams.fftSize;
 }
 
 void
--- a/test/TestFeatureExtractor.cpp	Thu Mar 05 10:59:32 2015 +0000
+++ b/test/TestFeatureExtractor.cpp	Thu Mar 05 11:18:05 2015 +0000
@@ -64,7 +64,8 @@
 	    int hs = sz / 2 + 1;
 	    int fsz = 13;
     
-	    FeatureExtractor::Parameters params(float(rate), sz);
+	    FeatureExtractor::Parameters params { float(rate) };
+	    params.fftSize = sz;
 	    params.useChromaFrequencyMap = true;
 	    params.minFrequency = 0;
 	    FeatureExtractor fe(params);
@@ -142,7 +143,8 @@
     int hs = sz / 2 + 1;
     int fsz = 84;
     
-    FeatureExtractor::Parameters params(float(rate), sz);
+    FeatureExtractor::Parameters params { float(rate) };
+    params.fftSize = sz;
     params.minFrequency = 0;
     FeatureExtractor fe(params);
     BOOST_CHECK_EQUAL(fe.getFeatureSize(), fsz);