[linux-audio-dev] XAP: SILENT event handling

David Olofson david at olofson.net
Mon Dec 9 11:14:00 UTC 2002


On Monday 09 December 2002 16.18, Steve Harris wrote:
> On Mon, Dec 09, 2002 at 03:11:51PM +0100, David Olofson wrote:
> > > I was assuming the SILENT event would be aginst a voice ID.
> >
> > Uhm, a Voice is an abstract object that has no known relation to
> > whatever audio outputs the synth may have... The SILENT event I'm
> > talking about is what a reverb FX would send when the tail goes
> > below the threshold, or that a synth would send when *all* Voices
> > that are routed (dry) to a certain audio output are dead.
>
> OK, that sounds useful, but also really hard. Realisticly a reverb
> can't tell when its gone to zero except by inspection and
> guesswork.

Well, just don't do it if it's too hard. Keep in mind though, that by 
doing that, you're only moving the problem over to the host and/or 
the user.

Besides, since plugins have access to their internal buffers and 
variables, I would think that they practically always have a better 
chance of doing a good job of this than the host or the user.


> If it has nonlienar internal behaviour it may not even
> be possible/practical. I tried to cacluate the RT60 time for
> Josep's gong model, based on the feedback levels. It turned out to
> be /seriously/ hard. Basicly not possible without actually running
> it ;)

Well, there's always the output meter hack. :-)

Yes, the host could do that - but it won't work for delays and that 
kind of FX, because they can be totally silent for long periods of 
time, while there is still output to come.


> I though you wanted it so that the host would know when instrument
> voices had finsihed (as in saol or csound).

Well, maybe that could be of some use, but frankly, I can't think of 
anything right now.


> If you want to render tails I think its just better to have a
> postroll time like ardour (and presuamably protools).

Yeah, that's probably sufficient for practically every user.

I guess there is a reason why most plugin APIs have this feature - 
but there must also be a reason why so many plugins don't implement 
it. :-)


//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 -'
.- M A I A -------------------------------------------------.
|    The Multimedia Application Integration Architecture    |
`----------------------------> http://www.linuxdj.com/maia -'
   --- http://olofson.net --- http://www.reologica.se ---



More information about the Linux-audio-dev mailing list