Skip to content

Latency Compensation

Latency has several sources, and compensating one does not remove the others. The aim is to keep musical events aligned while reporting the delay that remains between a performer and the sound.

An instrument or effect may take time to produce its output. Resonon accounts for reported plugin latency across processing paths and adds compensation delay to shorter paths. A track through a slow processor can then remain aligned with a faster track.

That is plugin delay compensation, or PDC. It waits for the slower path; it cannot make that path finish earlier. A custom effect must declare its processing latency for this accounting to include it. A creative delay’s echo time is part of its sound and is not automatically a processing-latency declaration.

Input and output also take time in buffers and converters. Increasing the block size can give the engine more time to finish, but increases the delay you hear when monitoring a performance. PDC aligns graph paths without making this device round trip disappear.

audio_latency() separates the buffer, graph compensation and device timing. Where available, device timestamps measure delays a buffer-size estimate alone misses. A reported requested buffer size would be misleading here, so the diagnostics use the size the device actually runs at.

A recording is placed against what you heard

Section titled “A recording is placed against what you heard”

A take arrives after the output you played along with and the input path you recorded through. Recording compensation accounts for the measured round trip and graph compensation, plus the rig’s recording_offset_ms residual. It changes the reference into the captured audio, retaining all captured frames. Recording and Latency explains that placement in detail.

External gear needs its own timing information. A returning audio track’s .set_delay(ms) declares the hardware round trip for live alignment; a file render has no hardware round trip and omits that delay. MIDI output alignment likewise concerns when a hardware instrument’s sound reaches the mix, not just when its MIDI message leaves the computer.

The controls belong to the path they correct. A late recording is not a reason to shift every MIDI track, and a slow effect is not a reason to change the interface’s recording residual. See Compensate for Outboard Gear, Align Hardware with the Mix and audio_latency.