# HG changeset patch # User Chris Cannam # Date 1487711415 0 # Node ID 0a729b57b4e4cc7f8e2fcec446de529344c9041f # Parent ce08318aad83e4be3b6f2898f87cca2d9aaabdb8# Parent 96a6ea30933e264b57b9f5b1784430b54432bf15 Merge diff -r ce08318aad83 -r 0a729b57b4e4 data/fileio/CodedAudioFileReader.cpp --- a/data/fileio/CodedAudioFileReader.cpp Tue Feb 21 21:08:14 2017 +0000 +++ b/data/fileio/CodedAudioFileReader.cpp Tue Feb 21 21:10:15 2017 +0000 @@ -525,8 +525,12 @@ ratio, true); - if (m_frameCount + out > sv_frame_t(double(m_fileFrameCount) * ratio)) { - out = sv_frame_t(double(m_fileFrameCount) * ratio) - m_frameCount; + SVDEBUG << "CodedAudioFileReader::pushBufferResampling: resampled padFrames to " << out << " frames" << endl; + + sv_frame_t expected = sv_frame_t(round(double(m_fileFrameCount) * ratio)); + if (m_frameCount + out > expected) { + out = expected - m_frameCount; + SVDEBUG << "CodedAudioFileReader::pushBufferResampling: clipping that to " << out << " to avoid producing more samples than desired" << endl; } pushBufferNonResampling(m_resampleBuffer, out); diff -r ce08318aad83 -r 0a729b57b4e4 plugin/PiperVampPluginFactory.cpp --- a/plugin/PiperVampPluginFactory.cpp Tue Feb 21 21:08:14 2017 +0000 +++ b/plugin/PiperVampPluginFactory.cpp Tue Feb 21 21:10:15 2017 +0000 @@ -28,7 +28,7 @@ #define CAPNP_LITE 1 #endif -#include "vamp-client/qt/AutoPlugin.h" +#include "vamp-client/qt/PiperAutoPlugin.h" #include "vamp-client/qt/ProcessQtTransport.h" #include "vamp-client/CapnpRRClient.h" @@ -123,10 +123,10 @@ return 0; } - SVDEBUG << "PiperVampPluginFactory: Creating Piper AutoPlugin for server " + SVDEBUG << "PiperVampPluginFactory: Creating PiperAutoPlugin for server " << m_origins[identifier] << ", identifier " << identifier << endl; - auto ap = new piper_vamp::client::AutoPlugin + auto ap = new piper_vamp::client::PiperAutoPlugin (m_origins[identifier].toStdString(), psd.pluginKey, float(inputSampleRate), @@ -229,7 +229,7 @@ piper_vamp::ListResponse resp; try { - resp = client.listPluginData(req); + resp = client.list(req); } catch (piper_vamp::client::ServerCrashed) { SVDEBUG << "PiperVampPluginFactory: Piper server crashed" << endl; errorMessage = QObject::tr