ArtsAutosBooksBusinessEducationEntertainmentFamilyFashionFoodGamesGenderHealthHolidaysHomeHubPagesPersonal FinancePetsPoliticsReligionSportsTechnologyTravel

Complete Stream Setup For OBS and NDI

Updated on September 30, 2019
Anthony Metiz profile image

Anthony is an IT Systems Specialist for a government agency. He is also a fitness enthusiast, sci-fi nerd, and hobby collector.

Streaming is The Future

Everyone is streaming! If you aren’t, then you should be. Stream anything and everything. If you have a passion, there are most likely thousands of people out there with a similar interest. Streaming has become a mainstay of online entertainment thanks to YouTube and Twitch.

The setup process is easier said than done but most standard computer users can handle setting up their own stream with minimal issues. Now fine tuning your stream setup is an ongoing process but getting started can be fairly easy. This guide will get you started with the streaming software for a TWO PC setup. (For a single PC setup, you can do all the steps on one PC just skip the NDI software and NDI sources ) This setup only works if you have two computers on the same network. Wired setup is preferred for the best image but it can still work with wireless.

Hardware Requirements

Gigabit Wireless Router - I use the ASUS Dual-Band 2x2 AC1300 Super-Fast Wifi 4-port Gigabit Router
The two computers you use just have to be connected to the same router, wired is preferred for optimal quality. No other settings have to be changed on the router.

USB Mic – I use the Blue Snowball iCE Condenser Microphone, Cardioid - White

Web Cam – I use the Logitech HD Pro Webcam C920

Two PCs with at minimum an Intel i5 or AMD FX-8350 or higher – I use two custom PCs similar in specs to these:

Stream PC - CYBERPOWERPC Gamer Xtreme VR GXiVR8100A Gaming PC with Intel i7-8700 and GTX 1060

Gaming PC - CYBERPOWERPC Gamer Xtreme VR GXiVR3000CPG Desktop with Intel i7-8700 and GTX 1070

Step 1 : Software

You will need to download the OBS studio software from https://obsproject.com/download on your gaming or source PC.
Run the installer, click yes if prompted, and use all the default options. Once the installation has completed, the next you will need is the
NDI software. There are two pieces to getting NDI to work on your PC. First, you will need to download the NDI runtime here http://new.tk/NDIRedistV3.
Second, you will need the NDI plugin for OBS here https://github.com/Palakis/obs-ndi/releases. They do update the software regularly so be sure to get the most recent version of the Windows-Install.exe available.
Install the NDI runtime first, once it completes you may have to reboot. Next, install the OBS plugin, again possible reboot after installation.

Step 2 : Repeat

Now you will need to complete Step 1 on your Stream PC. Perform the installations exactly the same on the second PC. Once done, we will be ready to configure OBS on the first PC.

Step 3 : Configure OBS on Source PC

Configuring OBS on the 1st PC is very simple. Now there is some argument across how NDI operates and sends the image/audio from the source PC to the Stream PC. I used a particular setting that works for me and that is the one I am outlining here. First, on the source PC, you will need to launch OBS, skip the auto wizard. Next, go to settings, and select the Output tab. You will set your OBS video settings to match what I have here :

Select advanced at the top. Select x264, make sure the enforce streaming service encoder settings box is checked. Rate control should be CBR.

Set the bitrate here to 20,000. I don't think this bitrate makes any difference at all after a certain point but this is what works for me and this is what I use.

Keyframe interval is not important here, however on your Stream PC some services require you to set it to 2.

CPU usage here is not important either so just leave it at very fast. Select apply and OK.


Next you will go to the video tab and copy these settings exactly:

1080p on both and set the downscale filter to Lanczos. Set the common FPS values to 60.

IMPORTANT – WHEN YOU ADD A SOURCE THAT IS IN A WINDOW, LIKE GAME CAPTURE OR STREAM ALERTS OR A WEBCAM, MAKE SURE TO RIGHT CLICK THE SOURCE, AND SELECT TRANSFORM, THEN FIT TO SCREEN FOR GAME CAPTURE. YOU WILL SEE THE RED WINDOW STRETCH TO FIT THE CANVAS, YOU CAN THEN SELECT THE LITTLE LOCK NEXT TO THAT SOURCE TO KEEP IT THERE. WITH A WEBCAM YOU WILL NEED TO MANUALLY STRETCH IT BY CLICKING AND DRAGGING IF NEEDED. ALWAYS ALWAYS ALWAYS PAY ATTENTION TO THE UP AND DOWN ARROWS IN THE SOURCE SECTION. IF YOU CAN’T SEE SOMETHING YOU ADDED, YOU MAY NEED TO BRING IT TO THE FRONT BY SELECTING IT THEN CLICKING THE UP ARROW. FOR INSTANCE, YOU DON’T WANT YOUR WEBCAM SOURCE BEHIND YOUR GAME CAPTURE, IT won't BE VISIBLE TO YOU OR YOUR AUDIENCE.

Next, you will need to make sure your audio device defaults correctly, sometimes this changes after Windows updates or even OBS updates, so be sure to check it so you don’t stream without audio from your Source PC. In the Mixer section, select the gear next to Desktop Audio, then select properties. Here you will select whatever speakers/headset you use on your gaming PC as the default. Click ok.

Next, you will need to send the NDI audio over to the Stream PC. You do this by going to Desktop audio in the mixer section, click the gear, then select filters. On the filters screen, you will click the plus button at the bottom left, then select Dedicated NDI Audio Output, then click ok. That should send the audio, synced, to your Stream PC for anything you play on the Source PC.

Next, you will need to turn NDI output so the Source PC throws the audio and video to the Stream PC. You do this by going to Tools at the top of the OBS window and simply selecting NDI Output Settings, then check Main Output. Now that the Source PC is ready we need to set up the Stream PC to receive the NDI source.

Step 4 : Configure OBS on Stream PC

Configuring OBS on the 2nd PC is much more extensive when it comes to dialing in how well your stream will look. However, default settings can give you a quality stream at 720p 60fps or 1080 30fps depending on the content you are streaming. I prefer 720p60fps for anything fast paced. Now, 720p does not look as good on a large monitor or TV but in the stream window that YouTube and Twitch default to, it looks really good, some would even say great! 720p 60fps is also the recommended video setting since not all users who watch streams have the best internet speed and can have buffering issues with anything higher than 720p. Not all users have this issue but many stream watchers will watch on a mobile device possibly on a mobile network which has limited latency and bandwidth.

Again on the Stream PC, the first thing you want to do is add a scene in OBS at the bottom left. Next, go to the source section and select the plus button, then you will add an NDI source. It will also have a drop down and it should be set to the name of your Source PC. The other settings should be similar to this *insert screenshot*

IMPORTANT – WHEN YOU ADD A SOURCE THAT IS IN A WINDOW, LIKE GAME CAPTURE OR STREAM ALERTS OR A WEBCAM, MAKE SURE TO RIGHT CLICK THE SOURCE, AND SELECT TRANSFORM, THEN FIT TO SCREEN FOR GAME CAPTURE. YOU WILL SEE THE RED WINDOW STRETCH TO FIT THE CANVAS, YOU CAN THEN SELECT THE LITTLE LOCK NEXT TO THAT SOURCE TO KEEP IT THERE. WITH A WEBCAM YOU WILL NEED TO MANUALLY STRETCH IT BY CLICKING AND DRAGGING IF NEEDED. ALWAYS ALWAYS ALWAYS PAY ATTENTION TO THE UP AND DOWN ARROWS IN THE SOURCE SECTION. IF YOU CAN’T SEE SOMETHING YOU ADDED, YOU MAY NEED TO BRING IT TO THE FRONT BY SELECTING IT THEN CLICKING THE UP ARROW. FOR INSTANCE, YOU DON’T WANT YOUR WEBCAM SOURCE BEHIND YOUR GAME CAPTURE, IT WON'T BE VISIBLE TO YOU OR YOUR AUDIENCE.

On the Stream PC we will now add the audio from the Source PC. You will go to the source section, select the plus button, then select NDI source again. This time when the NDI source pops up you will select NDI Audio Source and you will check the box that says Audio only. Select apply/ok. This will get your sound from the game to the stream for broadcasting. Now one thing to be aware of, any audio that plays on the Source PC will play on the Stream PC, so you will want to turn off notifications for other apps unless you want that heard during your stream. You should now have two NDI Sources listed in your mixer like this:

You can mute your mic here if needed. OBS also lets you assign a hotkey to functions like that.
BE SURE TO MUTE THE FIRST NDI SOURCE, or else you will get an echo on your stream.
Select the little gear at the right of Desktop Audio and make sure it is set to whatever you use for speakers on your Stream PC.
Your audio settings can differ depending on your hardware but here are the settings I use for my stream, the first Track is the only one you need to worry about for this type of setup.
I set mine to 128 bitrate for good quality sound and lower file size for recordings.

Here are the settings I use for my stream PC. My CPU is an Intel i7 8700 and I have 16gb of RAM with an NVidia 1050. So not a power hungry gaming PC at all but for streaming it gets the job done well.

Configure your OBS to look exactly like the screenshot here for most games. Again you get to all the settings by selecting Advanced at the top. Note the keyframe interval is set to 2 here.

If you notice your CPU usage is too high when streaming, then change the CPU usage preset only. Go from very fast to super fast to see if there is a difference in stability. Most i7 or higher processors can do Fast or Faster with 720p60fps very well.

As you can see, I have my bitrate set to 6500 since most users who watch streams should have sufficient bandwidth for viewing. However, there are some who will have buffering issues viewing my stream. I have watched it on my mobile device on mobile data and it buffers once or twice per hour, which isn’t too bad. I have my output set to 720p60fps in the output tab. I have my Common FPS Values set to 59.94, I think it works great for my setup and others swear by it over 60 fps as well. Just play with it and see what works best for you.

Step 5 : WebCam and Mic

Now you will need to start playing your game on the Source PC and verify that you see the Audio level moving on your Stream PC, this lets you know that your game sound is carrying over. If we are good here, it is time to configure the webcam and mic. In the source section, you will click the plus button and select the video capture device. This will be your webcam, camera, or camcorder. You want to make sure it is connected to your Stream PC before you launch OBS in case it has any drivers to install. You will then select the name of your webcam from the drop down and leave everything else at default, for now, click apply/ok.

IMPORTANT – WHEN YOU ADD A SOURCE THAT IS IN A WINDOW, LIKE NDI SOURCE, GAME CAPTURE OR STREAM ALERTS OR A WEBCAM, MAKE SURE TO RIGHT CLICK THE SOURCE, AND SELECT TRANSFORM, THEN FIT TO SCREEN FOR GAME CAPTURE. YOU WILL SEE THE RED WINDOW STRETCH TO FIT THE CANVAS, YOU CAN THEN SELECT THE LITTLE LOCK NEXT TO THAT SOURCE TO KEEP IT THERE. WITH A WEBCAM YOU WILL NEED TO MANUALLY STRETCH IT BY CLICKING AND DRAGGING IF NEEDED. ALWAYS ALWAYS ALWAYS PAY ATTENTION TO THE UP AND DOWN ARROWS IN THE SOURCE SECTION. IF YOU CAN’T SEE SOMETHING YOU ADDED, YOU MAY NEED TO BRING IT TO THE FRONT BY SELECTING IT THEN CLICKING THE UP ARROW. FOR INSTANCE, YOU DON’T WANT YOUR WEBCAM SOURCE BEHIND YOUR GAME CAPTURE, IT WON'T BE VISIBLE TO YOU OR YOUR AUDIENCE.

Now we will do something similar to add the mic. You will go to the source section again, click the plus button, and now you will add audio input device. Again, if your mic is USB, you will want to connect it before launching OBS. In the audio input device window, you will see a drop down again, select the name of your mic and apply/ok. You will now want to change the name of your Audio Input Device to Mic. You will also leave the mic at the default settings and you can raise the level if needed from the source window by just sliding the bar to the right under Audio Input Device.

Now we need to add our stream key for YouTube/Twitch, or whichever service you decide to stream to.

Step 6 : Setup Your YouTube Account

Here is how you set up your stream on YouTube. If you do not have a Gmail account or YouTube account, you will need to create one.
Once you create a Gmail account you will automatically have a YouTube account. Now you will navigate to YouTube, select your account icon at the top right, then select creator studio. There are a lot of settings here but the only you thing you need to worry about for now is the Live Streaming tab at the left. Select it. On the next screen scroll down to encoder setup, this is where you find the key you need to input into OBS.

You input this information in OBS by going to settings, then select stream at the left.

Once your stream key is set for YouTube, you can now test your stream.

Step 7 : Test Stream and Setup

Once your game is running on the Gaming PC and you see the game and the audio level moving on the Stream PC, click that Start Streaming button at the bottom right of OBS. You will see your CPU usage go up at the right quite a bit depending on your hardware. Stream for about 15 minutes, then stop the stream. Go to your YouTube channel and watch the playback. You can watch it live on a phone or another device while streaming as well.

Twitch has a way for you to do a test stream but you can’t watch it at the same time, it just tells you how your stream is performing. It gives you some great info for your dropped frames and how consistent your bandwidth is. This is helpful but I found that streaming to YouTube to test is the best method because you can set your YouTube channel to private and only you can see the live stream. Now understand, the live stream on YouTube will not look as good as your live stream to Twitch due to the services encoding video differently. It does not look by any means but YouTube requires more bitrate than Twitch for a similar quality image. However, with YouTube, your quality will show once you are finished streaming and it saves it to the site. You can go back and watch your past streams on YouTube and the quality is always much better than when you streamed it originally and is most likely very similar to how you stream would look on Twitch.

I would test multiple bitrates in OBS starting at 3500 all the way up to 8000 for YouTube at 720p60fps just to see the quality difference. I use a 6500 bitrate for YouTube streams and it looks crisp and the frames are good. You can play with this as needed but always remember to stop streaming in OBS before changing the bitrate, CPU usage can be an issue when changing midstream. You will want to set up a mobile device or other PC that you are not using to view the stream. Viewing the stream while streaming on your Stream PC can cause quality issues by using too much bandwidth. I typically view my stream on my laptop, which is on wifi, sitting on my desk next to my other PCs.

You will want to play with your settings until they are perfect for you but this is a great way to start and an inexpensive one at that. Good luck and please hit me up with any questions you may have!

© 2018 Anthony

Comments

    0 of 8192 characters used
    Post Comment

    No comments yet.

    working

    This website uses cookies

    As a user in the EEA, your approval is needed on a few things. To provide a better website experience, hubpages.com uses cookies (and other similar technologies) and may collect, process, and share personal data. Please choose which areas of our service you consent to our doing so.

    For more information on managing or withdrawing consents and how we handle data, visit our Privacy Policy at: https://maven.io/company/pages/privacy

    Show Details
    Necessary
    HubPages Device IDThis is used to identify particular browsers or devices when the access the service, and is used for security reasons.
    LoginThis is necessary to sign in to the HubPages Service.
    Google RecaptchaThis is used to prevent bots and spam. (Privacy Policy)
    AkismetThis is used to detect comment spam. (Privacy Policy)
    HubPages Google AnalyticsThis is used to provide data on traffic to our website, all personally identifyable data is anonymized. (Privacy Policy)
    HubPages Traffic PixelThis is used to collect data on traffic to articles and other pages on our site. Unless you are signed in to a HubPages account, all personally identifiable information is anonymized.
    Amazon Web ServicesThis is a cloud services platform that we used to host our service. (Privacy Policy)
    CloudflareThis is a cloud CDN service that we use to efficiently deliver files required for our service to operate such as javascript, cascading style sheets, images, and videos. (Privacy Policy)
    Google Hosted LibrariesJavascript software libraries such as jQuery are loaded at endpoints on the googleapis.com or gstatic.com domains, for performance and efficiency reasons. (Privacy Policy)
    Features
    Google Custom SearchThis is feature allows you to search the site. (Privacy Policy)
    Google MapsSome articles have Google Maps embedded in them. (Privacy Policy)
    Google ChartsThis is used to display charts and graphs on articles and the author center. (Privacy Policy)
    Google AdSense Host APIThis service allows you to sign up for or associate a Google AdSense account with HubPages, so that you can earn money from ads on your articles. No data is shared unless you engage with this feature. (Privacy Policy)
    Google YouTubeSome articles have YouTube videos embedded in them. (Privacy Policy)
    VimeoSome articles have Vimeo videos embedded in them. (Privacy Policy)
    PaypalThis is used for a registered author who enrolls in the HubPages Earnings program and requests to be paid via PayPal. No data is shared with Paypal unless you engage with this feature. (Privacy Policy)
    Facebook LoginYou can use this to streamline signing up for, or signing in to your Hubpages account. No data is shared with Facebook unless you engage with this feature. (Privacy Policy)
    MavenThis supports the Maven widget and search functionality. (Privacy Policy)
    Marketing
    Google AdSenseThis is an ad network. (Privacy Policy)
    Google DoubleClickGoogle provides ad serving technology and runs an ad network. (Privacy Policy)
    Index ExchangeThis is an ad network. (Privacy Policy)
    SovrnThis is an ad network. (Privacy Policy)
    Facebook AdsThis is an ad network. (Privacy Policy)
    Amazon Unified Ad MarketplaceThis is an ad network. (Privacy Policy)
    AppNexusThis is an ad network. (Privacy Policy)
    OpenxThis is an ad network. (Privacy Policy)
    Rubicon ProjectThis is an ad network. (Privacy Policy)
    TripleLiftThis is an ad network. (Privacy Policy)
    Say MediaWe partner with Say Media to deliver ad campaigns on our sites. (Privacy Policy)
    Remarketing PixelsWe may use remarketing pixels from advertising networks such as Google AdWords, Bing Ads, and Facebook in order to advertise the HubPages Service to people that have visited our sites.
    Conversion Tracking PixelsWe may use conversion tracking pixels from advertising networks such as Google AdWords, Bing Ads, and Facebook in order to identify when an advertisement has successfully resulted in the desired action, such as signing up for the HubPages Service or publishing an article on the HubPages Service.
    Statistics
    Author Google AnalyticsThis is used to provide traffic data and reports to the authors of articles on the HubPages Service. (Privacy Policy)
    ComscoreComScore is a media measurement and analytics company providing marketing data and analytics to enterprises, media and advertising agencies, and publishers. Non-consent will result in ComScore only processing obfuscated personal data. (Privacy Policy)
    Amazon Tracking PixelSome articles display amazon products as part of the Amazon Affiliate program, this pixel provides traffic statistics for those products (Privacy Policy)
    ClickscoThis is a data management platform studying reader behavior (Privacy Policy)