[LV2] Inheriting plugin properties

David Robillard d at drobilla.net
Sun Jun 9 13:03:42 PDT 2013


Hello,

I'm wondering what to do about a problem raised by Ingen's ability to
run as an LV2 plugin[1], which would be shared by any other system that
defines the "plugin" in a format dynamically loaded at run-time.

The problem is the binary.  Currently, Ingen saves a symlink to the
'system' ingen_lv2.so, which works locally, but is obviously a problem
for distributing patches.  What's needed is a way to specify that the
binary for this plugin is the same as the binary of some other plugin
(e.g. a template the user must have installed)

Is this useful for other things as well?  Do we want a simple mechanism
to inherit from a single plugin

<>
    a lv2:Plugin ;
    lv2:inheritFrom <someplugin> ;
    lv2:inherit lv2:binary .

or a more advanced mechanism that allows you to inherit properties on an
individual basis from several other plugins

<>
    a lv2:Plugin ;
    lv2:binary [
        a lv2:InheritedProperty ;
        lv2:from <someplugin>
    ] .

or something else?  (There may be existing vocabulary for this somewhere
but I don't know of any)

The only immediate problem is lv2:binary because of portability, but if
we need one at all, a generic property inheritance mechanism seems like
a good idea.

Another option would be to put a full description as lv2:binary, which
could be given a URI, so

<>
    a lv2:Plugin ;
    lv2:binary <urn:mybinary> .

<urn:mybinary> ;
    lv2:binary <foo.so> ;
    lv2:otherUsefulInformation "stuff" .

This might be useful for specifying platform for portable bundles and
perhaps other things as well.

Pretty much any solution probably breaks old hosts, but I am not
terribly concerned about this.

Thoughts?

-dr

[1] http://drobilla.net/2013/06/08/ingen-as-lv2-in-ardour/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 836 bytes
Desc: This is a digitally signed message part
URL: <http://lists.lv2plug.in/pipermail/devel-lv2plug.in/attachments/20130609/d993daa2/attachment.pgp>


More information about the Devel mailing list