mirror of
https://github.com/Ardour/ardour.git
synced 2025-12-10 08:36:32 +01:00
prepare for non-seekahead [LTC] slave. fix state machine
locate() will call realtime_stop which will reset the slave-state. git-svn-id: svn://localhost/ardour2/branches/3.0@13290 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
parent
64b0efdf9f
commit
b40b353264
1 changed files with 6 additions and 5 deletions
|
|
@ -653,7 +653,10 @@ Session::track_slave_state (float slave_speed, framepos_t slave_transport_frame,
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
_slave_state = Running;
|
DEBUG_TRACE (DEBUG::Slave, string_compose ("slave stopped -> running at %1\n", slave_transport_frame));
|
||||||
|
|
||||||
|
memset (delta_accumulator, 0, sizeof (int32_t) * delta_accumulator_size);
|
||||||
|
average_slave_delta = 0L;
|
||||||
|
|
||||||
Location* al = _locations->auto_loop_location();
|
Location* al = _locations->auto_loop_location();
|
||||||
|
|
||||||
|
|
@ -665,6 +668,7 @@ Session::track_slave_state (float slave_speed, framepos_t slave_transport_frame,
|
||||||
if (slave_transport_frame != _transport_frame) {
|
if (slave_transport_frame != _transport_frame) {
|
||||||
locate (slave_transport_frame, false, false);
|
locate (slave_transport_frame, false, false);
|
||||||
}
|
}
|
||||||
|
_slave_state = Running;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
|
@ -713,9 +717,6 @@ Session::track_slave_state (float slave_speed, framepos_t slave_transport_frame,
|
||||||
cerr << "cannot micro-seek\n";
|
cerr << "cannot micro-seek\n";
|
||||||
/* XXX what? */
|
/* XXX what? */
|
||||||
}
|
}
|
||||||
|
|
||||||
memset (delta_accumulator, 0, sizeof (int32_t) * delta_accumulator_size);
|
|
||||||
average_slave_delta = 0L;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -738,7 +739,7 @@ Session::track_slave_state (float slave_speed, framepos_t slave_transport_frame,
|
||||||
force_locate (slave_transport_frame, false);
|
force_locate (slave_transport_frame, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
_slave_state = Stopped;
|
reset_slave_state();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue