Skip to content

PRO DJ LINK

PRO DJ LINK is the network protocol Pioneer DJ (now AlphaTheta) hardware uses to share state between CDJs, XDJ media players, DJM mixers, and Rekordbox running on a laptop. Now Playing implements the protocol in the alphatheta-connect package, joining the network as a virtual CDJ so it can observe track changes, fader state, and the DJM on-air flag.

  • Pioneer CDJ / XDJ media players (CDJ-2000 Nexus, CDJ-3000, XDJ-XZ, and similar).
  • Pioneer DJM mixers that support PRO DJ LINK (DJM-V10, DJM-900NXS2, and similar).
  • Rekordbox in Performance mode on the same local network.

Now Playing participates in the link network the same way another CDJ would. After discovering existing devices by watching broadcast announcements, it joins the network with its own device ID (5 or 6, the slots normally used by laptops) and listens for:

  • Status packets — real-time deck state, including the currently loaded track ID, play state, BPM, beat position, and tempo master flag.
  • Metadata responses — track metadata retrieved by requesting a track ID from the player that has it loaded.
  • DJM on-air flag — the hardware indicator showing which channel is currently audible.
PortProtocolPurpose
50000UDPDevice discovery (announce)
50001UDPBeat timing information
50002UDPDevice status packets
  • Active mode — Now Playing binds to port 50000 and announces itself as a virtual CDJ. This is the default and has the broadest feature support, but requires that no other application already holds the port.
  • Passive mode — Now Playing captures packets using libpcap (macOS) or Npcap (Windows) without binding any ports. Useful for all-in-one units and situations where a bind conflict cannot be avoided. Requires packet-capture permissions.
FieldSource
Track ID and deck numberStatus packets
Title, artist, album, genre, labelMetadata request
BPM and keyMetadata request
ArtworkNFS partial read from USB/SD (see Track Enrichment)
On-air flagDJM mixer status packets
Tempo master indicatorStatus packets
Beat position / phraseBeat timing packets
Hot cues, memory cuesMetadata request (via dysentery-derived decoding)

The extended analysis files (.EXT, .2EX) on the USB/SD drive are also parsed for waveforms and phrase detection, where available.

For Rekordbox 7.x and modern CDJ-3000 / CDJ-3000X setups, tracks live in the encrypted OneLibrary (exportLibrary.db) format. The alphatheta-connect package falls back to the OneLibrary connector when it detects the newer database layout.

The protocol relies on broadcast and multicast UDP packets for both device discovery and real-time beat information. Wi-Fi access points often block broadcast traffic or drop packets under load, which leads to missing discovery announcements and glitchy beat data. A simple gigabit switch with all devices wired in resolves both issues.