diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2017-07-28 12:10:04 -0400 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2017-09-18 11:40:53 -0400 |
commit | 8033fd9912585c7325704cd077fe90e8f22414eb (patch) | |
tree | 914a1b55970833a601f5b236f37c974820caa132 /libs/ardour/session_process.cc | |
parent | 9836cd39432d3b2258d2a016d4c8c9c30b2d5f2f (diff) |
remove tests for locate_pending() before deciding whether to increment transport position
Diffstat (limited to 'libs/ardour/session_process.cc')
-rw-r--r-- | libs/ardour/session_process.cc | 37 |
1 files changed, 12 insertions, 25 deletions
diff --git a/libs/ardour/session_process.cc b/libs/ardour/session_process.cc index a6c877e705..168712b76d 100644 --- a/libs/ardour/session_process.cc +++ b/libs/ardour/session_process.cc @@ -388,16 +388,12 @@ Session::process_with_events (pframes_t nframes) } } - if (locate_pending()) { - frames_moved = 0; + if (_transport_speed == 1.0) { + frames_moved = (framecnt_t) nframes; } else { - if (_transport_speed == 1.0) { - frames_moved = (framecnt_t) nframes; - } else { - interpolation.set_target_speed (_target_transport_speed); - interpolation.set_speed (_transport_speed); - frames_moved = (framecnt_t) interpolation.interpolate (0, nframes, 0, 0); - } + interpolation.set_target_speed (_target_transport_speed); + interpolation.set_speed (_transport_speed); + frames_moved = (framecnt_t) interpolation.interpolate (0, nframes, 0, 0); } end_frame = _transport_frame + frames_moved; @@ -449,11 +445,7 @@ Session::process_with_events (pframes_t nframes) while (nframes) { this_nframes = nframes; /* real (jack) time relative */ - if (locate_pending()) { - frames_moved = 0; - } else { - frames_moved = (framecnt_t) floor (_transport_speed * nframes); /* transport relative */ - } + frames_moved = (framecnt_t) floor (_transport_speed * nframes); /* transport relative */ /* running an event, position transport precisely to its time */ if (this_event && this_event->action_frame <= end_frame && this_event->action_frame >= _transport_frame) { @@ -858,18 +850,13 @@ Session::process_without_events (pframes_t nframes) return; } - if (locate_pending()) { - cerr << "p-WO-E: locate still pending\n"; - frames_moved = 0; + if (_transport_speed == 1.0) { + frames_moved = (framecnt_t) nframes; } else { - if (_transport_speed == 1.0) { - frames_moved = (framecnt_t) nframes; - } else { - interpolation.set_target_speed (_target_transport_speed); - interpolation.set_speed (_transport_speed); - frames_moved = (framecnt_t) interpolation.interpolate (0, nframes, 0, 0); - cerr << "p-WO-E: current speed : " << _transport_speed << " interpolate says " << frames_moved << endl; - } + interpolation.set_target_speed (_target_transport_speed); + interpolation.set_speed (_transport_speed); + frames_moved = (framecnt_t) interpolation.interpolate (0, nframes, 0, 0); + cerr << "p-WO-E: current speed : " << _transport_speed << " interpolate says " << frames_moved << endl; } cerr << "p-WO-E: will move " << frames_moved << endl; |