# HG changeset patch # User matthiasm # Date 1404479491 -3600 # Node ID 4cbbd87a8c7f95ccac8e7900eef4f08bbdbb032f # Parent 67e9ce27119d7e9cea18555a0aa23a696c23c79f corrected time offset for fast yin diff -r 67e9ce27119d -r 4cbbd87a8c7f LocalCandidatePYIN.cpp --- a/LocalCandidatePYIN.cpp Mon Jun 30 11:13:33 2014 +0100 +++ b/LocalCandidatePYIN.cpp Fri Jul 04 14:11:31 2014 +0100 @@ -291,7 +291,8 @@ LocalCandidatePYIN::FeatureSet LocalCandidatePYIN::process(const float *const *inputBuffers, RealTime timestamp) { - timestamp = timestamp + Vamp::RealTime::frame2RealTime(m_blockSize/2, lrintf(m_inputSampleRate)); + int offset = m_preciseTime == 1.0 ? m_blockSize/2 : m_blockSize/4; + timestamp = timestamp + Vamp::RealTime::frame2RealTime(offset, lrintf(m_inputSampleRate)); double *dInputBuffers = new double[m_blockSize]; for (size_t i = 0; i < m_blockSize; ++i) dInputBuffers[i] = inputBuffers[0][i]; diff -r 67e9ce27119d -r 4cbbd87a8c7f PYinVamp.cpp --- a/PYinVamp.cpp Mon Jun 30 11:13:33 2014 +0100 +++ b/PYinVamp.cpp Fri Jul 04 14:11:31 2014 +0100 @@ -393,7 +393,9 @@ PYinVamp::FeatureSet PYinVamp::process(const float *const *inputBuffers, RealTime timestamp) { - timestamp = timestamp + Vamp::RealTime::frame2RealTime(m_blockSize/2, lrintf(m_inputSampleRate)); + int offset = m_preciseTime == 1.0 ? m_blockSize/2 : m_blockSize/4; + timestamp = timestamp + Vamp::RealTime::frame2RealTime(offset, lrintf(m_inputSampleRate)); + FeatureSet fs; float rms = 0;