X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=libs%2Fardour%2Fport_insert.cc;h=2e7f20ba6654b25ce5353b981c5fd52f430da58e;hb=b35f3088942ff623e9d09fe6acb1f214dddf73ce;hp=e14835b0832bda0491bdbe706e06746b37082f14;hpb=a1052b0eca7bdc8ec1e3ac2996cd16bb48e2a6d2;p=ardour.git diff --git a/libs/ardour/port_insert.cc b/libs/ardour/port_insert.cc index e14835b083..2e7f20ba66 100644 --- a/libs/ardour/port_insert.cc +++ b/libs/ardour/port_insert.cc @@ -172,36 +172,6 @@ PortInsert::signal_latency() const return _session.engine().frames_per_cycle() + _io->input_latency(); } -bool -PortInsert::can_support_input_configuration (ChanCount in) const -{ - if (_io->input_maximum() == ChanCount::INFINITE && _io->output_maximum() == ChanCount::INFINITE) { - - /* not configured yet */ - - return true; /* we can support anything the first time we're asked */ - - } else { - - /* the "input" config for a port insert corresponds to how - many output ports it will have. - */ - - if (_io->output_maximum() == in) { - - return true; - } - } - - return false; -} - -ChanCount -PortInsert::output_for_input_configuration (ChanCount in) const -{ - return in; -} - bool PortInsert::configure_io (ChanCount in, ChanCount out) { @@ -209,7 +179,6 @@ PortInsert::configure_io (ChanCount in, ChanCount out) the last request config. or something like that. */ - /* this is a bit odd: the number of inputs we are required to handle corresponds @@ -224,12 +193,11 @@ PortInsert::configure_io (ChanCount in, ChanCount out) _io->set_input_maximum (out); _io->set_input_minimum (out); - bool success = (_io->ensure_io (out, in, false, this) == 0); - - if (success) - return Processor::configure_io(in, out); - else + if (_io->ensure_io (out, in, false, this) != 0) { return false; + } + + return Processor::configure_io (in, out); } ChanCount @@ -244,3 +212,9 @@ PortInsert::input_streams() const return _io->n_outputs (); } +bool +PortInsert::can_support_io_configuration (const ChanCount& in, ChanCount& out) const +{ + out = in; + return true; +}