bool
MTC_Slave::give_slave_full_control_over_transport_speed() const
{
- // return true; // for PiC control */
- return false; // for Session-level computed varispeed
+ return true; // for PiC control */
+ // return false; // for Session-level computed varispeed
}
void
void
MTC_Slave::update_mtc_qtr (Parser& /*p*/, int which_qtr, nframes_t now)
{
- DEBUG_TRACE (DEBUG::MTC, string_compose ("update MTC qtr does a reset, qtr = %1 now = %2\n", which_qtr, now));
- maybe_reset ();
-
DEBUG_TRACE (DEBUG::MTC, string_compose ("qtr frame %1 at %2\n", which_qtr, now));
+ maybe_reset ();
last_inbound_frame = now;
}
*/
if (now) {
- DEBUG_TRACE (DEBUG::MTC, string_compose ("update MTC time does a reset, was full ? %1 now = %2\n", was_full, now));
maybe_reset ();
}
}
if (window_root >= 0) {
- DEBUG_TRACE (DEBUG::MTC, string_compose ("window root reset to %1\n", window_root));
reset_window (window_root);
}
}
and process() context (via ::speed_and_position())
*/
-
- DEBUG_TRACE (DEBUG::MTC, string_compose ("new MTC status %1\n", enum_2_string (status)));
switch (status) {
case MTC_Stopped:
current.guard1++;
void
MTC_Slave::queue_reset ()
{
- DEBUG_TRACE (DEBUG::MTC, "queue reset of MTC slave state\n");
- PBD::stacktrace (cerr, 35);
Glib::Mutex::Lock lm (reset_lock);
reset_pending++;
}
reset_lock.lock ();
if (reset_pending) {
- DEBUG_TRACE (DEBUG::MTC, "actually reset\n");
reset ();
reset_pending = 0;
}
void
MTC_Slave::reset ()
{
- DEBUG_TRACE (DEBUG::MTC, "*****************\n\n\n MTC SLAVE reset ********************\n\n\n");
-
last_inbound_frame = 0;
current.guard1++;
current.position = 0;
ahead of the window root (taking direction into account).
*/
- DEBUG_TRACE (DEBUG::MTC, string_compose ("trying to reset MTC window with state = %1\n", enum_2_string (port->input()->mtc_running())));
-
switch (port->input()->mtc_running()) {
case MTC_Forward:
- DEBUG_TRACE (DEBUG::MTC, "set MTC window while running forward\n");
window_begin = root;
if (session.slave_state() == Session::Running) {
window_end = root + (session.frames_per_timecode_frame() * frame_tolerance);
break;
case MTC_Backward:
- DEBUG_TRACE (DEBUG::MTC, "set MTC window while running backward\n");
if (session.slave_state() == Session::Running) {
nframes_t d = session.frames_per_timecode_frame() * frame_tolerance;
if (root > d) {
break;
default:
- DEBUG_TRACE (DEBUG::MTC, "not touching MTC window - MTC_Stopped\n");
/* do nothing */
break;
}