[linux-audio-dev] Re: [jmax] Running a patch as a LADSPA plugin

New Message Reply About this list Date view Thread view Subject view Author view Other groups

Subject: [linux-audio-dev] Re: [jmax] Running a patch as a LADSPA plugin
From: Steve Harris (S.W.Harris_AT_ecs.soton.ac.uk)
Date: Tue Mar 18 2003 - 11:36:09 EET


[This is a conversation Francois and I have been having this morning.
 There is a general problem with LADSPA wrapper plugins that create
 plugins from other sources. Its not possible for them to pick unique IDs
 as they dont know what has been assigned and what hasn't]

On Tue, Mar 18, 2003 at 10:14:44AM +0100, Francois Dechelle wrote:
> > That reminds me, there was another issue that Thomas raised, theres
> > currently no way to create a one-time unique LADSPA id, which I guess you
> > would need for this to work reliably.
>
> Yes, it is something that I need. The problem is that the jmaxladspa
> plugin is not a unique plugin: the number of plugins it defines is
> variable (it is the number of .jmax files that are in LADSPA_PATH
> directories).
>
> A temporary solution would be to allocate to the jMax plugin a range of
> unique IDs and that no more than this range patches can be loaded. What
> do you think about it?

Thats OK as a quick fix, but it doesn't solve the broader problem, if you
save state from a host using jMax LADSPA plugins then it wont necceserily
be the same set when you reload.

I think LADSPA needs self assigned ID's, if the UID space were bigger we
could just reseve the top bit for self assigned stuff and hash unique
strings to fill it, but as its only 32bits thats not enough space.

> Apart from this solution, I don't see how to do it.

Agreed, without a change to LADSPA I dont think its possible.

One solution could be to use a reserved ID range to flag that the ID isn't
globally unique, but the label string (not name) is, so hosts should save
state aginst the label not the ID. It has very dodgy semantics though.

A better solution would be to expand the ID space to 64bits, and reserve
the top bit's worth, which is plenty, but will break binary compatibility
of course.
 
> Another question: is there a plan to get plugin port values that are not
> floats? More precisely, I am thinking of transforming a patch that does
> granular synthesis into a plugin. But this patch needs a sound file
> name. How can I pass it to the LADSPA plugin?

You can't. I think this is thought to be outside the remit of LADSPA.
 
> BTW, do you think we should discuss this on jMax mailing list or on
> linux-audio-dev?

Yes, both probably, but I've forgotten what email address I subscribed to
the jMax list with. I guess I should resubscribe. I'l CC this to l-a-d in
the meantime.

- Steve


New Message Reply About this list Date view Thread view Subject view Author view Other groups

This archive was generated by hypermail 2b28 : Tue Mar 18 2003 - 11:33:38 EET