Re: [linux-audio-dev] PTAF link and comments

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

Subject: Re: [linux-audio-dev] PTAF link and comments
From: David Olofson (david@olofson.net)
Date: Mon Feb 03 2003 - 18:58:15 EET


On Monday 03 February 2003 16.42, Steve Harris wrote:
> On Mon, Feb 03, 2003 at 04:12:19 +0200, Sami P Perttu wrote:
> > I think this is bad. There should be just one process() function,
> > which could be given two gain values, one for previous output and
> > another for the plugin's own output. Plugins would do
> >
> > out[i] = previous_gain * out[i] + gain * myoutput;
>
> David is about to say non-mixing process() is a performance hack
> ;),

Well, it is for chains of inserts among other things.

> but allways using this adds too much cost to fast plugins.

Yeah, that's what I thought at first. However, if you track the
previous_gain and gain controls, you can select between a number of
optimized inner loops internally. What you get is basically the same
thing as a bunch of different callbacks, except that it's not part of
the API, and plugins can handle it any way they like.

Oh, you *do* have to check the control events for those two controls,
of course.

That said, I still think it seems easier to just provide a few
different callbacks of which plugin authors can pick one or more. A
fully optimized plugin would implement all of them, but you'll get
away with just one. It's not as flexible, but all the complexity is
in the host SDK; all you have to do in the plugins is copy/paste some
code. (Which I don't like of course, but really; if you want to
optimize, there's no other way, unless source level macro abuse
counts...)

//David Olofson - Programmer, Composer, Open Source Advocate

.- The Return of Audiality! --------------------------------.
| Free/Open Source Audio Engine for use in Games or Studio. |
| RT and off-line synth. Scripting. Sample accurate timing. |
`---------------------------> http://olofson.net/audiality -'
   --- http://olofson.net --- http://www.reologica.se ---


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

This archive was generated by hypermail 2b28 : Mon Feb 03 2003 - 19:14:30 EET