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-1000SRT, and may apply to other Serato-compatible DDJs; please see the DDJ section of the Knowledge Base for other model-specific articles..
Step 1 - Update
Ensure that you are running the latest version of Serato DJ (Pro or Lite), that your drivers and firmware are up-to-date, and that your broadcast software is current as well.
Step 2 - Download the Necessary Software
You will require these two tools:
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 Serato+SF.
In the right window, check the box beside DDJ-1000SRT, then check the box beside Soundflower (2ch).
Quit Audio MIDI Setup.
Step 4 - Configure Jack
Open the JackPilot app and you'll see this window:
On the menu bar, click JackPilot > Preferences, then select Serato+SF on the drop-down as your Input Device, the Output Device will automatically change to match.
The rest of the settings should auto-populate. We're not too worried about the virtual input channels, but the JackRouter Virtual Output Channels should match the number of Interface Output Channels. In the case of the DDJ-1000SRT paired with Soundflower's 2ch device, this would be 12.
Click Save, then on the main JackPilot window, click Start, then once the Routing button is available, click it to open the Connections Manager window. Click the triangle beside each of the system items to expand their sub-contents.
Click on capture_9 and then double-click on playback_11. Repeat for capture_10 and playback_12. You'll see a new entry added to the Connections pane for each of those steps:
You can now close the Connections Manager window.
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 Serato, 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.14.5
- Serato DJ Pro 2.3.2
- Soundflower v2.0b2
- OBS Studio v24.0.6
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.