Docs

Docs Audio

Audio processing

Studio runs the audio through a broadcast chain before it reaches the network. The chain runs at the source, not at the receiver. The consequence is that no correction has to be set up point by point, and every receiver hears the same processed audio.

The order of the chain is as follows.

Source → 10-band EQ → Leveler (AGC) → 3-band dynamics → Look-ahead limiter → NMC → Network
Source 10-band EQ Leveler 3-band Limiter NMC Network
The broadcast chain runs at the source, before encoding.

Every stage applies the same gain to left and right. Nothing is reduced on one channel alone, so the stereo image does not drift while the music plays.

Equalizer#

A ten-band graphic equalizer on ISO octave centres: 31, 63, 125, 250, 500 Hz and 1, 2, 4, 8, 16 kHz.

The equalizer sits before the leveler. The leveler therefore absorbs any loudness change the curve introduces, and lifting a band does not lift the whole broadcast.

Each band ranges plus or minus six decibels. For store music that is more than enough; larger corrections usually belong to speaker placement or to the room.

Leveler#

The leveler rides song-to-song loudness toward a single target. In store music the usual complaint is not fidelity but one song arriving louder than the last. This stage is what answers it.

Setting Default Range
Target -18 dB -24 to -12
Speed 1.00x 0.5 slow, 1 medium, 2 fast
Input drive 0 dB -6 to +6

Raising the target does not make the broadcast louder, it only makes the chain work harder. Use receiver levels to set overall loudness.

Raising the speed makes correction faster but also files down the dynamics within a track. Over long listening sessions the slow end is less tiring.

Three-band dynamics#

The compressor is split into three bands so a peak in one band does not duck the others. A bass hit does not pull the vocal down.

Band Range Threshold Ratio Attack Release
Low Below 200 Hz -24 dB 2:1 15 ms 250 ms
Mid 200 Hz - 3 kHz -24 dB 2:1 8 ms 180 ms
High Above 3 kHz -26 dB 2.5:1 4 ms 120 ms

The low band is for bass consistency, the mid band for vocal presence and body, the high band for brightness without harshness.

The panel shows gain reduction per band. If reduction sits above a few decibels continuously, raise the threshold.

Limiter#

A look-ahead limiter sits at the end of the chain. It holds the peak without clipping.

Setting Default
Ceiling -1.0 dB
Look-ahead 5 ms
Release 60 ms

Look-ahead lets the limiter see an incoming peak in advance and bring the gain down smoothly. It ducks instead of clipping.

The limiter is not a loudness tool, it is a seat belt. If its gain reduction runs continuously, the problem is further up the chain.

Bypass#

Processing can be bypassed per source. If a source arrives already processed, for instance a mixer with its own chain on the output, bypass the chain for that source. Processing twice does not correct audio, it squeezes it.

Live control#

Every parameter changes without interrupting the broadcast. Moving a slider applies to the audio currently playing; it does not wait for the next track.

Numbers and formulas#

The whole chain runs on 48 kHz stereo, before NMC encoding. The relations below are the ones the implementation uses.

Converting between decibels and linear gain is the same at every stage.

Each smoother's time constant becomes a one-pole coefficient, where τ is the attack or release time in seconds.

So a 15 ms attack is 720 samples and a 250 ms release is 12000 samples. The time you set is an approach rate, not a cut-off point.

Leveler#

The leveler does not watch instantaneous amplitude but a running mean square. The same coefficient is used here.

The desired gain is the difference between the measured level and the target. There are two safeguards: the difference is clamped to ±9 dB, and the stage does nothing at all while the level sits below -55 dB. Without the second one, the noise floor would be lifted during silence.

Compressor#

Each band follows its own envelope. The coefficient takes the attack value while the signal rises above the envelope and the release value while it falls below.

Gain reduction comes from the standard hard-knee relation. Below the threshold there is no reduction at all.

At a ratio of 2:1 an envelope sitting 6 dB above the threshold sees 3 dB of reduction. At 2.5:1 the same envelope comes down by 3.6 dB.

Limiter#

The limiter does not look at the instantaneous peak but at the largest value inside the look-ahead window.

The window length is a fixed number of samples.

The band split is at 200 Hz and 3 kHz. Equalizer bands sit on ISO octave centres, each a peaking filter with a quality factor of 1.1:

31  63  125  250  500  1k  2k  4k  8k  16k     (Hz)

At every stage the gain is computed from the shared peak of both channels and applied to both. A compressor computed per channel shifts the stereo image the moment it works on one channel alone.