Require Session MIDI buffer for Triggerbox sidechain

This fixes an issue when adding a MIDI track, but there there
are no session-buffers for it, leading to:

ARDOUR::Buffer& ARDOUR::BufferSet::get_available(ARDOUR::DataType, size_t): Assertioni < _available.get(type)' failed.
This commit is contained in:
Robin Gareus 2022-01-22 04:15:18 +01:00
parent b3f524a78a
commit 687149d8d2
Signed by: rgareus
GPG Key ID: A090BCE02CF57F04
1 changed files with 5 additions and 1 deletions

View File

@ -1982,6 +1982,11 @@ Route::configure_processors_unlocked (ProcessorStreams* err, Glib::Threads::RWLo
processor_max_streams = ChanCount::max(processor_max_streams, iop->natural_input_streams());
processor_max_streams = ChanCount::max(processor_max_streams, iop->natural_output_streams());
}
else if (boost::dynamic_pointer_cast<TriggerBox>(*p) != 0) {
/* TB sidechain control input */
processor_max_streams = ChanCount::max(processor_max_streams, c->first + ChanCount (DataType::MIDI, 1));
}
out = c->second;
if (boost::dynamic_pointer_cast<Delivery> (*p)
@ -2000,7 +2005,6 @@ Route::configure_processors_unlocked (ProcessorStreams* err, Glib::Threads::RWLo
lr.release ();
lm->acquire ();
if (_meter) {
_meter->set_max_channels (processor_max_streams);
}