Reverb designs by T. Erbe

Wow - amazing. Thanks so much for posting. I’ve been wanting to get my head round reverb in Max for a while now and this could be the base.

yea feel you, kinda always been intimidated by it. been wanting to take apart the convolution reverb from m4l essentials too.

Not sure if it’s been posted here already, but the white paper for Erbeverb is great!


3.4 Random time modulation

The Erbe-Verb also contains a random modulation scheme which is inspired by Gordon Mumma’s piece [7] “Stressed Space Palindromes.” In this piece, the room size and shape is changing randomly and quickly from sound to sound. My scheme uses four layer granular/raised cosine envelopes on each delay line, with each grain selecting a random delay time, constrained by the modulation depth. The modulation speed is the grain creation speed. This type of modulation is effective at breaking up resonances and pulsing, without adding any chorusing or doppler shift. At extreme settings (when the modulation depth is high) it imparts it’s own characteristic sound. At a slow modulation rate one can easIily hear the space change size, and at a high modulation rate it quickly adds noise sidebands to all harmonics.

Really love this approach of taking inspiration from works, rather than other gear / established techniques.

I’m very interested in this borderline area where sound imparts reverb-like characteristics, but is not just a traditional reverb sound.


This really is one of my favourite parts of the Erbe-Verbe’s character. Just went through the video this afternoon and found it very interesting to know what was under the hood.

1 Like

If it’s the same one as I’m thinking of, it is the HISS tools externals inside, so there is not much there to look at in terms of the workings. Having said that the externals are easy to use and sound great.

Wondering if a Max Reverb Studies thread would be a good idea?

1 Like

ahhh yes this is true. could always look at the external source tho.

Just wanted to say thanks to all that posted here. I unwittingly spent 3 hours last night building a reverb patch in Max and comparing my patch to Erbe’s examples, adding more components, tweaking. Then the power went out and I lost it all. Such is life… maybe the universe’s way of telling me to go to bed.

Anyway, I’m a Max newbie and this gave me just the information and inspiration I needed to sit down and make something with it.


definitely share whatever results come out of it ! (when power is restored)

Thank you for sharing guys. I love learning about this sort of stuff.

So… if anyone cares, I’ve been playing around with Erbe’s examples and the parameters he laid out to find my own delay times for a 16x16 FDN reverb patch I’d like to build. He states:

  • Delay times should be mutually prime
  • If you double the delay time, it shouldn’t be within 5% of any other doubled delay time to prevent a build up of a particular frequency
  • Generally, under 130ms

Two things I found:

  • A series of Prime numbers with an exponential factor applied works fairly well
  • A Fibonacci sequence works extremely well (although some numbers are obviously not prime numbers)

I made a spreadsheet that I can post or otherwise send if anyone wants to see it.


Do share! Tuning reverbs always seems like black magic to me.

1 Like

yes, please

I did a similar thing in a web audio graph, and mostly had to tune everything by ear (because browsers), but had good fun trying out stuff in papers referenced on valhalladsp and other places. Some numbers felt right for the material I was trying out. Next time I checked a few Reaktor ensembles, and the differences were mostly the number of internal units (higher = smoother reverb) and variations in topology. Fun when the feedback gets out of hand (…not)

1 Like

This is a very basic spreadsheet of values.


I’m a Max n00b but am trying to learn - maybe making a Tom Erbe inspired reverb patch is a little ambitious for me at this point. I didn’t want to copy Tom’s patch directly but wanted to follow his guidance and see what I could do on my own, hence, coming up with my own values for the delays.

A few notes:

  • The top chart is an exponential sequence of Prime numbers, the bottom is a Fibonacci sequence
  • I did not try this with linear values as it seemed harder to get the density
  • An ideal value for each sequence is mutually prime, is not within 5% of the double of any previous value, and is between 10ms and 130ms (this part I borrowed/inferred from Tom’s models)


  • The exponential factor is 1.18 (each value is multiplied by this factor to reach the next)
  • This factor was decided on by setting the minimum delay at 10ms and the max at 130ms and choosing target values that looked reasonably diverse enough to meet the above criteria
  • Colored cells in the top chart represent values I had to nudge because they were within 5% of the double of a previous value - I simply typed in the “max” figure into a Prime number generator and went with the next available Prime.


  • The numbers aren’t all Prime numbers but otherwise meet the criteria laid out by Tom
  • I did not have to nudge any of the numbers - they simply worked :slight_smile:
  • The initial delay times are very very short - you can choose to skip these and go straight to the higher values for smaller FDNs

Uh. Yea.

This was not pleasant at all. Woke up the whole house.