diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2012-06-22 14:27:51 +0000 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2012-06-22 14:27:51 +0000 |
commit | 8c10320497f09f85a90eb831f3e6d30d084eb7ab (patch) | |
tree | 9e352c2e5e763d780ccad3821cd78716d08908a2 /libs/ardour/session_process.cc | |
parent | d70429a066dfd33cca0b6f64be7014649a9910ca (diff) |
fix reset of transport speed when seamless looping; add a few comments and tidy-ups to related transport code
git-svn-id: svn://localhost/ardour2/branches/3.0@12818 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/session_process.cc')
-rw-r--r-- | libs/ardour/session_process.cc | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/libs/ardour/session_process.cc b/libs/ardour/session_process.cc index 585d0927f2..0c3b0a57ea 100644 --- a/libs/ardour/session_process.cc +++ b/libs/ardour/session_process.cc @@ -1015,6 +1015,9 @@ Session::process_event (SessionEvent* ev) case SessionEvent::AutoLoop: if (play_loop) { + /* roll after locate, do not flush, set "with loop" + true only if we are seamless looping + */ start_locate (ev->target_frame, true, false, Config->get_seamless_loop()); } remove = false; @@ -1034,10 +1037,10 @@ Session::process_event (SessionEvent* ev) case SessionEvent::Locate: if (ev->yes_or_no) { - // cerr << "forced locate to " << ev->target_frame << endl; + /* args: do not roll after locate, do flush, not with loop */ locate (ev->target_frame, false, true, false); } else { - // cerr << "soft locate to " << ev->target_frame << endl; + /* args: do not roll after locate, do flush, not with loop */ start_locate (ev->target_frame, false, true, false); } _send_timecode_update = true; @@ -1045,10 +1048,10 @@ Session::process_event (SessionEvent* ev) case SessionEvent::LocateRoll: if (ev->yes_or_no) { - // cerr << "forced locate to+roll " << ev->target_frame << endl; + /* args: roll after locate, do flush, not with loop */ locate (ev->target_frame, true, true, false); } else { - // cerr << "soft locate to+roll " << ev->target_frame << endl; + /* args: roll after locate, do flush, not with loop */ start_locate (ev->target_frame, true, true, false); } _send_timecode_update = true; @@ -1101,6 +1104,7 @@ Session::process_event (SessionEvent* ev) break; case SessionEvent::RangeLocate: + /* args: roll after locate, do flush, not with loop */ start_locate (ev->target_frame, true, true, false); remove = false; del = false; |