◄ WORLD II · THE FOLDTHE OCHO · blue builds │ the machine │ red breaks

THE COMB FILTER

Add a signal to a delayed copy of itself and the spectrum grows teeth — a comb of evenly spaced notches or peaks, one for every fs/D hertz. Down the center, data flows: a signal goes in, the delay line combs it, the response comes out. The blue team builds and defends the transfer function; the red team pushes the feedback gain until it rings forever.

source M. R. Schroeder, "Natural Sounding Artificial Reverberation," J. Audio Eng. Soc. 10(3):219–223, 1962 (Bell Labs) — AES e-library, paywalled; semanticscholar record. AMBER — no stable open link. Rendered, not quoted.

◧ blue team · builds & defends
3

THE MODEL — two transfer functions

One delay line, two ways to wire it. Feedforward: y[n] = x[n] + g·x[n−D], so H(z)=1+g·z−D — an all-zero (FIR) filter. Feedback: y[n] = x[n] + g·y[n−D], so H(z)=1/(1−g·z−D) — an all-pole filter.

Squared magnitude is exact: feedforward |H|²=1+2g·cos(ωD)+g², feedback |H|²=1/(1−2g·cos(ωD)+g²). For the current panel form:

quantityvalue
5

THE LINEAGE — a signal plus its echo AVAN

The comb is the atom of delay effects. A short delay (D≈a few ms) sweeping in time is a flanger; a slightly detuned bank is a chorus; a long delay is an echo.

Wire several feedback combs in parallel and follow them with allpasses and you have Schroeder's the-reverb. A comb is just a sparse the-biquad-filter whose one pole/zero pair is spread across D samples. Each sphere is the next one's premise.

7

THE WITNESS live

The blue team's live check: re-derive the notch spacing (fs/D), confirm the feedforward comb is FIR-stable, and test the feedback pole radius against the unit circle. If red pushes the gain out, this badge is where it shows.

▼ the machine ▼
4

DATA IN — signal & delay line in ↓

Feed a signal x[n] and hold it in a delay line of length D samples. The only knobs are the delay D (how far back the echo sits) and the mix/feedback gain g (how loud the copy returns). At sample rate fs=48000 Hz, a delay of D samples corresponds to a physical time of D/fs seconds.

D (samples)= timecharacter
1–20<0.4 msflange (tight comb)
50–10001–20 mscolour / chorus
>2000>40 msdiscrete echo

Short delay ⇒ few, wide teeth (flange). Long delay ⇒ many, dense teeth (echo). That is what you feed the panel below.

▼   feed the signal into the delay line   ▼
0

▣ THE PANEL — the engine LIT

8
0.70

Feedforward: a copy is added. Zeros land on the comb — the spectrum gets notches. Always stable (FIR).

magnitude response |H| across 0 → fs/2  ·  teeth at multiples of fs/D
impulse response — the echo train (feedback: gk at n=kD)

Move any control — |H|, the teeth spacing and the stability verdict are computed from the transfer function on the spot, never looked up.

▼   the delay line emits a comb   ▼
8

DATA OUT — the comb out ↓

What the machine produces, proven: a comb of evenly spaced teeth at fs/D Hz — feedforward gives notches (depth |1−g|, a true zero when g=1), feedback gives peaks (height 1/(1−g)). The feedforward comb is always stable; the feedback comb is stable iff |g|<1, and blows up otherwise.

The blue team's witness (left) re-derives these live; the red team (right) drives the gain past 1 to break them.

red team · attacks & breaks ◨
1

THE ADVERSARY

WALL A single comb is not a room. Its teeth are perfectly periodic and its decay is frequency-flat, so it colours the sound with an audible metallic ring — "flutter." Real reverberation needs echo density >1000/s and frequency-dependent decay; Schroeder's 1962 answer was several combs in parallel plus allpasses, precisely because one comb sounds artificial.

A feedback comb also has infinite gain at DC as g→1 (the pole reaches z=1), and any DC offset in x integrates and drifts. "Comb filter" is the atom, not the instrument.

2

THE GRAVEYARD

"A comb filter is stable for any gain." Cut. Only the feedforward (FIR) form is. The feedback comb has poles at |g|1/D; at |g|≥1 they leave the unit circle and the output grows without bound.

"Notches and peaks are the same comb." Cut. Feedforward zeros ⇒ notches at (2k+1)·fs/2D; feedback poles ⇒ peaks at k·fs/D. Same spacing, opposite teeth.

"One comb makes reverb." Kept, corrected. One comb makes flutter/coloration. Reverb is a bank of them plus allpass diffusers — the machine shows the atom.

6

THE TAMPER — break it

The red team's move: switch to feedback and shove the gain to g = 1.05 (|g|≥1). Now the echo returns louder every pass — the comb rings forever and the output diverges. The blue team's witness (window 7) is watching.

Push |g| to or past 1 and the feedback pole escapes the unit circle: the impulse response gk grows without limit. The witness recomputes the pole radius, finds it >1, and turns red. Nothing is faked; the instability is real and it is caught.