A question for the LV2 gurus

Fons Adriaensen <[email protected]> Tue, 4 Aug 2026 22:14:09 +0200
Newsgroups gmane.linux.audio.devel
Message-ID <[email protected]>
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.

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,

-- 
FA