Sign In:     


Forum: VirtualDJ Technical Support

Topic: Elementary question on audio routing when using a controller
Hello all,

As some controllers have some hardware effects or filters, I slightly wonder how the audio routing between VDJ and the controllers works.

My assumption is this:
Step 1: sound is generated in VDJ. This sound is then routed via ASIO to the controller, as separate channels (PC -> Controller stream, multi-channel)
Step 2: the controller applies its hardware effects, filters, etc, on each individual channel.
Step 3: this hardware-processed sound is then routed back, via ASIO, to the PC, again as separate channels (Controller -> PC stream, multi-channel)
Step 4: the final routing from the PC is done to the audio interface of the controller, this time just 1 stereo channel (or, in fact, another audio interface if someone wishes to use a different one), again using ASIO (PC -> Controller audio interface)

Is my speculation correct? It seems like a lot of audio streams from PC to Controller and vice versa.

Kind regards!
 

Posted Thu 15 Feb 24 @ 8:28 am
It depends on the controller.
For some controllers VDJ simply sends master+headphones, with everything done in software.
This allows most control from within VDJ with minimal latency.

Then there's indeed other controllers that accept an input for each deck.
Some controllers indeed add fx send-return channels to this for fx processed in hardware that are post-fader. On some controllers this uses a single send-return channel that switches channels depending on which deck has fx enabled, on others there is more than one for each deck.

Then there's controllers with a hybrid between the two, where the headphones output comes from the software, as well as individual deck channels.

And finally there's all sorts of combinations of what happens with additional channels such as sampler, aux and line inputs.
 

There are mainly 2 methods.

1) Internal (software) mixer:
Host application (VirtualDJ) sends 2 stereo audio streams. One for master channel, and one for monitor (headphones)
All the mixing, effects, .e.t.c. is done on software.
Most of the time (but not always) the controller will also be able to apply hardware volume adjustments on those two streams (fake master, fake headphones settings on VirtualDJ)

2) External (hardware) mixer:
Host application sends as many stereo audio streams as the number supported by the controller.
Usually this means 4 stereo audio streams.
The rest of mixing (gain, eq, colorfx, levels) is done by the controller with it's hardware.
On most cases since the controls still send MIDI data, VirtualDJ will apply fake actions on the entire mixer.

Inputs are a different story:
Usually it does not matter what the output mode is.
Inputs are usually offered for DVS, and also as a means to record/broadcast the entire audio mix.
Some controllers will send the entire "master output" singal (minus the master volume attenuation) back to host application via a single stereo stream.
This stream can be used for recording / broadcasting as it contains any hardware effects the mixer has applied, mic inputs, analog devices inputs e.t.c.

Generally speaking, most controllers don't require inputs in order to fully operate with their host
 

Very useful insights, thanks...

In my case, I use a Roland DJ-808, and as far as I understand, everything (i.e. including hardware filters, including external input via the cinch interfaces on the controller, and the own generated sounds using the built-in TR 808 drum computer) can be broadcasted or even routed to a different sound card (although I am not sure of this last option - I should try it...).
 

Actually, I learned that it is interesting to take a look a the block diagram:



There is actually only one master record channel at the end (which makes sense) but still the routing seems very logical :)