Mercurial > hg > nnls-chroma
diff NNLSChroma.cpp @ 164:3c731acad404
Fix some problems from the plugin tester: zero sample rate with fixed sample type outputs; mismatching parameter id ("spectralshape" in Chordino, "s" in NNLSBase -- changing this in Chordino won't break anything as it would never have worked under that name anyway); some NaN values
author | Chris Cannam |
---|---|
date | Fri, 04 Sep 2015 16:45:37 +0100 |
parents | 59b26f52550d |
children |
line wrap: on
line diff
--- a/NNLSChroma.cpp Fri Sep 04 12:22:09 2015 +0100 +++ b/NNLSChroma.cpp Fri Sep 04 16:45:37 2015 +0100 @@ -84,6 +84,9 @@ int index = 0; + float featureRate = + (m_stepSize == 0) ? m_inputSampleRate/2048 : m_inputSampleRate/m_stepSize; + OutputDescriptor logfreqspecOutput; logfreqspecOutput.identifier = "logfreqspec"; logfreqspecOutput.name = "Log-Frequency Spectrum"; @@ -95,7 +98,7 @@ logfreqspecOutput.isQuantized = false; logfreqspecOutput.sampleType = OutputDescriptor::FixedSampleRate; logfreqspecOutput.hasDuration = false; - logfreqspecOutput.sampleRate = (m_stepSize == 0) ? m_inputSampleRate/2048 : m_inputSampleRate/m_stepSize; + logfreqspecOutput.sampleRate = featureRate; list.push_back(logfreqspecOutput); m_outputLogfreqspec = index++; @@ -110,7 +113,7 @@ tunedlogfreqspecOutput.isQuantized = false; tunedlogfreqspecOutput.sampleType = OutputDescriptor::FixedSampleRate; tunedlogfreqspecOutput.hasDuration = false; - tunedlogfreqspecOutput.sampleRate = (m_stepSize == 0) ? m_inputSampleRate/2048 : m_inputSampleRate/m_stepSize; + tunedlogfreqspecOutput.sampleRate = featureRate; list.push_back(tunedlogfreqspecOutput); m_outputTunedlogfreqspec = index++; @@ -125,7 +128,7 @@ semitonespectrumOutput.isQuantized = false; semitonespectrumOutput.sampleType = OutputDescriptor::FixedSampleRate; semitonespectrumOutput.hasDuration = false; - semitonespectrumOutput.sampleRate = (m_stepSize == 0) ? m_inputSampleRate/2048 : m_inputSampleRate/m_stepSize; + semitonespectrumOutput.sampleRate = featureRate; list.push_back(semitonespectrumOutput); m_outputSemitonespectrum = index++; @@ -141,7 +144,7 @@ chromaOutput.isQuantized = false; chromaOutput.sampleType = OutputDescriptor::FixedSampleRate; chromaOutput.hasDuration = false; - chromaOutput.sampleRate = (m_stepSize == 0) ? m_inputSampleRate/2048 : m_inputSampleRate/m_stepSize; + chromaOutput.sampleRate = featureRate; list.push_back(chromaOutput); m_outputChroma = index++; @@ -157,7 +160,7 @@ basschromaOutput.isQuantized = false; basschromaOutput.sampleType = OutputDescriptor::FixedSampleRate; basschromaOutput.hasDuration = false; - basschromaOutput.sampleRate = (m_stepSize == 0) ? m_inputSampleRate/2048 : m_inputSampleRate/m_stepSize; + basschromaOutput.sampleRate = featureRate; list.push_back(basschromaOutput); m_outputBasschroma = index++; @@ -173,7 +176,7 @@ bothchromaOutput.isQuantized = false; bothchromaOutput.sampleType = OutputDescriptor::FixedSampleRate; bothchromaOutput.hasDuration = false; - bothchromaOutput.sampleRate = (m_stepSize == 0) ? m_inputSampleRate/2048 : m_inputSampleRate/m_stepSize; + bothchromaOutput.sampleRate = featureRate; list.push_back(bothchromaOutput); m_outputBothchroma = index++; return list;