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 DJM-900NXS2, but they will apply to other products as well, simply substitute your mixer where applicable, and select the relevant input / output channels for your device.
If you are using a DJM without DVS, the instructions are slightly different; please see the this guide. If you are using a DDJ, see 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 - Configure the DJM
Open the DJM's Setting Utility application. On the Mixer Output tab, set the USB9/10 output to MIX(REC OUT). If your DJM doesn't have 9/10, use the highest available pair and remember this later when 9/10 is referenced again. If you are using a DJM-900nexus, which only has 4 pairs of outputs, you will be in a situation where you can't use 4 channels of audio from your software, sorry!
No need to set the other input selections as they can be set through rekordbox in step 5.
Set the USB Output Level to -5 dB.
Step 4 - Configure rekordbox Audio
With your DJM connected and powered-on, open rekordbox, and open the Preferences > Audio, select DJM-900NXS2 as your Audio device.
Click External for the Mixer Mode, and scroll down to configure the Output Channels.
The order and numbering may look funny, but that is the correct order to match the typical channel layout on the DJM (3 / 1 / 2 / 4). IF you prefer it to be sequential on the DJM (1 / 2 / 3 / 4), simply assign the outputs in numerical order above.
You don't need to assign the Input channels now as that will change automatically depending on your DVS configuration.
Step 4 - Configure DVS
Click the DVS icon in the preferences window and check the box beside Enable DVS Function.
Scroll the window down and select the Control Hardware for your setup to Turntables, CDJs, or if you use a mix of the two, select Customized Setting and follow the instructions.
If you want to change the hardware input configuration for each deck, you can use your mouse to drag the "wire" between the Deck and the Mixer Channel to re-assign it.
Scroll back up and test your inputs by playing the control signal source on your turntable or CDJ. You should see green circles in the scopes for your input channels.
The circles will auto-calibrate, but if you need to make adjustments, you can do so following the instructions available by clicking the ? icon beside Control Signal Setting.
If you don't see the circles, scroll back down and try switching the Control Hardware setting to another setting and back. I have noticed that sometimes this will reset the input signal, and you may even hear a "click" in your mixer when doing so - this is normal.
Click the X to close the Preferences window.
You can now load a track to the assigned decks and test the input signal. Don't forget to switch the decks to Absolute or Relative mode. If the track plays backwards, your L and R input connections are reversed - simply swap them and it will play normally.
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 Input 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.