diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2011-03-09 05:19:44 +0000 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2011-03-09 05:19:44 +0000 |
commit | 8849cb428741d7d60261d1e44ceec665912281f5 (patch) | |
tree | 94649231bdf12dfb30cf2f43b8e9029ba2b0cb2b /libs/ardour/session_transport.cc | |
parent | 30ac00b92d420da94b3cd3d9dd7fbe200ee69667 (diff) |
add new concept for managing alignment style (AlignChoice); switch to using worst_playback_latency() just about everywhere we were using worst_output_latency() - the former includes plugin latency. answer appears to break earlier fixes to alignment, but is semantically right, so plan to investigate in another 8 hours or so
git-svn-id: svn://localhost/ardour2/branches/3.0@9112 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/session_transport.cc')
-rw-r--r-- | libs/ardour/session_transport.cc | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/libs/ardour/session_transport.cc b/libs/ardour/session_transport.cc index dcbf25777a..f06e34849b 100644 --- a/libs/ardour/session_transport.cc +++ b/libs/ardour/session_transport.cc @@ -222,11 +222,11 @@ Session::realtime_stop (bool abort, bool clear_state) past that point to pick up delayed input (and/or to delick) */ - if (_worst_output_latency > current_block_size) { + if (worst_playback_latency() > current_block_size) { /* we rolled past the stop point to pick up data that had not yet arrived. move back to where the stop occured. */ - decrement_transport_position (current_block_size + (_worst_output_latency - current_block_size)); + decrement_transport_position (current_block_size + (worst_playback_latency() - current_block_size)); } else { decrement_transport_position (current_block_size); } @@ -1041,7 +1041,7 @@ Session::stop_transport (bool abort, bool clear_state) return; } - if (actively_recording() && !(transport_sub_state & StopPendingCapture) && _worst_output_latency > current_block_size) { + if (actively_recording() && !(transport_sub_state & StopPendingCapture) && worst_playback_latency() > current_block_size) { boost::shared_ptr<RouteList> rl = routes.reader(); for (RouteList::iterator i = rl->begin(); i != rl->end(); ++i) { @@ -1060,8 +1060,8 @@ Session::stop_transport (bool abort, bool clear_state) */ SessionEvent *ev = new SessionEvent (SessionEvent::StopOnce, SessionEvent::Replace, - _transport_frame + _worst_output_latency - current_block_size, - 0, 0, abort); + _transport_frame + _worst_input_latency - current_block_size, + 0, 0, abort); merge_event (ev); transport_sub_state |= StopPendingCapture; |