Re: [linux-audio-dev] Simple Plugin API: In/Out Ports

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

Subject: Re: [linux-audio-dev] Simple Plugin API: In/Out Ports
From: David Olofson (david_AT_gardena.net)
Date: su maalis 05 2000 - 21:02:37 EST


On Sun, 05 Mar 2000, Benno Senoner wrote:
> I think we should separate the two plugin-API parts:
> - one for passing streamed data between plugins (audio data processing)
> ( mostly floats and doubles for DSP stuff, but other types should be possible)

Unless I'm missing something, there are basically two differences
between a LAPSPA plugin and a MuCoS plugin in this regard:

1. A MuCoS plugin keeps it's buffer pointers "private", ie not
   stored in a way that allows the host to directly modify them.

2. Consequently, the only way for the host to update a buffer
   pointer is to pass an event to the plugin.

The slight advantage with 1. is that the plugin developer can arrange
the buffer pointers any way he/she desires. As an example, a plugin
that has a low and/or fixed number of channels can have them right
inside the closure, rather than in a separate table.

2. means that the host can tell the plugin about multiple buffer
pointer changes on all channels independently - and the plugin will
apply these changes at the right times during the call.

Now, what I'm thinking is that I could just remove the first
difference, and make buffer pointer events optional. (Obviously, a
plugin that doesn't have an event port, or doesn's support the "new
buffer pointer" event, forces the host to do it the LADSPA way.)

> - the other for passing around (control) events with smart routing and
> dispatching capabilities. (for MIDI stuff, controllers, inter-application
> events etc)

Actually, extending the "new buffer pointer" event with a length
field makes it possible for a gateway to handle that event just like
any other event. (That's what I've been calling "huge data block
events" or something.)

> LADSPA seems to cover the first part
> the 2nd part has still to be determined with precision ,
> David, have you written down your crazy ideas.
> :-)

Working on it, but I'm having trouble getting enough time to get
going...

//David

.- M u C o S --------------------------------. .- David Olofson ------.
| A Free/Open Multimedia | | Audio Hacker |
| Plugin and Integration Standard | | Linux Advocate |
`------------> http://www.linuxdj.com/mucos -' | Open Source Advocate |
.- A u d i a l i t y ------------------------. | Singer |
| Rock Solid Low Latency Signal Processing | | Songwriter |
`---> http://www.angelfire.com/or/audiality -' `-> 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 : pe maalis 10 2000 - 07:23:28 EST