changeset 77:4cbbd87a8c7f tony

corrected time offset for fast yin
author matthiasm
date Fri, 04 Jul 2014 14:11:31 +0100
parents 67e9ce27119d
children e6b234575df1
files LocalCandidatePYIN.cpp PYinVamp.cpp
diffstat 2 files changed, 5 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- 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];
--- 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;