Getting started with reverb

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

Post

Hi everyone,

I'm looking to create my first real vst plugin. I'm looking to do a nice reverb plugin. I know how to use JUCE, I can program and I think I've a good grasp of DSP.

My question is, what should I start reading first to start giving me ideas and how to approach it? I want to build something simple first and scale it up from there. Thanks in advance.

Post

I'm no programming expert but I'd personally start with making a delay before reverb.

Post

arkmabat wrote:I'm no programming expert but I'd personally start with making a delay before reverb.
Done! :)

Post

Oh, very nice! Honestly I'm interested in this too now...

Post

Perhaps you should try the Dattorro allpass loop.

(plus you might want to look up on how to implement fractional delay to modulate your delay lengths)

Other popular algorithms include the FDN (Feedback delay network, essentially a bunch of delay lines with a matrix to redistribute the signal), the "OpenAL algorithm" (essentially a cross between an FDN and a Dattorro allpass loop), and the Schröder algo (parallel comb filters fed into a series of allpasses - "Freeverb" is a particularly popular implementation of this one).

Post

MadBrain wrote:Perhaps you should try the Dattorro allpass loop.

(plus you might want to look up on how to implement fractional delay to modulate your delay lengths)

Other popular algorithms include the FDN (Feedback delay network, essentially a bunch of delay lines with a matrix to redistribute the signal), the "OpenAL algorithm" (essentially a cross between an FDN and a Dattorro allpass loop), and the Schröder algo (parallel comb filters fed into a series of allpasses - "Freeverb" is a particularly popular implementation of this one).

Cool, thanks!!

Post

This is also a great thread with a conversation basically between Casey from Bricasti and Sean from Valhalla DSP

http://www.gearslutz.com/board/geekslut ... lture.html

Post

It is educational to experiment with all the approaches. At least for me, being more an experiential learner. Schroeder seems ideal if one prefers the dulcet tones of a galvanized steel drum. :)

Post

*This is a try at simplifying what is required to create a reverb.*

The basic thing you need to understand is how to form a series of delay-lines into something that takes into account RT60 with the help of the Sabine equation. That you do in order to make the reverb actually feel like it's being conformed to a room and the walls it has, and even with it, the sound will be sound very metallic because there is nothing that changes the characteristics of the "bounces" the wave will make.

The other reverbs out there have experimented with this, and most of the more successful ones implement lowpass, all-pass filters that connect to eachother, and then one or more variable allpass-filters that changes its oscillation on very small scales like 1-6hz(experiment some with this) high values will introduce unwanted effects rather than the feeling of more room characteristics being introduced.

To make something "clean" you could try adding other sorts of wave-characteristics to each bounce that still is based upon a material (or template of room) but changes every so slightly(wave reflection approximation), even small random values would do to produce something less metallic.

The reason why all-pass filters works fairly great is because it changes the phase-relation between the different frequencies in the signal, that is some what what will happen when a sound wave hits a real wall.

Post Reply

Return to “DSP and Plugin Development”