diff options
author | Robin Gareus <robin@gareus.org> | 2012-10-21 14:07:10 +0000 |
---|---|---|
committer | Robin Gareus <robin@gareus.org> | 2012-10-21 14:07:10 +0000 |
commit | ec94210a4d5009bd635b24e7f5af8946f6b7669d (patch) | |
tree | 0dc48dfca1a301a7c0a7b6f484ab397ac34c1cff /libs/ardour/session_process.cc | |
parent | 4c13d205d4adc5dde130e199ea1f228ce670b588 (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.cc | 18 |
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)) { |