Re: [linux-audio-dev] [ardour] custom graphics + MIDI control for LADSPA plugins

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

Subject: Re: [linux-audio-dev] [ardour] custom graphics + MIDI control for LADSPA plugins
From: David Olofson (david_AT_gardena.net)
Date: Thu Nov 30 2000 - 04:50:07 EET


On Monday 27 November 2000 15:48, Steve Harris wrote:
> On Mon, Nov 27, 2000 at 04:54:35PM +0100, Benno Senoner wrote:
> > > I would argue for MIDI streams (preparsed or not) though. Given
> > > a UI you could easily make a synth out of LADSPA.
> >
> > I believe the best thing is to keep LADSPA simple thus not
> > integrating this synth & co stuff.
> > I like David Olofson's quotes:
> > "LADSPA is VST1.0 done right, MAIA will be VST2.0 done right".
>
> OK, fair enough, but there is a certain "lets redo the API and get
> it even righter this time" attitude (with appologies for the
> english). Sophisticated API's are great, but actual working code
> people can use /now/ is great too.
>
> LADSPA has the advantage, on top of all the obvious ones, of
> existing.

Yep... However, two usable APIs are better than one broken API.

If it's possible to merge LADSPA and MAIA without automatically
reinventing all bad sides of VST, and then some, it should be done,
but it doesn't seem possible to me. MAIA is only about 50% finished,
though, so I might be wrong.

> > It is not about non-linear stuff etc, it's about providing
> > flexiblity: As David pointed out , by offering multiple datatypes
> > (in MAIA), games will be able to use their preffered datatype (eg
> > 16bit integers) and will still be able to acess the virtual
> > studio API.
> > (eg one might want to record the sound of his game directly to
> > disk, along with some background music .
>
> Is this really neccesary? For audio streams? It seams to me that
> the host should be responsible for ensuring its data is in a form
> the plugin wants, and providing loads of plugins, all with
> different input and output stream formats seems pointless.
>
> Who apart from games developers is using anything but floats? For
> input parameters and streams I can see why you want it, but not for
> data.
>
> I'm not saying its a bad idea, I just can't think of a reason for
> it, and lots against it.

There are still CPUs that have usable integer SIMD, but useless FPUs,
and some of those are very viable for embeded systems.

But the main reason why MAIA will support multiple data types has
nothing to do with performance on certain target platforms, but is
actually something that should be obvious by looking at the name:

        Multimedia Application Integration Architecture
        ^^^^^^^^^^

(This goes for the old name as well. This one just looks and sounds
better.)

> > This is only a stupid example but the multiple datatype thing
> > will become handy in some cases, and as said those that do not
> > need it will use LADSPA because it is _S_imple.
>
> But anyone who want to use any 'advanced' features, like MIDI of
> all things, is lumbered with the multiple formats and whatever else
> is in there.

Actually, no. You do have to deal with the event system and the
Property Protocol (corresponds to LADSPA control ports, but covers
some more functions), but the rest is optional. You don't even have
to support audio streaming at all, let alone more than one sample
format. All there is to it is picking the protocols you need,
implement their hooks in the plugin, and tell the host that you
support them.

A quite striking parallel would be MIDI. You can implement a MIDI
synth without even knowing about CC, Wheel and MTC events, and still
have a fully valid implementation. Just don't write any code for
stuff you don't want.

Whoever lives that long will see this in action. ;-)

//David

.- M u C o S -------------------------. .- David Olofson --------.
| A Free/Open Source | | Audio Hacker |
| Plugin and Integration Standard | | Linux Advocate |
| for | | Open Source Advocate |
| Professional and Consumer | | Singer |
| Multimedia | | Songwriter |
`-----> http://www.linuxdj.com/mucos -' `---> david_AT_linuxdj.com -'


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

This archive was generated by hypermail 2b28 : Thu Nov 30 2000 - 08:50:26 EET