summaryrefslogtreecommitdiff
path: root/libs/ardour/session_process.cc
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2012-10-21 14:07:10 +0000
committerRobin Gareus <robin@gareus.org>2012-10-21 14:07:10 +0000
commitec94210a4d5009bd635b24e7f5af8946f6b7669d (patch)
tree0dc48dfca1a301a7c0a7b6f484ab397ac34c1cff /libs/ardour/session_process.cc
parent4c13d205d4adc5dde130e199ea1f228ce670b588 (diff)
add LTC generator
git-svn-id: svn://localhost/ardour2/branches/3.0@13315 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/session_process.cc')
-rw-r--r--libs/ardour/session_process.cc18
1 files changed, 18 insertions, 0 deletions
diff --git a/libs/ardour/session_process.cc b/libs/ardour/session_process.cc
index 1d11de79d3..bd386a943d 100644
--- a/libs/ardour/session_process.cc
+++ b/libs/ardour/session_process.cc
@@ -348,6 +348,10 @@ Session::process_with_events (pframes_t nframes)
end_frame = _transport_frame + frames_moved;
+#ifdef HAVE_LTC
+ ltc_tx_send_time_code_for_cycle (_transport_frame, end_frame, _target_transport_speed, _transport_speed, nframes);
+#endif
+
{
SessionEvent* this_event;
Events::iterator the_next_one;
@@ -789,12 +793,20 @@ Session::process_without_events (pframes_t nframes)
if (!_exporting && _slave) {
if (!follow_slave (nframes)) {
+#ifdef HAVE_LTC
+ ltc_tx_send_time_code_for_cycle (_transport_frame, _transport_frame, 0, 0 , nframes);
+#endif
return;
}
}
if (_transport_speed == 0) {
fail_roll (nframes);
+#ifdef HAVE_LTC
+ if (!_exporting) {
+ ltc_tx_send_time_code_for_cycle (_transport_frame, _transport_frame, 0, 0 , nframes);
+ }
+#endif
return;
}
@@ -810,6 +822,12 @@ Session::process_without_events (pframes_t nframes)
send_midi_time_code_for_cycle (_transport_frame, _transport_frame + frames_moved, nframes);
}
+#ifdef HAVE_LTC
+ if (!_exporting) {
+ ltc_tx_send_time_code_for_cycle (_transport_frame, _transport_frame + frames_moved, _target_transport_speed, _transport_speed, nframes);
+ }
+#endif
+
framepos_t const stop_limit = compute_stop_limit ();
if (maybe_stop (stop_limit)) {