Prepare to configure procs only once - fix missing panners
During session load, all earlier configure_processors() calls
were useless and not taking I/O into account! The Delivery ::pan_out()
needs _output I/O ports in order to correctly report the correct
port-count!
This worked in earlier versions because Config->map_parameters()
triggered [two] processor re-configs via ::listen_position_changed().
That behavior was changed in 1af123465c
This commit is contained in:
parent
b14fdbb516
commit
b890cf73ad
@ -316,6 +316,19 @@ Session::post_engine_init ()
|
|||||||
config.map_parameters (ft);
|
config.map_parameters (ft);
|
||||||
_butler->map_parameters ();
|
_butler->map_parameters ();
|
||||||
|
|
||||||
|
/* Configure all processors; now that the
|
||||||
|
* engine is running, ports are re-established,
|
||||||
|
* and IOChange are complete.
|
||||||
|
*/
|
||||||
|
{
|
||||||
|
Glib::Threads::Mutex::Lock lx (AudioEngine::instance()->process_lock ());
|
||||||
|
ProcessorChangeBlocker pcb (this);
|
||||||
|
boost::shared_ptr<RouteList> r = routes.reader ();
|
||||||
|
for (RouteList::iterator i = r->begin(); i != r->end(); ++i) {
|
||||||
|
(*i)->configure_processors (0);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/* Reset all panners */
|
/* Reset all panners */
|
||||||
|
|
||||||
Delivery::reset_panners ();
|
Delivery::reset_panners ();
|
||||||
|
Loading…
Reference in New Issue
Block a user