13
0

remove tests for locate_pending() before deciding whether to increment transport position

This commit is contained in:
Paul Davis 2017-07-28 12:10:04 -04:00
parent 9836cd3943
commit 8033fd9912

View File

@ -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;