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.
This commit is contained in:
Robin Gareus 2017-12-31 18:12:04 +01:00
parent 7fb1f5e032
commit 9fc68378c6

View File

@ -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;