# HG changeset patch # User Paul Brossier # Date 1147878912 0 # Node ID 75189a3dc0432d38e235324474f7738a6bd4be24 # Parent be376e1b36c37ec9ee2d3968037fd96edaf7a85a set negative timestamps to zero diff -r be376e1b36c3 -r 75189a3dc043 plugins/Notes.cpp --- a/plugins/Notes.cpp Wed May 17 13:38:26 2006 +0000 +++ b/plugins/Notes.cpp Wed May 17 15:15:12 2006 +0000 @@ -112,6 +112,8 @@ m_pitchmode); m_count = 0; + m_delay = Vamp::RealTime::frame2RealTime((4 + m_median) * m_stepSize, + lrintf(m_inputSampleRate)); m_currentOnset = Vamp::RealTime::zeroTime; m_haveCurrent = false; @@ -324,9 +326,8 @@ Feature feature; feature.hasTimestamp = true; - feature.timestamp = m_currentOnset - - Vamp::RealTime::frame2RealTime((4 + m_median) * m_stepSize, - m_inputSampleRate); + if (m_currentOnset < m_delay) m_currentOnset = m_delay; + feature.timestamp = m_currentOnset - m_delay; feature.values.push_back(median); // feature.values.push_back(FLOOR(aubio_freqtomidi(median) + 0.5)); feature.values.push_back diff -r be376e1b36c3 -r 75189a3dc043 plugins/Notes.h --- a/plugins/Notes.h Wed May 17 13:38:26 2006 +0000 +++ b/plugins/Notes.h Wed May 17 15:15:12 2006 +0000 @@ -71,6 +71,7 @@ size_t m_channelCount; std::deque m_notebuf; size_t m_count; + Vamp::RealTime m_delay; Vamp::RealTime m_currentOnset; Vamp::RealTime m_lastTimeStamp; float m_currentLevel; diff -r be376e1b36c3 -r 75189a3dc043 plugins/Onset.cpp --- a/plugins/Onset.cpp Wed May 17 13:38:26 2006 +0000 +++ b/plugins/Onset.cpp Wed May 17 15:15:12 2006 +0000 @@ -250,6 +250,7 @@ if (timestamp - m_lastOnset >= m_delay) { Feature onsettime; onsettime.hasTimestamp = true; + if (timestamp < m_delay) timestamp = m_delay; onsettime.timestamp = timestamp - m_delay; returnFeatures[0].push_back(onsettime); m_lastOnset = timestamp;