Mix Processor & On-Air Detection
The mix processor is the service that decides which deck is currently on air. When a DJ has several decks loaded — each with a different track and different fader, EQ, and crossfader positions — the mix processor looks at all of the signals flowing in and picks a single winner. That winning track is what gets sent to your overlay.
Where Play Detection explains the high-level strategies, this page digs into the scoring and the signals that power it.
The Problem It Solves
Section titled “The Problem It Solves”A DJ might have 4–6 channels on a mixer, each with a deck and a loaded track. At any given moment, only one (or during a transition, perhaps two) is audible. A lot of different hardware signals hint at which channel is live:
- The channel fader is open.
- The deck is playing, not cued.
- The crossfader is on that side.
- The EQ is not cut to silence.
- The mixer’s on-air LED is lit.
The mix processor combines all of these into a single score per channel. The highest score wins.
The DJ Booth Model
Section titled “The DJ Booth Model”The mix processor organises state around how a real DJ booth works:
- Mixer — a hardware mixer or controller with a crossfader and channel assignments.
- Channels — one entry per mixer channel (typically 1–6), each tracking the connected device, the loaded track, and the live hardware signals.
- Signals — the live values flowing from hardware: faders, EQs, play state.
- Score — a computed 0–1 number representing how likely the channel is on air, with a breakdown of which signals contributed.
- On Air — the current and pending winning channel, with debounce status.
This structure mirrors a real DJ booth and scales from a single-deck controller up to a full six-channel mixer rig.
Capabilities-Based Scoring
Section titled “Capabilities-Based Scoring”Different hardware provides different signals. A Pioneer DJM mixer on PRO DJ LINK reports an on-air flag directly. A plain MIDI controller reports channel faders and EQ. A Denon StageLinQ mixer reports faders and crossfader. The mix processor does not require a specific set of signals — it uses whatever is available and weights them.
Available Signals
Section titled “Available Signals”| Signal | What It Represents | Range | Where It Comes From |
|---|---|---|---|
| Channel fader | Volume per deck | 0 (closed) — 1 (open) | MIDI, StageLinQ, PRO DJ LINK |
| Trim / gain | Input gain per deck | 0 — 1 | MIDI |
| Crossfader | Left / right balance | -1 (left) — 1 (right) | MIDI, StageLinQ |
| EQ low / mid / high | Per-band cut or boost | -1 (cut) — 1 (boost) | MIDI |
| Filter | Low-pass / high-pass | -1 (LPF) — 1 (HPF) | MIDI |
| Play state | Is the deck playing? | 0 or 1 | All sources |
| On-air flag | Hardware on-air indicator | 0 or 1 | PRO DJ LINK + DJM mixer |
| Master detection | Is this deck the tempo master? | 0 or 1 | PRO DJ LINK |
| Jog touch | Is the DJ touching the platter? | 0 or 1 | MIDI |
| Loop active | Is a loop engaged? | 0 or 1 | PRO DJ LINK, MIDI |
Normalised Values
Section titled “Normalised Values”All signals are converted to a consistent range before reaching the mix processor. MIDI values in the 0–127 range are converted to 0–1 linear signals or -1 to 1 bipolar signals. StageLinQ and PRO DJ LINK values are converted similarly at the source. This means the mix processor does not need to know about hardware-specific ranges — it just does the scoring math.
Genre-Aware Weights
Section titled “Genre-Aware Weights”Different DJ styles mix in different ways, and the signals that indicate “on air” are not the same across genres. Hip-hop DJs cut with the crossfader; house and techno DJs blend with channel faders and EQ. Mix processor presets encode this knowledge as a set of signal weights.
| Signal | House / Techno | Hip-Hop | Drum & Bass | Open Format |
|---|---|---|---|---|
| On-air flag | 0.20 | 0.15 | 0.20 | 0.20 |
| Channel fader | 0.25 | 0.18 | 0.25 | 0.25 |
| Play state | 0.15 | 0.15 | 0.20 | 0.20 |
| Crossfader | 0.02 | 0.25 | 0.02 | 0.05 |
| EQ low | 0.10 | 0.05 | 0.08 | 0.05 |
The crossfader row is the most obvious difference: for hip-hop it is one of the most important signals, while for house and techno it is barely weighted at all. You choose a preset in On-Air Detection settings, or build a custom weight profile if your style does not fit neatly into a preset.
Pinned-to-Zero Conditions
Section titled “Pinned-to-Zero Conditions”Two conditions immediately drop a channel’s score to zero, regardless of all other signals:
- The channel fader is fully closed. A closed fader means the channel cannot reach the main output.
- The deck is not playing. A paused or cued deck is not audible.
These act as hard gates, so a high crossfader score alone can never win for a silent or stopped deck.
Debounce
Section titled “Debounce”When a transition is happening, both decks may briefly score closely. To stop the overlay from flipping rapidly, the mix processor applies a debounce: a new leader must hold its position for a configured duration before the on-air channel changes. The debounce duration is part of the DJ style preset.
- House, Techno, Trance — longer debounce (slow blends).
- Hip-Hop, Hardstyle — shorter debounce (fast cuts).
The Output
Section titled “The Output”Once a channel wins and holds through the debounce, the mix processor emits the track on that channel as the on-air track. From there it enters the Track Enrichment pipeline and eventually reaches your outputs.
Tuning
Section titled “Tuning”If the wrong track shows up on the overlay during transitions, the on-air detection settings are where to start:
- Try a different preset that matches the genre you are mixing.
- If you have a MIDI controller, ensure the channel fader is mapped so it reports fader position.
- For Pioneer CDJ + DJM setups, make sure PRO DJ LINK is active so the on-air flag signal is available.
See the On-Air Detection settings page for how to change presets or define custom weights.