RE: [linux-audio-dev] LADSPA with multichannel and multi-dataype support almost finished,need opinions !

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

Subject: RE: [linux-audio-dev] LADSPA with multichannel and multi-dataype support almost finished,need opinions !
From: Benno Senoner (sbenno_AT_gardena.net)
Date: Sat Mar 25 2000 - 20:17:24 EET


On Sat, 25 Mar 2000, Richard W.E. Furse wrote:
> It has been made clear from the ground up that variable data types are
> beyond the scope of LADSPA for reasons of simplicity and compatibility.
> They are of course important but fall into the domain of fuller APIs such
> as MuCoS.

Sorry but I think you are wrong here:
I agree on keeping the API simple, but with my little extensions you have
a full featured API which is simple AND flexible.
You are scared by the multiple datatype issue, but this is much simpler
than you think. Tomorrow (or Monday if something gets in the way) I will post
the new LADSPA package, and you will see how simple this is.

I see MuCoS as an event-based system to deliver events and messages between
complex plugins.

LADSPA , or LADPA ( S removed because some will think that my few extensions
make it much more complex),
has to cover all our audio-plugin needs.
And we are just a step away from a flexible and powerful solution,
limiting the API now, will lead to problems later, that's for sure.
 

I think you are fearing incompatibilities between plugins and hosts if the API
gets too complex.
A 64bit-float-only plugin will not work with a 32bit-float-only host,
but there will be a GUIDELINE:
the recommended datatype will be 32bit-float, if a plugin-developer choses
to support ONLY 64bit-float, then he has to take into account, that his
plugin will not work with the majority of the "simple" host.
(In the case that the 64bit plugin supports 32bit too, then it's not a problem
at all, since this plug will work on simple hosts too)

Basically the host looks which datatypes are supported, and then
instantiates the plugin with the desired type.
simple hosts will simply look if 32bit float is supported.
If not they simply refuse to run the plugin
(that's ONE if statement, and I don't think that you can call this bloat)

>
> Multichannel support is already implicit in LADSPA through the multiple
> port model. The only benefit of extending this would be to allow variable
> channel counts, however this again falls beyond the scope of LADSPA.

Yes I know that the multichannel support is implicitly already here,
but I extended the concept a bit:
variable channel count and channel interleaving over one single port
for high-performance apps.
Again the whole concept is so simple that "dumb" mono plugins
only have to tell the host that they support only one input and one output.
All you have to do is to add a couple of assignments in the descriptor()
function and you are done.

Benno.


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

This archive was generated by hypermail 2b28 : Sat Mar 25 2000 - 21:22:48 EET