update internal-send port-count when target port-count changes
This commit is contained in:
parent
b4dea5309d
commit
0da58eeebf
@ -70,6 +70,7 @@ class LIBARDOUR_API InternalSend : public Send
|
||||
int connect_when_legal ();
|
||||
void init_gain ();
|
||||
int use_target (boost::shared_ptr<Route>);
|
||||
void target_io_changed ();
|
||||
};
|
||||
|
||||
} // namespace ARDOUR
|
||||
|
@ -388,7 +388,7 @@ Delivery::reset_panner ()
|
||||
if (_panshell) {
|
||||
_panshell->configure_io (ChanCount (DataType::AUDIO, pans_required()), ChanCount (DataType::AUDIO, pan_outs()));
|
||||
|
||||
if (_role == Main) {
|
||||
if (_role == Main || _role == Aux) {
|
||||
_panshell->pannable()->set_panner (_panshell->panner());
|
||||
}
|
||||
}
|
||||
|
@ -95,11 +95,21 @@ InternalSend::use_target (boost::shared_ptr<Route> sendto)
|
||||
target_connections.drop_connections ();
|
||||
|
||||
_send_to->DropReferences.connect_same_thread (target_connections, boost::bind (&InternalSend::send_to_going_away, this));
|
||||
_send_to->PropertyChanged.connect_same_thread (target_connections, boost::bind (&InternalSend::send_to_property_changed, this, _1));;
|
||||
_send_to->PropertyChanged.connect_same_thread (target_connections, boost::bind (&InternalSend::send_to_property_changed, this, _1));
|
||||
_send_to->io_changed.connect_same_thread (target_connections, boost::bind (&InternalSend::target_io_changed, this));
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
void
|
||||
InternalSend::target_io_changed ()
|
||||
{
|
||||
assert (_send_to);
|
||||
mixbufs.ensure_buffers (_send_to->internal_return()->input_streams(), _session.get_block_size());
|
||||
mixbufs.set_count (_send_to->internal_return()->input_streams());
|
||||
reset_panner();
|
||||
}
|
||||
|
||||
void
|
||||
InternalSend::send_to_going_away ()
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user