[LAD] How to develop guis for LV2?

David Robillard dave at drobilla.net
Sat Nov 7 17:59:42 UTC 2009

On Sat, 2009-11-07 at 13:41 +0100, Jörn Nettingsmeier wrote:
> Steve Harris wrote:
> > On 5 Nov 2009, at 23:33, David Robillard wrote:
> > 
> >> On Thu, 2009-11-05 at 22:21 +0100, fons at kokkinizita.net wrote:
> >>> On the LV2 website, Lars Luthman's UI extension is described as:
> >>>
> >>> "This extension is written for revision 2 of the LV2 specification
> >>> and is NOT compatible with revisions 3 and later. Do not implement
> >>> this extension in new plugins or hosts, and do not expect it to work
> >>> in old ones. It is only available here for archaeological purposes."
> >> For anyone genuinely interested and not just taking vain pot shots to
> >> further some weird personal vendetta or whatever the hell:
> >>
> >> The thing that changed in r3 is: persistent references to ports must
> >> refer to ports by their symbol, and not their index.  Persistent means
> >> things on disk that might refer to several versions of a plugin in the
> >> future, nothing about the index has actually changed.  Plugin data
> >> files, host session files, etc.
> > 
> > This was a hangover from LADSPA, which had confusing and contradictory  
> > claims about what should/shouldn't be used to identify ports.
> > 
> > I still don't think there's consensus there.
> can you elaborate on this?

Labels are not useful as an identifier for LADSPA ports at all - there
are plugins out there that use the same label for several ports, for
example.  Despite this there's code out there that attempts to use them
as such.

More generally there's been a lot of confusion and screw-up over
identification of plugins.  The spec says to use the ID, which is
annoyingly centralized and limited.  There are plugins in the wild with
conflicting IDs.  Many people suggested using the library name and
plugin label as an identifier instead.  Unfortunately this doesn't work,
there are packages of the same plugins with different library names, or
different distributions of plugins among libraries.   I don't believe
there is a single correct way to refer to a LADSPA plugin that actually
works with all the plugins out there.  Many people just have an
extremely small number of plugins (e.g. 2 or 3 of the most popular big
packages) and don't notice.

The index vs. symbol thing with LV2 is more to do with dynamicism and
versioning, though.


More information about the Linux-audio-dev mailing list