This guide is a how-to for streaming using a 3rd party software such as OBS, and many of these instructions may also be applied to other software.
The instructions provided herein are based around a DDJ-RB, and may be different for other DDJ units. Please check the DDJ section of the Knowledge Base for additional tutorials.
Step 1 - Update
Ensure that you are running the latest version of rekordbox, that your drivers and firmware are up-to-date, and that your broadcast software is current as well.
Step 2 - Download the Necessary Software
There is just one extra tool necessary for us Mac users:
You can also use other similar applications such as Sound Siphon or Loopback, but those are both paid apps and Soundflower works, and is free, so why not?
Step 3 - Create an Aggregate Audio Device
With your DDJ connected and powered-on, open Applications > Utilities > Audio MIDI Setup - if the Audio Devices window is not visible, click Window > Show Audio Devices.
Click the + icon at the bottom left and select Create Aggregate Device.
Click on the name Aggregate Device and rename it RR+Soundflower.
It CAN NOT contain the word "DDJ-RB" or rekordbox will recognize it as that device and the additional outputs will NOT be available.
In the right window, check the box beside DDJ-RB, then check the box beside Soundflower (2ch).
Quit Audio MIDI Setup.
Step 4 - Configure rekordbox Audio
Click the Audio icon and select the newly created RB+Soundflower aggregate as your Audio device.
Scroll down to configure the Output Channels.
Step 5 - Configure OBS for Audio
Minimize rekordbox and launch OBS.
Click the + button at the bottom of the Sources window to add a new Audio Output Capture source, you can keep the defaults, click OK.
Select Soundflower (2CH) from the Device drop-down.
If you're only streaming audio, you can skip ahead to Step 7.
Step 6 - Configure OBS for Video
If you want to stream a capture of your screen or video input (or both) you can add these as well.
Click the + button at the bottom of the Sources window to add a new Display Capture source, you can keep the defaults and click OK.
If you have multiple displays, select the output display you want to use.
Please note, as an alternative to Display Capture, you may try using the Window Capture function. Whether this works depends on the graphics chipset(s) you have in your Mac. If you find the Window Capture freezes OBS or does not show your waveforms within rekordbox, then use the Display Capture.
If you are showing the rekordbox output, as opposed to a video input source, you should match your input size. Open Settings > Video and change the Base (Canvas) size to match the resolution of your display.
The Output (Scaled) size should typically be 720 or 1080 to keep a down-sampled resolution that is friendly for your broadcast.
You can also (optionally) add a webcam or other video input and configure it here. If you require further instruction on this, try Google.
Step 7 - Broadcast
Click the Studio Mode button to enter a dual-view mode. With music playing in rekordbox, you should now see an audio level in the meter at the bottom, and a video preview (if applicable).
Be sure to adjust the levels on the mixer for any other audio sources; mute the other inputs if they're not being used. You're ready to broadcast - simply configure your output stream destination!
Step 8 - Tweak
You should test and monitor the workload and buffer on your computer as you perform - chances are the CPU usage won't be the issue, but the audio buffer may still run out. As you increase the buffer, the latency (delay between action and audio output) will increase, but the likelihood of audio dropouts or crackling will decrease. Your computer's age will typically increase the buffer sizes required, but there are tricks you can do to reduce background application usage and improve the overall performance of your Mac.
This guide was made using the following software versions:
- macOS Sierra v10.12.6
- rekordbox v5.0.1
- Soundflower v2.0b2
- OBS Studio v20.1.0
While efforts will be made to keep up with any changes to this process to ensure others can use it after software update have been released, we can't guarantee the accuracy or relevance of this information, nor the performance of any 3rd party software applications.