How to send the audio/video output of one OBS to another OBS using VDO.Ninja
In this walk-through we demonstrate how to use VDO.Ninja to stream a low-latency video/audio stream from one OBS Studio to another remote OBS Studio.
Update: I also have created a video guide on how to output from OBS to VDO.Ninja here also:
- OBS Studio (goes for both local and remote systems)
- For some Linux or older systems, you may need a virtual camera plugin as well
- A virtual audio cable
- For Windows, use VB-CABLE Virtual Audio
- This is recommended software as it enables proper audio support
- The software is Donationware
- For MacOS, you have a few choices:
Please find below a diagram explaining the basic premise of what we are intending to do in this guide. We will go through it all, one step at a time.
This guide assumes you have OBS installed, along with the other required software, though we shall briefly cover these initial installation steps now.
We also will assume you are using Windows. You will need to adapt accordingly for MacOS, which likely is going to be more complicated.
On the computer that will be using Zoom or Google Hangouts to broadcast, please do the following:
- 1.Uninstall and remove all old versions of OBS, including Streamlabs OBS if that is installed.
- 2.
- 3.(#3 is optional, depending on if you wish to send the audio from OBS or not)
We now need to create a virtual webcam so we can connect OBS to VDO.Ninja. If we followed the initial software setup of Step 0 correctly, this should be all smooth sailing.
Just press START VIRTUAL CAM in OBS v26 or newer.
We will now configure OBS to output audio from the Browser Source to the Virtual Audio Cable. In the OBS settings, under Advanced, we select the Monitoring Device to be our Virtual Audio device. (CABLE Input).
We also want to disable Windows audio ducking.
In our last configuration step, we want to go into the Advanced Audio Properties in OBS. When there, we want to set up the Audio Monitoring setting to have any audio we want pushed to the Virtual Audio Cable to be set to MONITOR AND OUTPUT.
We’re ready to now create our VDO.Ninja stream.
There are many ways to do this, but the EASIEST way is to go to VDO.Ninja, click Add your Camera to OBS, and select from the options OBS Virtualcam. This option will set you up with the default settings, such as with audio echo-cancellation on, although you can use URL parameters when visiting VDO.Ninja to customize the settings more.
A popular advanced URL option at this point might be with the stereo flag, so visit https://vdo.ninja/?stereo instead of just https://vdo.ninja. You can also set your own custom stream ID values, so https://vdo.ninja/?push=myCustomStreamId123, and then give your remote OBS user the link https://vdo.ninja/?view=myCustomStreamId123
You can select the Virtual Audio Cable from the audio choices, or instead, you can select your local microphone or multiple audio input sources.
VDO.Ninja will auto-mix if more than one option is selected. Hold
CTRL
(or command
) to select more than one option.
Press the green button when ready.
You’ll see a preview of your video stream and a link. This link is what we want to send to our remote OBS studio as an input source.
We can modify this link if we wish to have higher bitrates, for example, https://vdo.ninja/?view=streamID&videobitrate=20000 to set a target video bitrate of 20-mbps.
We send this VDO.Ninja view URL to our remote OBS Studio computer and now we use it to ingest the feed into the OBS there.
To do this, we create a scene and then a Browser Source in OBS. Give it a name and we will fill out the details in the next step.
In the properties for the Browser Source, we need to fill out a few fields and then hit OK.
- Width needs to match the input video resolution, so likely 1280
- The height also needs to match, so likely 720
- Control audio via OBS should be checked, for audio capture to function
SECRET TIP: Some links on VDO.Ninja can be dragged and dropped directly into OBS, avoiding the tedious parts of this step.
Once you hit OK, the video should appear and auto-play within seconds. There should be no audio feedback if you selected the Control audio via OBS option.
Now we just need to stretch the video to fill the full scene. It should snap into place when full.
All done! And that should be it! Problems?
You can also ask for help on Discord; usually help can be provided within minutes, if not usually within half a day.