Fix MIDI send latency compensation

This commit is contained in:
Hector Martin
2021-08-19 21:52:07 +09:00
committed by Robin Gareus
parent a556e96ed0
commit 9b99633abe
2 changed files with 7 additions and 4 deletions

View File

@@ -162,9 +162,9 @@ InternalSend::use_target (boost::shared_ptr<Route> sendto, bool update_name)
ensure_mixbufs ();
mixbufs.set_count (_send_to->internal_return ()->input_streams ());
_meter->configure_io (ChanCount (DataType::AUDIO, pan_outs ()), ChanCount (DataType::AUDIO, pan_outs ()));
_meter->configure_io (_send_to->internal_return ()->input_streams (), _send_to->internal_return ()->input_streams ());
_send_delay->configure_io (ChanCount (DataType::AUDIO, pan_outs ()), ChanCount (DataType::AUDIO, pan_outs ()));
_send_delay->configure_io (_send_to->internal_return ()->input_streams (), _send_to->internal_return ()->input_streams ());
reset_panner ();

View File

@@ -466,6 +466,9 @@ Send::can_support_io_configuration (const ChanCount& in, ChanCount& out)
bool
Send::configure_io (ChanCount in, ChanCount out)
{
ChanCount send_count = in;
send_count.set(DataType::AUDIO, pan_outs());
if (!_amp->configure_io (in, out)) {
return false;
}
@@ -474,7 +477,7 @@ Send::configure_io (ChanCount in, ChanCount out)
return false;
}
if (!_meter->configure_io (ChanCount (DataType::AUDIO, pan_outs()), ChanCount (DataType::AUDIO, pan_outs()))) {
if (!_meter->configure_io (send_count, send_count)) {
return false;
}
@@ -482,7 +485,7 @@ Send::configure_io (ChanCount in, ChanCount out)
return false;
}
if (!_send_delay->configure_io (ChanCount (DataType::AUDIO, pan_outs()), ChanCount (DataType::AUDIO, pan_outs()))) {
if (!_send_delay->configure_io (send_count, send_count)) {
return false;
}