## Why Pioneer? Why CDJ-3000's?
I want to know about the significant parts of songs so that I can change the visuals at specific moments, like when we move from verse-chorus or when we move to the song outro.
This is a hard problem to solve when doing realtime audio analysis. Instead, we tap into the Pioneer ecosystem. In Rekordbox, DJs analyze their tracks to include "Phrase Analysis" which enhances tracks with phrase info: verse, chorus, bridge, high energy vs low energy, etc.. This data then gets broadcase out from CDJ-3000's over their Ethernet port.
## What DJs Need To Know
In Rekordbox, please analyze your collection with Phrase checked:
![[Pasted image 20240703181455.png|450]]
## Technical Info & Integration
"Pioneer Pro DJ Link Lighting" is the protocol by which the CDJ-3000's broadcast stuff about what they're playing.
`beat-link-trigger` is software used to listen to what's sent over Ethernet by the CDJ-3000's. Basically it's trying to make that data more accessible and break it out of Pioneer's closed ecosystem.
`beat-link-trigger` must be running with `bermuda-show.bls` loaded or TouchDesigner won't pick up phrase data from the turntables.
More info about how I listen for phrase changes in `beat-link-trigger` and broadcast them via UDP to TouchDesigner:
https://github.com/dramamine/lightdream-scripts/blob/main/BeatLinkTrigger.md
Official docs on this process:
https://github.com/Deep-Symmetry/beat-link-trigger/blob/main/doc/modules/ROOT/pages/Integration_TouchDesigner.adoc#L62
## Interfacing With the Mixer
Currently using a DJM-250MK2 mixer.
The mixer sends an audio feed to the laptop for audio analysis (in TouchDesigner).
The mixer also broadcasts MIDI data about its knobs and sliders (to TouchDesigner). I listen to a couple of these - channel levels and crossfaders to tell which channel is active; low/mid/high levels to attach some effects ex. the visuals lose all saturation when there's no bass.
## DJM-250MK2 Setting Utility
You seem to need to install this program on WIndows to get the audio inputs & outputs working.
`C:\Program Files (x86)\Pioneer\DJM-250MK2`
"Mixer Input": look, we want to use the AUX / mic input for music, but this doesn't always work so sometimes you have to just play the tunes on CH1. Don't forget to flip this switch from USB back to LINE when DJs are going to play.
![[Pasted image 20250725165012.png|450]]
"Mixer Output": need the mixer to send its audio stream into the laptop. REC OUT gets the main output (instead of getting a serparate channel).
![[Pasted image 20240629214627.png|450]]
## Player Number, i.e. don't swap left and right channels please
For CDJs, make sure the players are numbered correctly.
- If you go to the Utility Menu and go down to the “**Player No**” option, you will see that you can select the number the player will get when you connect it to a Pro DJ Link network. Make sure these match the labels on the CDJ's and/or that 1 is Left and 2 is Right.
- No media storage device can be connected to the player when changing this. If you have something connected, the option to change the player is disabled.
- If you set the number to “**Auto**” every time you turn on the player it will try to use the last number it used when it was turned on, but if another player is using that number, it will change to the nearest free number.