Vector Reverb Overview
Reverberation behavior represented as a point in a continuous character space whose coordinates are measured from real impulse responses, then rendered by a single living engine.
A Measured Character Space for Reverberation
Artificial reverberation has historically come in two forms. Convolution reproduces a measured space with high realism but cannot vary it — a single impulse response replays identically on every block, carrying the room's character along with its capture artifacts, modal ringing, and the stiffness of a decay that never breathes. Algorithmic reverberation is living and inexpensive but is usually voiced from invented parameters that correspond to no real space, and is widely judged the inferior sound. The Vector Reverb proposes a third form: reverberation behavior as a point in a continuous character space whose coordinates are measured from real impulse responses, rendered by a single living engine.
From Recordings to Coordinates
A library of professionally captured spaces supplies the tonal and temporal axes. Each capture is analyzed — not replayed — and reduced to a compact perceptual vector: pre-delay, broadband and per-band decay time, high-frequency damping, the rate at which discrete echoes build into a diffuse field, spectral centroid and tilt, clarity, and inter-channel coherence. Each measured space becomes an anchor coordinate.
Because the coordinates are extracted rather than invented, the system inherits the realism that makes measured spaces convincing while discarding the frozen artifacts that make a static recording sound stiff. Analysis of the library shows the obvious thing acousticians expect: size and tone vary independently — decay length and brightness are effectively uncorrelated — which is the formal justification for steering the space with orthogonal macro controls rather than a single slider.
One Living Engine
Underneath the character space sits a single stateful algorithm: a modulated feedback delay network for the diffuse tail, fed by an input-diffusion stage and preceded by a directional early-reflection stage. Intermediate positions in the space are produced by interpolating the engine's coefficients along a path that threads the anchors in a perceptually smooth order — never by crossfading recordings or outputs. Stability is guaranteed by keeping the interpolated feedback contractive at every point on the path, so the decay always remains bounded, and parameter motion is smoothed so rapid macro moves never zipper. A slow, decorrelated modulation gives the tail living movement so a long decay never sounds static, while density comes from diffusion rather than modulation.
The Position-Independence Keystone
The engine's spatial power comes from a single acoustic fact: the late diffuse field of a room is essentially independent of where the source and listener stand — after the mixing time, the reverberant field is a property of the room's volume and absorption. All position dependence lives in the early reflections: their timing, direction, and the direct-to-reverberant balance. So the diffuse tail is computed once per space and shared across every source, while a lightweight directional early stage, rendered per source position, carries all the position dependence. This makes correct, fully spatial multichannel rendering computationally affordable — exactly the property that lets one engine place many sources inside one space at performance scale.
Reaching Spaces That Cannot Exist
Because the engine renders from coefficients rather than from a recording, it is not bound by physics the way a real room is. Real spaces absorb high frequencies as they decay, so the "long and bright" region of the character space is physically empty — no real hall can sustain a long, brilliant tail. The algorithm has no such constraint and can render that region directly, reaching reverberation characters that convolution of the source library simply cannot produce. The captures are not replaced; they become the surveyed coordinates of a space the engine can travel beyond.
Why It Matters in Practice
One shared engine with multiple sends replaces multiple independent convolution instances, each running its own block-rate transforms over its own recording — collapsing many memory footprints into a single coefficient set. The result is the realism of measured spaces, the flexibility and low cost of an algorithm, and a single gesture that makes the whole space playable.