diff options
author | Robin Gareus <robin@gareus.org> | 2016-06-25 02:23:56 +0200 |
---|---|---|
committer | Robin Gareus <robin@gareus.org> | 2016-06-25 02:23:56 +0200 |
commit | e9a8ccc7e2826d8fe91eff34ee8a0683a7f7aac6 (patch) | |
tree | 50b54d5b0c31caf97d80a739c182ad5a101ecec5 /libs/ardour/send.cc | |
parent | 6a12022ccf96261d61dce06b8da6c3116fb289a1 (diff) |
major internal plugin & processor API change:
Pass current (latency compensated) cycle times to plugin.
This fixes time-reporting to plugins and also fixes automation
and when bouncing (the session->transport* is not valid) etc.
Diffstat (limited to 'libs/ardour/send.cc')
-rw-r--r-- | libs/ardour/send.cc | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/libs/ardour/send.cc b/libs/ardour/send.cc index 8f7afc7c8f..2ad08736df 100644 --- a/libs/ardour/send.cc +++ b/libs/ardour/send.cc @@ -159,7 +159,7 @@ Send::set_delay_out(framecnt_t delay) } void -Send::run (BufferSet& bufs, framepos_t start_frame, framepos_t end_frame, pframes_t nframes, bool) +Send::run (BufferSet& bufs, framepos_t start_frame, framepos_t end_frame, double speed, pframes_t nframes, bool) { if (_output->n_ports() == ChanCount::ZERO) { _meter->reset (); @@ -185,13 +185,13 @@ Send::run (BufferSet& bufs, framepos_t start_frame, framepos_t end_frame, pframe _amp->set_gain_automation_buffer (_session.send_gain_automation_buffer ()); _amp->setup_gain_automation (start_frame, end_frame, nframes); - _amp->run (sendbufs, start_frame, end_frame, nframes, true); + _amp->run (sendbufs, start_frame, end_frame, speed, nframes, true); - _delayline->run (sendbufs, start_frame, end_frame, nframes, true); + _delayline->run (sendbufs, start_frame, end_frame, speed, nframes, true); /* deliver to outputs */ - Delivery::run (sendbufs, start_frame, end_frame, nframes, true); + Delivery::run (sendbufs, start_frame, end_frame, speed, nframes, true); /* consider metering */ @@ -199,7 +199,7 @@ Send::run (BufferSet& bufs, framepos_t start_frame, framepos_t end_frame, pframe if (_amp->gain_control()->get_value() == 0) { _meter->reset(); } else { - _meter->run (*_output_buffers, start_frame, end_frame, nframes, true); + _meter->run (*_output_buffers, start_frame, end_frame, speed, nframes, true); } } |