[LV2] lv2_descriptor() considered harmful
David Robillard
d at drobilla.net
Sat Feb 25 13:17:01 PST 2012
On Sat, 2012-02-25 at 20:23 +0100, Martin wrote:
> Hi!
>
> > out of curiosity, how do you generate the code at runtime?
>
> I think I don't at all (at least no compiled code).
> I use a precompiled .so for a fixed amount of inputs and outputs and
> only assign new names and control value ranges in the rdf files.
> Everything needed for them is parsed from the source code (of a non
> compiled language) which is run by the shared object. So the only
> generated code are the .ttl files which is not created at run time (I do
> that using a shell script in advance). Inside the shared object
> everything stays the same, except for a unique uri per plugin. (didn't
> try if it works with a non unique though...)
This sounds like a dynmanifest problem, though I suppose you could
literally write Turtle files to the bundle at discovery. I never
considered that. It's a bit crazy, particularly since such a bundle
couldn't be installed to the system path.
> My solution for now is compiling the .so for each bundle. Maybe patching
> the binary to replace the URL would be a solution too...
>
> >
> > i'd second that request; for a host i'm working on i created an extension
> > specifically for this but it would be nicer to have a "standard" mechanism.
>
> :)
I very strongly suggest you *not* release code using some unknown
discovery mechanism. There's hardly a point in using a generic plugin
interface (i.e. LV2) at all, then.
Many people need such a thing, we should just agree on one and put it in
the core.
-dr
More information about the Devel
mailing list