[linux-audio-dev] cool plugin from Waves

David Olofson david at olofson.net
Fri Feb 4 21:09:33 UTC 2005


On Friday 04 February 2005 19.52, Jens M Andreasen wrote:
> On fre, 2005-02-04 at 15:56 +0100, Christian Henz wrote:
> > On Sat, Jan 29, 2005 at 12:56:22AM +0100, David Olofson wrote:
> > > On Saturday 29 January 2005 00.00, Jan Depner wrote:
> > > > Now, if you could just do the same with outboard 
reverbs...   ;-)
> > > 
> > > Well, using a recorded impulse response with some sort of 
convolution 
> > > algorithm works for real rooms, so why not virtual ones?
> 
> I think this method will not catch the mild doppler effect arising
> from turbolence? (.. nor the *wild* turbolence, if house is on
> fire!) 

I guess not, because that's kind of equivalent to the room changing 
shape all the time, I think - and you can't capture that without a 
constantly "morphing" impulse response. No idea how you would go 
about recording something like that, though.

I *do* have an idea about what kind of problems that would pull in, 
though: It would be like looping a sampled waveform, except each 
sample is an impulse response... So, you need a nice, click free, non 
repetitive sounding loop. :-)


> > I think this is already being done. I remember reading somewhere 
that 
> > there is a controversy if it is actually legal to 'sample' 
outboard
> > reverb units (Lexicon etc.).
> 
> Again, will this work at all?

I'm quite sure it can work really rather well.


> The (well-working) designs I have seen,  all use time-modulated
> delays in the 'tank'. Every sampled impulse 
> response would be slightly different from the previous. 

This is a well known way to "cheat" to save cycles.

Most traditional reverbs use a small numbers of allpass filters/delay 
lines, hooked up in various ways. Some or all of these form feedback 
structures, to generate the reverb tail. With a low number of 
filters, there are only so many possible feedback delay permutations, 
so you'll almost certainly get some strong resonances. (Usually 
*exactly* where you don't want them, of course... *heh*)

If tuned properly, this modulation "trick" reduces the metallic sound 
caused by these resonances, so you can get away with an otherwise 
insufficient number of filters and/or a suboptimal tuning. (*)


Now, convolution based reverbs don't need this (at least not unless 
you want to simplate a room with moving air, that is :-), because 
they don't have feedback loops, and thus, they don't have these 
undesired and hard to tune resonaces in the first place. If the 
impulse is nice, so is the reverb, basically.

        WYHIWYG - What You Hear Is What You Get. :-)


(*) If there is such a thing as an optimal tuning at all, that
    is. To me it seems pointless to define, since it depends
    entirely on what type of sounds you're going to put through
    the reverb, and what kind of results you want. Real rooms
    are not "perfect", so what's desired is not a "perfect"
    reverb, but rather a perfect simulation of an imperfect but
    nice sounding room.


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

.- Audiality -----------------------------------------------.
|  Free/Open Source audio engine for games and multimedia.  |
| MIDI, modular synthesis, real time effects, scripting,... |
`-----------------------------------> http://audiality.org -'
   --- http://olofson.net --- http://www.reologica.se ---



More information about the Linux-audio-dev mailing list