summaryrefslogtreecommitdiff
path: root/libs/ardour/midi_clock_slave.cc
diff options
context:
space:
mode:
authorHans Baier <hansfbaier@googlemail.com>2010-01-29 16:07:40 +0000
committerHans Baier <hansfbaier@googlemail.com>2010-01-29 16:07:40 +0000
commit706d6e8ff06b32f2b7cefcb09fd81051c3f80735 (patch)
tree4ea4d868d65c678afa689720363be5b7f335446a /libs/ardour/midi_clock_slave.cc
parent43e15be62f1d172ef95bf3bce9f27b3f4ab173c9 (diff)
MIDClock_Slave: Introduce a 3% deadzone around speed 1.0 to lock in the speed
git-svn-id: svn://localhost/ardour2/branches/3.0@6593 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/midi_clock_slave.cc')
-rw-r--r--libs/ardour/midi_clock_slave.cc4
1 files changed, 4 insertions, 0 deletions
diff --git a/libs/ardour/midi_clock_slave.cc b/libs/ardour/midi_clock_slave.cc
index 4c73c45f49..16f4544062 100644
--- a/libs/ardour/midi_clock_slave.cc
+++ b/libs/ardour/midi_clock_slave.cc
@@ -346,6 +346,10 @@ MIDIClock_Slave::speed_and_position (double& speed, nframes64_t& pos)
// calculate speed
speed = ((t1 - t0) * session->frame_rate()) / one_ppqn_in_frames;
+
+ // provide a 3% deadzone to lock the speed
+ if (fabs(speed - 1.0) <= 0.03)
+ speed = 1.0;
// calculate position
if (engine_now > last_timestamp) {