Friday, December 30, 2016

Video Streaming from Traktor with BCD Controller to VAC to OBS Studio

Here is an example of this setup in action as livestreamed and recorded from OBS Studio.


Leave the Traktor audio settings alone.  These are related to the particular controller, the BCD3000, which provides two ASIO outputs, stereo master out that typically connects to the speakers and stereo monitor out that typically goes to headphones.

Use the ASIO from the controller

Typical outputs to speakers and headphones
Now this gets a little tricky fast, and the first trick is instead of connecting the Master Out cable directly to the speakers that I typically do for Traktor, I take the master out and plug it into the Mic In on the laptop.

I usually connect the Master Out directly to the speakers, but in this setup I leave the connection to the speakers from the Headphone Out alone (and do not use it because there will be no signal to the speakers in this setup.

This overview combines a little bit of the hardware with the software as block diagram. The client is obviously connected to speakers/headphones.


The block diagrams give a general idea of what's going on after Traktor.  For the VAC stage, you need just one cable.  VAC (Virtual Audio Cable) is a paid program, and you might have O Deus ASIOLink or Jack. Out of the box, VAC arrives with one cable, which is fine. I happen to have eight as I didn't know how many I would need.

I have no idea what this is aside from letting it determine how many cables I have, so aside from that, leave it alone.

As to a repeater, I use the KS version and it takes the Mic In and sends it to a virtual patch cable out, VAC1.


50% of the magic happens right here in this repeater.  You can see evidence of incoming audio at the mic as cabled, and you can see it is hitting the out at VAC1 front left and front right speaker signals at the bottom of the window. Note setting for 44,100 sample rate and 100 ms total buffer selected from the dropdown.
Now we're ready for OBS Studio configuration. This isn't quite perfect as you can occasionaly hear stuttering, but overall the sound is good. When I was livestreaming the test video, there were several instances where I was listening to the audio from the client with a pair of phones and attempting to load a track in Traktor and danged if I couldn't hear the monitor signal as expected. Oh, I was using the wrong phones.
The base canvas and the output resolution is governed by some reduction to final 360p video. It's this small because I use DSL that offers .9 Mbps upload best case, which does not provide bandwidth for 720p upload.

Here's the other 50% of the magic at audio settings.  See how VAC1 is configured as the Mic/Aux In.

You can tell the audio is working.  It is pulsing green.  I set the slider  near the speaker icon to -2.5dB. This is the window capture of my Traktor screen in OBS as seen in much of the video.