# HG changeset patch # User Chris Cannam # Date 1480671180 0 # Node ID 5ba121f3889ec7dfd76ada10b44a15dda1ff7b7f # Parent 10cd9443fe48c030bd955702e4edb625baacf1cb Update for latest audio file reader changes & tests diff -r 10cd9443fe48 -r 5ba121f3889e .hgsubstate --- a/.hgsubstate Wed Nov 30 20:59:59 2016 +0000 +++ b/.hgsubstate Fri Dec 02 09:33:00 2016 +0000 @@ -3,5 +3,5 @@ 896aefe629c85b05ae0880ec93a396b9e3a5a304 dataquay 3257ddb6fff110cc88f3ffeaeefa0f29d5eb3b6f piper-cpp 5f67a29f0fc7f1b908f7cde4866173a7af337862 sv-dependency-builds -079e553dc16e5b5586f7b5f967b9765057983544 svcore +a421e752d22c71a9cd55db40a62f053f61d9ce57 svcore 0eebd22a081a824067bf3d5de65326696feab653 vamp-plugin-sdk diff -r 10cd9443fe48 -r 5ba121f3889e runner/FeatureExtractionManager.cpp --- a/runner/FeatureExtractionManager.cpp Wed Nov 30 20:59:59 2016 +0000 +++ b/runner/FeatureExtractionManager.cpp Fri Dec 02 09:33:00 2016 +0000 @@ -590,9 +590,14 @@ // Open to determine validity, channel count, sample rate only // (then close, and open again later with actual desired rate &c) + AudioFileReaderFactory::Parameters params; + params.normalisation = (m_normalise ? + AudioFileReaderFactory::Normalisation::Peak : + AudioFileReaderFactory::Normalisation::None); + AudioFileReader *reader = AudioFileReaderFactory::createReader - (source, 0, m_normalise, m_verbose ? &retrievalProgress : 0); + (source, params, m_verbose ? &retrievalProgress : 0); if (!reader) { throw FailedToOpenFile(audioSource); @@ -686,14 +691,23 @@ reader = 0; } } + if (!reader) { ProgressPrinter retrievalProgress("Retrieving audio data..."); FileSource fs(source, m_verbose ? &retrievalProgress : 0); fs.waitForData(); + + AudioFileReaderFactory::Parameters params; + params.targetRate = m_sampleRate; + params.normalisation = (m_normalise ? + AudioFileReaderFactory::Normalisation::Peak : + AudioFileReaderFactory::Normalisation::None); + reader = AudioFileReaderFactory::createReader - (fs, m_sampleRate, m_normalise, m_verbose ? &retrievalProgress : 0); + (fs, params, m_verbose ? &retrievalProgress : 0); if (m_verbose) retrievalProgress.done(); } + if (!reader) { throw FailedToOpenFile(source); }