The complete broadcast chain.
Leveler, five-band AGC and compressor, EQ, stereo enhancer, clipper and true-peak limiter, with eleven factory formats to start from.
See the signal flowBroadcast audio processing
aircove is a broadcast processor built for the people on the other end of the dial. It makes a hundred records from a hundred mastering rooms sound like one station, keeps the presenter clear between them, and never gives a listener a reason to reach for the volume. It's been on the air around the clock as the processor behind Circa's music station.
“It was always about the music, the presenters, the listeners.”
Nicholas Young, founder
The aircove family
Leveler, five-band AGC and compressor, EQ, stereo enhancer, clipper and true-peak limiter, with eleven factory formats to start from.
See the signal flowLive meters and the running settings, streamed to any browser or phone. Look all you like; nothing changes unless you've allowed it.
More informationAn iPhone and iPad app for the engineer minding a processor in a building across town.
More informationThe same controls and meters in a page, drawn from the processor's own settings, so a slider can't offer a value the processor would refuse.
More informationWhy a station needs a processor
Put a hundred records on shuffle and each arrives at a different loudness, with a different balance and a different crest factor, with a presenter talking between them. Your listener hears that as riding the volume all afternoon. A processor earns its place in four ways.
A record with 12 dB between its quiet verse and its chorus sounds wonderful in a studio and disappears under road noise in a car. The leveler and the five-band compressor bring that range down to what the room can carry, and the rung you pick decides how far: about 2, 4 or 8 LU.
Programme changes source every three minutes. The multiband AGC brings each band to the same place on every record, the compressors add density without a kick drum ducking the vocal, and the house balance pulls every master toward one measured tone, which becomes your station's signature.
A voice has lopsided peaks that a limiter grabs before the words get loud enough. The phase rotator evens them out when the host says someone's talking, lowering peak-to-RMS by about 1 dB, and the leveler brings a quiet read up to sit with the music around it.
A lossy encoder turns an over into distortion you'll never see on a meter. The true-peak limiter reads a 4x oversampled copy of the signal, so it holds the ceiling between samples as well as on them, and the output lock keeps the programme on your calibration.
The trick, and it's the one broadcast processing has chased for fifty years, is doing all of that while your listener believes nothing's been touched. No spec sheet proves that, so the best test is still long-term listening: run it over your own library and live with it for an afternoon.
Signal flow
Four stages control level, and four level controls moving at the same speed will fight and pump. So the limiter works in milliseconds, the leveler over seconds, and the band AGC over tens of seconds. Stages marked off cost nothing until you turn them on.
Features
Every setting in aircove has a measurement behind it, and every claim below comes from a test you can run again.
Factory formats
A format sets the whole chain at once: the dynamics, where the bands split, how hard each band is compressed, and the standing tilt across them. Every tone trim sits within 3.5 dB, so a format leans a band rather than equalising it.
| Format | Holds | Sounds like |
|---|---|---|
| CHR, Urban, Hot AC, Rock | ~2 LU | Loud, dense, the same on every record |
| Talk | ~2 LU | An intelligibility setting, and it's supposed to sound wrong on music |
| Reference, AC, Country, Classic Rock | ~4 LU | Present without being relentless |
| Jazz, Classical | ~8 LU | Barely touched, for recordings that don't want help |
The dynamics under each format come from the measured rung ladder: Smooth holds about 2 LU, Drive about 4, Glide about 8, and Off keeps the record just as it arrived (the limiter still runs, since a ceiling isn't a format choice).
Compared with an Optimod 5950
These are the audio-processing rows of Orban's own comparison sheet (revised 16 April 2024), with aircove's answer beside each. It's about which blocks exist, not how they sound.
| Block | Optimod 5950 | aircove |
|---|---|---|
| 2-band gated AGC | Yes | Yes |
| Multiband compressor | 2 or 5 bands | 5 bands |
| Compressor look-ahead | Yes | Yes, 0 to 10 ms |
| Downward expander | Yes | Yes, per band |
| Parametric EQ | 3-band | 3-band |
| Program-adaptive HF enhancer | Yes | Yes, lift only |
| Stereo enhancer | Two styles | One style, mono-safe |
| Anti-aliased clippers | Yes | Yes, 4x oversampled |
| Bass clipper | Yes | Yes |
| Clipping distortion controller | Program-adaptive | Yes, fixed 150 Hz to 4 kHz |
| True-peak look-ahead limiter | Yes | Yes |
| BS.1770 / R128 control and meters | Yes | Yes |
| Silence detector | With alarm | Reports; the host alarms |
| Subharmonic synthesizer | Yes | No, deliberately |
| FM composite, MPX, BS.412, RDS | Yes | No: aircove feeds encoders, not an exciter |
aircove also has stages the sheet doesn't list: a multiband AGC and house balance ahead of the compressors, band restoration, an output lock, and an offline measurement of each record's delivered loudness.
On the air, side by side
On 27 September 2026 we recorded Circa's station and SomaFM Indie Pop Rocks, which runs Orban processing, at the same time for fifteen minutes. Both are 128k AAC streams, and each was gained to −16 LUFS before anything about its sound was measured, so neither wins by being louder.
| Measure | aircove | Orban | Reading |
|---|---|---|---|
| Loudness range (EBU LRA) | 1.8 LU | 3.1 LU | Tighter |
| Time at the ceiling | 0.40% | 1.23% | A third as much |
| True peak after decoding | −10.3 dBTP | +0.4 dBTP | Never overs |
| Delivered against calibration | −24.1 / −24.0 | – | On target |
| Stereo width (side to mid) | −6.7 dB | −10.3 dB | Wider |
| Crest, 1 s median | 13.6 dB | 12.9 dB | More peak above the body |
| Kick punch | 5.69 dB | 6.28 dB | Behind |
| Snare punch | 5.19 dB | 6.24 dB | Behind |
| Movement inside a phrase | 0.90 dB | 1.21 dB | Flatter |
aircove holds the range tighter than an Optimod on air and never lets a peak through, while Orban still lets the drums hit harder and the music breathe more inside a phrase. Two stations can't play the same records, so treat the punch figures with care: Orban's own snare moved 1.2 dB between two captures a day apart. Drums that cut through are exactly what we're tuning for next, and this table is how we'll know when we get there.
Early access
If you're the engineer who reads the spec sheet twice and A/Bs a release time over a whole afternoon, join the list. You'll hear from us before anyone else: early builds, new stages to try on your own air, and what's coming next.
For developers
The same chain is available as a Rust library: interleaved audio in place, any block size, and nothing allocated once it's running. If you've got an audio callback, you've got somewhere to put it.
use aircove::{Chain, Preset}; // Pick a format, and a calibration in LUFS. let mut chain = Chain::new( 48_000, 2, Preset::Chr.config_for(-23.0), ); // Interleaved f32, in place, any block size. let report = chain.process(&mut block); if report.non_finite_scrubbed > 0 { // Something upstream is broken. Log it loudly. }
cargo run --release --example process_wav -- \
in.wav out.wav --preset smooth
It reads a WAV, runs it through a rung, writes it back in the same format, and reports loudness, range, peak and how far the AGC rode. Every number on this page came from particular records on particular runs, so the best way to know what the chain will do to yours is to point this at them and listen.