How to tame the Feedback Explosions in Cloud Type Reverb Algorythms

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

Post

I think I’m treating feedback runaway after the fact, instead of designing the feedback network to be energy-stable from the beginning.

I am experimenting with a couple of these, it can sound lovely for 2 seconds, but then the feedback builds and its madness :cry:

I don't know enough what to even say so i have ai generate this for me. Please give me some grace on this, even though I'm just a hack who knows nothing about this stuff :oops:


I’m working on a JUCE synth/reverb project and I’m trying to build a lush “cloud” style reverb, somewhat in the territory of CloudSeed / Mutable Clouds-ish diffuse reverb / huge modulated ambient tails.

The problem I’m running into is feedback stability. The reverb can sound lush and wide at lower settings, but when feedback/decay/diffusion get pushed, the tank can build up badly, especially in the low and low-mid range. Sometimes it becomes boomy, sometimes it rings or howls, and sometimes the feedback seems to run away even if the output is clipped or limited afterward.

The current architecture I’ve been experimenting with is roughly:

* multiple parallel late delay lines
* allpass diffusion stages inside or around the feedback paths
* modulation on delay/allpass sections
* damping / shelf filters
* wet/dry mix
* optional freeze
* safety limiting / clipping
* post high-pass / low-pass / tone shaping

What I tried:

1. Directly clamping the feedback coefficient lower.
This prevents runaway, but it kills the bloom and makes the reverb feel short, flat, or too safe.

2. Coupling feedback and diffusion.
The idea was: as diffusion rises, feedback headroom falls. This helped stability, but it also changes the musical response in a way that can make the reverb less lush.

3. Adding low-frequency buildup detection / a “governor.”
I added smoothed low/low-mid envelope detection so the feedback gets reduced only after buildup is detected, rather than clamping it from the start. This helped somewhat, but it can still feel like a compressor inside the reverb. It can pump, darken, or suddenly close down the tail.

4. Post high-pass / low-pass filtering.
This reduces the audible boom, but it does not truly fix the internal tank if the instability is already happening inside the feedback loop.

5. Dynamic notch / low-mid control.
I tried targeting the area where the reverb piles up, around low-mid resonances. Again, useful, but it feels like treating the symptom after the feedback network has already become poorly behaved.

6. Saturation / tanh clipping / output limiting.
This stops digital clipping, but it does not make the reverb musically stable. It can make the tail gritty, congested, or “stuck” instead of smooth and spacious.

The question: what is the proper way to design this kind of dense cloud reverb so it remains stable and musical at high decay/diffusion settings?

More specifically:

* Should every delay/allpass feedback matrix be explicitly energy-normalized?
* Should the feedback matrix be unitary/orthonormal like an FDN approach?
* Is it better to use a known stable FDN or Dattorro-style topology first, then add cloud/granular/modulated smear around it?
* Where should damping filters go: inside every feedback loop, per delay line, or only globally?
* How do you preserve bright, lush “cloud” density without low-mid runaway?
* Is post-filtering/limiting always the wrong place to solve this?
* How do commercial reverbs allow huge decay/freeze-like behavior without the low end accumulating uncontrollably?

I’m trying to avoid just lowering feedback until it is safe, because that removes the whole ambient bloom I’m after. I’m looking for guidance on the correct DSP structure: feedback matrix design, gain normalization, damping placement, modulation safety, and how to keep diffusion dense without the network becoming unstable.


I HAVE ATTACHED THE CULPRIT.
kvr_cloud_reverb_isolated.zip
You do not have the required permissions to view the files attached to this post.
100 High Quality Soundsets: Omnisphere 2, Dune 3, Tone 2 Synths, Pigments, Uhe Synths, Halion, Spire, and others.

TTU Youtube

Post

100 High Quality Soundsets: Omnisphere 2, Dune 3, Tone 2 Synths, Pigments, Uhe Synths, Halion, Spire, and others.

TTU Youtube

Post

im having lock adding movement modulation and rate to it so it doesn't build up frequencies too much in one zone, usually around 200hz. Any other ideas?
100 High Quality Soundsets: Omnisphere 2, Dune 3, Tone 2 Synths, Pigments, Uhe Synths, Halion, Spire, and others.

TTU Youtube

Post

Just tell your AI chat agent you don't want that behaviour :shrug:
We are the KVR collective. Resistance is futile. You will be assimilated. Image
My MusicCalc is served over https!!

Post

Yeah, i don't know what to make of it either. It can do just about anything but this. I think Im simplly not knowledgeable enough to prompt it correctly. I'm missing just a bit of advice or insight I think. Hopefully I can get it. If not I''ll just ask it to do other thiings :shrug: :wheee:

I asked.....

The short answer

Yes, we can build a real-time AP/FDN tweak panel where you can adjust the deep stability controls live:

feedback matrix type
matrix spread / crossfeed
line delay spacing
per-line modulation depth/rate
sub-400 Hz damping
high-frequency damping
input damping vs feedback-loop damping vs output damping
notch strength/frequency/motion
bloom delay before modulation starts
modulation fade-in time
decay amount
safety ceiling / governor
100 High Quality Soundsets: Omnisphere 2, Dune 3, Tone 2 Synths, Pigments, Uhe Synths, Halion, Spire, and others.

TTU Youtube

Post

Yeah, so im just wrapping my mind around a reverb is and that seems to be helpful, i have QUITE a range of hypothesis to try to dampen this thing. It's quite fascinating really .Im glad it was such an untameable fellow as it caused me to research this interesting subject.
100 High Quality Soundsets: Omnisphere 2, Dune 3, Tone 2 Synths, Pigments, Uhe Synths, Halion, Spire, and others.

TTU Youtube

Post

This is useful for me to consider and wrap my mind on what a reverb is.

igital reverb analogies:

Room size / dimensions -> delay lengths and early-reflection timing.
Wall/floor/ceiling distances -> delay-line times.
Surface reflectivity -> feedback amount / decay time.
Stone, tile, glass -> higher feedback and less absorption.
Carpet, curtains, people -> more damping and shorter decay.
Air absorption -> high-frequency damping / low-pass inside the loop.
Corners and room modes -> low-frequency buildup / modal resonance.
Uneven architecture -> diffusion, matrix mixing, delay spacing variety.
Scattering objects -> allpass diffusion stages.
Open doors / absorption panels -> frequency-dependent damping, shelves, notches.
Moving people / air movement / modulation -> small delay-time movement to prevent static ringing.
Multiple connected rooms -> multi-tank or carousel tank designs.


The most useful insight from the analogy

A real room controls reverb in three big ways:

1. Geometry

Digital equivalent:

delay lengths
delay spacing
matrix routing
diffusion

This determines reflection timing and modal structure.

2. Materials

Digital equivalent:

feedback
loop damping
low shelf
high damping
filters

This determines what survives each bounce.

3. Motion / variation

Digital equivalent:

delay modulation
matrix drift
notch drift
carousel tanks

This prevents static digital ringing.


DONT MIND ME, THIS IS A LOG FOR THE FUTURE TRACKING MY STUDIES


Same with a reverb tank:

Delay network = possible resonance map
Input signal = energy that excites parts of that map
Feedback = how long those excited modes survive
Damping = which modes decay faster
Matrix = how the energy moves between maps

So if I had to give a rough importance ratio for feedback resonance problems, I’d think like this:

40% delay spacing / modal structure
25% feedback amount and decay
20% damping / filtering inside the loop
10% input signal frequency content
5% modulation / movement

But when the input has repeated notes, like many C4 hits, the input role becomes much larger. In that case it might be:

But when the input has repeated notes, like many C4 hits, the input role becomes much larger. In that case it might be:

30% delay/modal structure
25% repeated input frequency content
20% feedback
15% loop damping
10% modulation/matrix movement



Energy, frequency, vibration analogy

Using those words carefully:

Energy

In our reverb, “energy” is the amount of signal power moving through the tank.

Digital equivalents:

feedback amount
signal amplitude
decay time
how much sound survives each loop
Frequency

Frequency is the pitch/spectral content of the input and the tank modes.

Digital equivalents:

input notes
comb-mode frequencies
resonant peaks
low-mid buildup
spectrum
Vibration

Vibration is the audible motion/output of the whole system over time.

Digital equivalents:

the actual reverb tail
the evolving resonant cloud
modulation movement
decay shape
ringing or bloom

So the puzzle could be framed as:

Input frequency excites the tank.
The feedback matrix redistributes energy.
The delay lines create vibrational/modal patterns.
Damping decides what energy survives.
The output is the audible vibration of the fake space.

That is a nice way to think about it.


So the beauty probably comes from a stable structure with just enough motion to prevent resonance from freezing.


So if A is 30 ms and B is 47 ms, the crossfed loop path may include:

30 + 47 = 77 ms

That creates additional modal behavior based on 77 ms too.

So yes, crossfeeding creates combined paths.

That is why a matrix can both smooth and complicate the modal pattern.


Crossfeed matrix — simple line-to-line feeding, like A feeds B and B feeds A.

Householder matrix — energy-spreading matrix where each line receives a controlled version of the average of all lines minus itself.

Hadamard matrix — a very useful plus/minus pattern matrix that spreads energy across all lines efficiently while keeping total energy controlled when properly scaled.


When sound hits a surface, a few things can happen:
some energy reflects back into the room
some energy enters the material as vibration
some energy becomes tiny amounts of heat
some energy passes through the material
some energy scatters in different directions
So absorption is not just phase cancellation. It is often energy transfer: sound energy becomes motion inside the material, and that motion eventually becomes heat through friction/internal losses.
Phase cancellation can happen too, especially with reflections interfering with each other in the room, but absorption itself is more like:
sound energy goes into the material and does not return as audible sound.
100 High Quality Soundsets: Omnisphere 2, Dune 3, Tone 2 Synths, Pigments, Uhe Synths, Halion, Spire, and others.

TTU Youtube

Post

1_h1Zyg5TqyKVBEyzgBXcEvg.jpg
In my research in reverbs i discoverd a cool thing, sound into light via water. Funny the rabbit trails we enter.



Sonoluminescence is a fascinating physical phenomenon where small gas bubbles in a liquid emit short bursts of light when subjected to intense sound waves. Despite being a subject of scientific study since its discovery in the 1930s, sonoluminescence remains partially mysterious, intriguing researchers with its complex interplay of sound, light, and fluid dynamics.


ALSO THIS LINE WHICH IS RICHLY PHILOSOPHICAL IF YOU MEDITATE ON IT :hihi:

“A resonance is becoming too dominant. What is the smallest environmental change that restores balance while preserving bloom?”

So if you place all-pass stages before or inside the reverb tank, they help transform:
clear taps → blurred taps → dense wash
That is why all-pass diffusion is so important.
You do not have the required permissions to view the files attached to this post.
100 High Quality Soundsets: Omnisphere 2, Dune 3, Tone 2 Synths, Pigments, Uhe Synths, Halion, Spire, and others.

TTU Youtube

Post

Ask the AI to write an offline test where the behavior can be reproduced, when it has reproduced it ask it to find the cause, when it has the cause ask it to fix it.

Post

rafa1981 wrote: Wed May 20, 2026 6:37 am Ask the AI to write an offline test where the behavior can be reproduced, when it has reproduced it ask it to find the cause, when it has the cause ask it to fix it.
Thanks. I more or less got my mind around what is causing it and how to fix it, yet i haven't dug in to tame it myself from scratch. I will try at some point because i want to tame and control such "explosions" because there is a moment or two before it goes violent it can be useful sound design wise. I didn't know it could do an offline test. that might be useful. i am also thinking of adding a data tracker to it so it logs all explosions and or crashes so it can learn itself and be preemptive or intentional in near explosions. :hihi:
100 High Quality Soundsets: Omnisphere 2, Dune 3, Tone 2 Synths, Pigments, Uhe Synths, Halion, Spire, and others.

TTU Youtube

Post Reply

Return to “DSP and Plugin Development”