builtins

Reverbs

Reverbs simulate acoustic spaces by creating many delayed, filtered reflections. Different algorithms offer different sonic characteristics.

Reverbs simulate acoustic spaces by creating many delayed, filtered reflections. Different algorithms offer different sonic characteristics.

freeverb

Freeverb - Classic Schroeder-style algorithmic reverb.

ParamTypeDefaultDescription
insignal-Input signal
roomnumber0.5Room size (0-1)
dampnumber0.5High frequency damping (0-1)
room_scalenumber0.28Density factor (affects comb filter feedback)
room_offsetnumber0.7Decay baseline offset

Aliases: reverb

A classic reverb algorithm with a smooth, natural sound. Higher room values create larger spaces with longer decay. The advanced room_scale and room_offset parameters let you tune the reverb character.

// Medium room reverb
osc("saw", 220) * ar(trigger(2)) |> freeverb(%, 0.5, 0.5) |> out(%, %)
// Large hall
osc("saw", 110) * ar(trigger(1)) |> freeverb(%, 0.9, 0.3) |> out(%, %)
// Damped small room
osc("noise") * ar(trigger(4), 0.001, 0.05) |> freeverb(%, 0.2, 0.8) |> out(%, %)
// Custom room character (more density, longer baseline decay)
osc("saw", 220) * ar(trigger(2)) |> freeverb(%, 0.5, 0.5, 0.35, 0.8) |> out(%, %)

Related: dattorro, fdn


dattorro

Dattorro Reverb - High-quality plate reverb algorithm.

ParamTypeDefaultDescription
insignal-Input signal
decaynumber0.7Decay time (0-1)
predelaynumber20.0Predelay in milliseconds
in_diffnumber0.75Input diffusion (smears input transients)
dec_diffnumber0.625Decay diffusion (smooths reverb tail)

Aliases: plate

The Dattorro plate reverb produces lush, shimmering tails perfect for vocals and synth pads. The predelay separates the dry signal from the reverb onset. The diffusion parameters control how quickly transients are smeared.

// Lush plate reverb
osc("saw", 220) * ar(trigger(2)) |> dattorro(%, 0.8, 30) |> out(%, %)
// Short bright plate
osc("tri", 440) * ar(trigger(4)) |> dattorro(%, 0.5, 10) |> out(%, %)
// High diffusion for pad-like washes
osc("saw", 220) * ar(trigger(2)) |> dattorro(%, 0.9, 50, 0.9, 0.8) |> out(%, %)

Related: freeverb, fdn


fdn

FDN Reverb - Feedback Delay Network reverb.

ParamTypeDefaultDescription
insignal-Input signal
decaynumber0.8Decay time (0-1)
dampnumber0.3High frequency damping (0-1)

Aliases: room

A matrix-based reverb using multiple delay lines with cross-feedback. Creates dense, even decay patterns suitable for ambient textures.

// Dense ambient reverb
osc("saw", 55) * ar(trigger(0.5)) |> fdn(%, 0.9, 0.4) |> out(%, %)
// Tight room
osc("noise") * ar(trigger(8), 0.001, 0.02) |> fdn(%, 0.4, 0.6) |> out(%, %)

Related: freeverb, dattorro