need sample code for IR or convolution reverb

DSP, Plugin and Host development discussion.
Post Reply New Topic
RELATED
PRODUCTS

Post

can someone point me at example code for creating IR or convolution plugs?

thanks in advance.

Post

Convolution itself is pretty simple, you just need a nested loop and a few multiply adds to convolve your IR array wiyth the incoming stream.

There is a dsp guide at: http://www.dspguide.com/
this covers basic convolution, and gives an implementation of 'brute force' covolution.

It can get more complex though, with the likes of FFT convolution, or other methods, which are neccessary when using long impluse responses.

Here is some stuff at musicdsp.org regarding convolution.
http://www.musicdsp.org/archive.php?classid=3#66

Post

texture wrote:Convolution itself is pretty simple, you just need a nested loop and a few multiply adds to convolve your IR array wiyth the incoming stream.

There is a dsp guide at: http://www.dspguide.com/
this covers basic convolution, and gives an implementation of 'brute force' covolution.

It can get more complex though, with the likes of FFT convolution, or other methods, which are neccessary when using long impluse responses.

Here is some stuff at musicdsp.org regarding convolution.
http://www.musicdsp.org/archive.php?classid=3#66
some good examples...thanks a lot.

anyone have example code for applying IR maps to create reverb?

Post

Image

Post


Post

texture wrote:Here is some stuff at musicdsp.org regarding convolution.
http://www.musicdsp.org/archive.php?classid=3#66
The musicdsp.org examples are almost exactly what I'm looking for - with one exception. I'm trying to figure out how to implement a simple convolution module in Reaktor, which ought to be doable (if incredibly slow) given the math primitives that are available. But - as far as I know there's no way to implement recursion in Reaktor, so ... does anyone have an example of a *linear* algorithm that can convolve two signals? I don't need the math background, just a simple brute force alg that I can try to translate into Reaktor-speak ... ?

Post

I *think* this would work:

Image

N would need to be equal to or greater than the number of samples in your IR.
It would be shockingly slow.

The Z-1 blocks are unit delays.

Post

LOL - I love that term 'shockingly slow' ... hehehe ...

Thanks for the help. I'll let y'all know if I come up with something vaguely usable ... :wink:

Post Reply

Return to “DSP and Plugin Development”