comparison src/MatchPipeline.cpp @ 166:d23dad16d6f9 refactors

Simplify freq handling
author Chris Cannam
date Thu, 05 Feb 2015 11:53:23 +0000
parents 581b1118ec28
children eeed3498fe96
comparison
equal deleted inserted replaced
165:31602361fb65 166:d23dad16d6f9
21 FeatureConditioner::Parameters fcParams, 21 FeatureConditioner::Parameters fcParams,
22 DistanceMetric::Parameters dParams, 22 DistanceMetric::Parameters dParams,
23 Matcher::Parameters matchParams, 23 Matcher::Parameters matchParams,
24 double secondReferenceFrequency) : 24 double secondReferenceFrequency) :
25 m_fe1(feParams), 25 m_fe1(feParams),
26 m_fe2(feParams), 26 m_fe2(paramsWithFreq(feParams, secondReferenceFrequency)),
27 m_fc1(fcParams), 27 m_fc1(fcParams),
28 m_fc2(fcParams), 28 m_fc2(fcParams),
29 m_pm1(matchParams, dParams, 0), 29 m_pm1(matchParams, dParams, 0),
30 m_pm2(matchParams, dParams, &m_pm1), 30 m_pm2(matchParams, dParams, &m_pm1),
31 m_feeder(&m_pm1, &m_pm2), 31 m_feeder(&m_pm1, &m_pm2),
32 m_lastFrameIn1(0), 32 m_lastFrameIn1(0),
33 m_lastFrameIn2(0), 33 m_lastFrameIn2(0),
34 m_frameNo(0) 34 m_frameNo(0)
35 { 35 {
36 if (secondReferenceFrequency != 0.0) {
37 feParams.referenceFrequency = secondReferenceFrequency;
38 m_fe2 = FeatureExtractor(feParams);
39 }
40
41 m_pm1.setOtherMatcher(&m_pm2); 36 m_pm1.setOtherMatcher(&m_pm2);
42 } 37 }
43 38
44 MatchPipeline::~MatchPipeline() 39 MatchPipeline::~MatchPipeline()
45 { 40 {
41 }
42
43 FeatureExtractor::Parameters
44 MatchPipeline::paramsWithFreq(FeatureExtractor::Parameters params, double freq)
45 {
46 if (freq == 0.0) return params;
47 params.referenceFrequency = freq;
48 return params;
46 } 49 }
47 50
48 void 51 void
49 MatchPipeline::feedFrequencyDomainAudio(const float *arr1, const float *arr2) 52 MatchPipeline::feedFrequencyDomainAudio(const float *arr1, const float *arr2)
50 { 53 {