[LV2] Control ports vs lv2:Parameter

Stefano D'Angelo zanga.mail at gmail.com
Sun Jun 16 10:19:53 PDT 2024


Hello Hermann,

Sorry for the late reply (very busy).

Il giorno gio 6 giu 2024 alle ore 17:41 Hermann Meyer
<brummer- at web.de> ha scritto:
>
>
> Am 06.06.24 um 12:05 schrieb Stefano D'Angelo:
> > Hi all,
> >
> > Is there a way to provide "graceful degradation" for hosts that do not
> > support lv2:Parameter but still use lv2:ControlPort? Should/could both
> > mechanisms be used to refer to the same parameter?
>
> Hi Stefano
>
> Short answer (from my knowledge) is "NO". lv2:parameter is a atom based
> control. That could be a Path, a string, a vector, or what ever data
> could be shared between the dsp thread and the GUI. May be a simple
> float or int value, may be.But if, a plug announce a port as
> lv2:parameter it properly wont react on a message via a control port.
> And visa verse.

Ok, that's bad. It means I should provide multiple versions of the
same plugins if I want to support simpler hosts and also I don't know
if there's a way to indicate that two different plugins are somehow
related in the metadata.

> > BTW, are there such hosts around still? Ardour, Reaper, and Qtractor
> > seem to support lv2:Parameter, Audacity behaves weirdly with
> > https://github.com/x42/property_example.lv2 on my laptop (the
> > auto-generated GUI is created and instantly disappears). What about
> > e.g. PipeWire? Does anybody know?
>
> Pipewire, ALSA, jackd, ASIO, coreaudio, all that didn't matter for a LV2
> plug. It will never interact with a sound server, it interact with the
> host loading it.

Pipewire can directly host LADSPA and LV2 plugins at least, which is
rather interesting for embedded applications (see
https://docs.pipewire.org/page_module_filter_chain.html).

> I just tested some plugs with Audacity after your post, and simply,
> Audacity didn't support atom ports, the plugs I tested it present simply
> without there atom ports (lv2:parameter). Still you could load presets
> to use those plugs in Audacity.

That's really bad from a UX POV.

Stefano


More information about the Devel mailing list