TouchDesigner component
TD ProLink
Pioneer Pro DJ Link for TouchDesigner.
One Base COMP. Every CDJ field exposed natively. No bridge. Live state, track metadata, color waveforms, artwork, cues, phrases and beat grid from every connected deck, straight into your network.

- 50
- outputs per deck
- 4
- decks at once
- 60
- status updates per second
- 0
- external processes
Features
- 01
Pure Python, no external process
No Node.js bridge, no separate helper app, no setup beyond opening TouchDesigner. The entire Pro DJ Link stack runs as background threads inside TD.
- 02
Wired and ready
Numeric CHOPs, text DATs, color waveform TOPs, artwork TOPs, a playhead and cue compositor TOP, plus Table DATs for cues, beat grid and song phrases.
- 03
Straight from the USB
Track metadata is pulled from the rekordbox export over NFS the moment a track loads: title, artist, key, genre, label, BPM, color, ISRC and more, plus 240×240 hi-res artwork.
- 04
Color HD waveforms
Parsed from rekordbox analysis and rendered at 1200 columns, with a live playhead and colored cue markers scrubbing across in real time.
- 05
Phrases and beat grid
Intro, verse, chorus, drop and outro from rekordbox phrase analysis, and every beat of the track with its position in the bar. Cue your visuals to the structure, not just the tempo.
- 06
Mixer aware
Master device, master BPM, on-air, sync and play state for every deck, so the visuals follow whoever is actually playing.
Outputs
Drop it in. Wire it up.
Every output is a regular TouchDesigner operator, ready to wire into the rest of your network.
How it works
[CDJs / XDJ-AZ] ─UDP/TCP/NFS─▶ [Python engine inside TD] ─▶ [TD_ProLink outputs]
The component speaks the Pro DJ Link protocol itself: network discovery on UDP 50000–50002, the CDJ-3000 / XDJ-AZ TCP handshake, status packets for every deck and the mixer, and NFS reads from the USB stick for everything rekordbox knows about the track.
Drop the COMP in, press Start, and it tints green as soon as a deck shows up. A one-line diagnostic DAT shows packets received, fetch state and the last error while you get connected.
Per-deck outputs
| Output | Type | What |
|---|---|---|
deckN_chop | CHOP | BPM, tempo, pitch, beat, beat in bar, play state, on-air, master, sync, playhead, track progress, next beat and bar in ms, and more |
deckN_text | DAT | Title, artist, album, key, genre, label, comment, color, mix name, ISRC… |
deckN_artwork | TOP | Album artwork, 240×240 when available |
deckN_waveform_top | TOP | 1200×256 color waveform of the whole track |
deckN_playhead_top | TOP | The waveform with a live playhead and colored cue markers |
deckN_cues | DAT | Hot cues, memory cues and loops with names and colors |
deckN_beatgrid | DAT | Every beat in the track |
deckN_phrases | DAT | Song structure from rekordbox phrase analysis |
Credits
Built on the Pro DJ Link protocol research by Deep Symmetry (dysentery, beat-link), python-prodj-link by flesniak and prolink-connect by Evan Purkhiser.