diff options
author | Robin Gareus <robin@gareus.org> | 2017-12-31 18:12:04 +0100 |
---|---|---|
committer | Robin Gareus <robin@gareus.org> | 2017-12-31 18:15:34 +0100 |
commit | 9fc68378c69927fb7efcaca5a03847b373333634 (patch) | |
tree | b0d4b52167e35ad3455ea139ce0ee3d5604c6306 /libs/ardour/route.cc | |
parent | 7fb1f5e032ad7659a7d5c513956692da4bce4457 (diff) |
Process Panner Automatables (emit Changed)
Pan-automation is evaluated directly from the control-list.
::distribute_automated() does not update the controls.
However, the *owner* of each automation-control is responsible to
evaluate automation of automated automation-controls (and emit Changed()
signals to notify the GUI and slaved controls).
This follow the same concept as PluginInsert: The Changed signal
is called on demand when evaluating automation.
This fixes pan-automation-sliders (automation-lane header) not updating.
Diffstat (limited to 'libs/ardour/route.cc')
-rw-r--r-- | libs/ardour/route.cc | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/libs/ardour/route.cc b/libs/ardour/route.cc index 639a0e19bc..ee31b2a4e7 100644 --- a/libs/ardour/route.cc +++ b/libs/ardour/route.cc @@ -335,6 +335,10 @@ Route::process_output_buffers (BufferSet& bufs, */ automation_run (start_sample, nframes); + if (_pannable) { + _pannable->automation_run (start_sample + _signal_latency, nframes); + } + /* figure out if we're going to use gain automation */ if (gain_automation_ok) { _amp->set_gain_automation_buffer (_session.gain_automation_buffer ()); @@ -3090,6 +3094,9 @@ Route::silence_unlocked (samplecnt_t nframes) // update owned automated controllables automation_run (now, nframes); + if (_pannable) { + _pannable->automation_run (now, nframes); + } for (ProcessorList::iterator i = _processors.begin(); i != _processors.end(); ++i) { boost::shared_ptr<PluginInsert> pi; |