diff options
Diffstat (limited to 'libs/ardour/session_process.cc')
-rw-r--r-- | libs/ardour/session_process.cc | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/libs/ardour/session_process.cc b/libs/ardour/session_process.cc index 3c46a2e0a6..6d8c0f9f70 100644 --- a/libs/ardour/session_process.cc +++ b/libs/ardour/session_process.cc @@ -83,7 +83,7 @@ Session::process (pframes_t nframes) */ try { - if (!_engine.freewheeling() && Config->get_send_midi_clock() && transport_speed() == 1.0f && midi_clock->has_midi_port()) { + if (!_silent && !_engine.freewheeling() && Config->get_send_midi_clock() && (transport_speed() == 1.0f || transport_speed() == 0.0f) && midi_clock->has_midi_port()) { midi_clock->tick (transport_at_start, nframes); } } catch (...) { @@ -421,7 +421,9 @@ Session::process_with_events (pframes_t nframes) check_declick_out (); } - _engine.split_cycle (this_nframes); + if (nframes > 0) { + _engine.split_cycle (this_nframes); + } /* now handle this event and all others scheduled for the same time */ |