From e87b989501340e8abf6477ed1945d9502f2827b1 Mon Sep 17 00:00:00 2001 From: Robin Gareus Date: Sat, 26 Nov 2022 18:10:23 +0100 Subject: [PATCH] Inform plugins about connected input pins When not using inplace processing (because I/O pins connections are not an identity matrix), dedicated inplace-buffers are used. Those buffers contain silence on unused ports, and hence always valid to use. However it is still useful for plugins to know if a plugin-port is actually used. VST3 can disable busses for unconnected pins. --- libs/ardour/plugin_insert.cc | 1 + 1 file changed, 1 insertion(+) diff --git a/libs/ardour/plugin_insert.cc b/libs/ardour/plugin_insert.cc index 8a5c17f112..88be372ca4 100644 --- a/libs/ardour/plugin_insert.cc +++ b/libs/ardour/plugin_insert.cc @@ -1063,6 +1063,7 @@ PluginInsert::connect_and_run (BufferSet& bufs, samplepos_t start, samplepos_t e inplace_bufs.get_available (*t, m).read_from (bufs.get_available (*t, in_idx), nframes, offset, offset); } else { inplace_bufs.get_available (*t, m).silence (nframes, offset); + i_in_map.unset (*t, in); } mapped.set (*t, m + 1); }