allocate buffers for all possible plugin configurations

This commit is contained in:
Robin Gareus 2016-03-26 15:02:03 +01:00
parent 5291fba919
commit d5c1ea11c3

View File

@ -2161,10 +2161,14 @@ Route::configure_processors_unlocked (ProcessorStreams* err)
boost::shared_ptr<PluginInsert> pi;
if ((pi = boost::dynamic_pointer_cast<PluginInsert>(*p)) != 0) {
/* plugins connected via Split Match may have more channels.
* route/scratch buffers are needed for all of them*/
/* plugins connected via Split or Hide Match may have more channels.
* route/scratch buffers are needed for all of them
* The configuration may only be a subset (both input and output)
*/
processor_max_streams = ChanCount::max(processor_max_streams, pi->input_streams());
processor_max_streams = ChanCount::max(processor_max_streams, pi->output_streams());
processor_max_streams = ChanCount::max(processor_max_streams, pi->natural_input_streams());
processor_max_streams = ChanCount::max(processor_max_streams, pi->natural_output_streams());
}
out = c->second;