Am 04.08.26 um 22:14 schrieb Fons Adriaensen:
Hello all, I want to port some of my Jack apps and zita-jacktools modules to LV2 plugins. After a year of trying to grok LV2 internals (with a lot of support from Robin Gareus - many thanks) there is one isssue that remains. All of these processors should support an arbitrary number of channels, say from 1 up to 100. Having the host instantiate N of them is NOT a solution. In most cases the actual per-channel DSP code is a tiny fraction of the total, so duplicating the rest N times would be just stupid, and in many cases (e.g. dynamics) the actual process depends on all inputs, not just the one for a single channel.
You could mark your ports as lv2:connectionOptional https://lv2plug.in/ns/lv2core#connectionOptional and then set your processor according to which channels been connected.
So this my question: is there any extension / feature / whatever in LV2 that would allow a single plugin to support 1 to N channels without having to create N URLs and having N copies of the ports list in a manifest file ? If yes: * How is it done, preferably without requiring any 'glue code' libraries ? * Which popular hosts support this ?* Is any example code available ?If no: Why was something as basic as this ignored when LV2 was designed, and why is that still the case after all these years ? Ciao,
