Skip to Content

RESEARCH — PROCESSING ALGORITHM

VRA

Parametric Spatial Reverb

VRA builds any acoustic space from scratch — realistic rooms or impossible ones — with full control over every reflection. Three independent stages: ray-traced early reflections, statistical cluster reflections, and a late tail driven by a target RT60.

THE PROBLEM

Two families of reverb, one missing

Reverbs come in two families, each with structural limits. Algorithmic reverbs — feedback delay networks, allpass cascades — are clever approximations whose parameters map to nothing physical: 'size' and 'decay' interact in non-obvious ways, and achieving a specific acoustic result means twiddling abstract knobs and hoping.

Convolution reverbs replay the impulse response of a real space — stunningly realistic, and rigid. Want a longer decay? Find another IR. Different wall material? Record another room. Adjust early reflections independently of the tail? Impossible — it is all baked in. And the FFTs cost CPU and latency.

Neither lets you think the way acousticians do — dimensions, materials, source and listener positions — while keeping the freedom to design spaces that do not exist in nature. That is the tool that was missing.

HOW IT WORKS

How it works

Ray-traced early reflections

Reflection paths are computed from the actual room geometry and filtered by per-surface absorption — six surfaces, individual coefficients.

Cluster reflections

Second and third order reflections are modeled statistically — the density of real rooms without the cost of tracing every ray.

RT60-targeted late reverb

Specify the decay time you want; the tail is generated from room dimensions and absorption. Parametric — no FFT, no convolution.

UNDER THE HOOD

Going deeper

VRA builds acoustic spaces from first principles and splits the response into three independently controllable stages. Early reflections — the first ~50 ms, which tell your brain the size and shape of the room and your position in it — are ray-traced against the actual geometry: for each of the six surfaces, the mirror-image source path gives the arrival time, and the surface material filters the reflection. Move a source toward a wall and that wall's reflection arrives sooner and louder, as physics dictates.

Cluster reflections — the second and third-order build-up between discrete early arrivals and the diffuse tail — are modeled statistically from the room parameters. This transition region defines naturalness more than most users realize: too slow and the space sounds artificial, too dense too fast and the room seems smaller than its decay suggests.

The late tail is generated to a target RT60 you specify directly, computed from dimensions and absorption rather than guessed at. Each surface carries its own frequency-dependent absorption coefficient (concrete 0.02–0.05, drywall 0.05–0.10, wood 0.10–0.20, heavy curtains 0.40–0.60, acoustic foam 0.60–0.90): raise the ceiling absorption and the highs decay faster; grow the volume and the decay lengthens. If your materials cannot physically reach the target RT60, VRA tells you.

Everything is parametric — no FFT, no convolution — a few samples of latency and a CPU footprint that fits embedded targets. And the physics is a tool, not a constraint: set absorptions that do not exist in nature, pair small-room early reflections with a cathedral tail — impossible rooms that keep internal coherence.

AT A GLANCE

At a glance

InputMono per source + room model
OutputAny speaker configuration
LatencyA few samples — parametric
ImplementationRay tracing + statistical model · embedded-ready
AvailabilityShips in Ripl · OEM licensing

PARAMETERS

Hands on the algorithm

Room dimensionsWidth × depth × height, in meters
Source / diffuser positionsx, y, z
Absorption0.0 – 1.0 per surface, six surfaces
RT60 targetDirect specification of decay time
Stage levelsEarly / cluster / late, independent
Pre-delayAdjustable

POSITIONING

Compared to the alternatives

vs algorithmic reverbs

Their parameters are abstractions; VRA's map to physical reality — dimensions, materials, positions.

vs convolution reverbs

The realism of measured spaces with the flexibility they can never offer: change the room, not the IR.

APPLICATIONS

Where it fits

Studio production

The three stages map to how engineers actually think: early reflections set how close a source feels, the cluster shapes the transition, the tail dials the RT60 you need — no preset hunting. Per-surface materials open designs other reverbs cannot reach: a reflective floor with an absorptive ceiling reads as a large space with a controlled decay.

Live performance

A scene set in a cathedral needs different acoustics than a scene in a basement — adjust dimensions and materials and the space transforms instantly, cue by cue. For acoustic enhancement, target specific deficiencies: add early reflections for envelopment without extending decay, or sustain without muddying the direct sound.

Immersive audio

Spatial formats place sources precisely, then leave them in an acoustic void. VRA computes reverb per object position and per speaker — a source near the left wall gets stronger reflections from that wall — and the low latency lets game worlds respond as the player walks from tunnel to hall, on hardware where convolution is too expensive.

Sound design

Acoustic space as narrative: morph between rooms in real time as a character moves, give a flashback its own acoustic identity, build impossible spaces that still sound believable because the underlying model stays coherent.

INTEGRATION

Built to live inside your product

DeliveryC · C++ · MATLAB · .dsp — full source code
PlatformsmacOS · Windows · Linux · embedded ARM
DSP platformsFlow DSP · Audio Weaver — solutions in preparation
DocumentationWhitepaper — every algorithm explained, in the clear

OEM LICENSING

  • ■  One-time payment per brand
  • ■  Full source code — C, C++, MATLAB, .dsp
  • ■  Whitepaper — all algorithms explained
  • ■  Integration support included
  • ■  Free updates
  • ■  Volume discounts on multiple licenses
REQUEST AN EVALUATION KIT

SHIPS IN

Ripl