Two PC streaming has usually required either a dedicated capture card or setting up finicky RTMP servers, and while setting up an RTMP server for linux maybe be easy for some it can be an up hill battle for average users. Even with the plethora of guides it can be far more trouble than its worth. As a gamer who loves to live stream content but also doesn't want to dish out $100+ dollars for a little box to allow me to use my second PC as my streaming PC, I feel for those that either can't get RTMP to work right or don't/can't afford a capture card. Enter the NDI plugin for OBS Studio.
NDI for OBS is a plugin that allows you to send video from 1 PC that has OBS installed to another PC running OBS with the plugin installed. While this may seam like a pointless idea it impacts the performance of your PC significantly less then gaming and streaming on it at the same time and in my cases feels as though it is easier on both systems than running a dedicated RTMP server. You can get NDI for OBS from here.
As an Ubuntu user I will give a quick simple guide to installing on Ubuntu 16.04 (NOTE: I've attempted to get the plugin working on 17.10 with no luck but I'm not a very advanced user so maybe you will have better luck than me.)
Step 1: Download the latest libndi and obs-ndi-* and install them starting with the libndi on both PCs.
Step 2: Once they are installed open OBS and at the top under the Tools menu click NDI Output Settings on your Gaming PC. Check the little box that says Enable NDI Output and name it whatever you choose. (NOTE: Set up your video settings to what you want before clicking the text box as you wont be able to change them afterwards without unchecking the box again.)
Step 3: Now over on the Streaming PC under Sources create an NDI Source and you should see the name of your Gaming PC. (NOTE: Feel free to check the box that says Allow Hardware Acceleration if you feel its needed but it will use the GPU to help better capture the source.)
Once you've followed these steps you should be able to see your Gaming PC being captured by the Streaming PC and you are ready to go! At most I've only seen my Gaming PC use 12% CPU under OBS using this plugin. This plugin isn't perfect, but it can be a lot easier than the RTMP server and while the capture card will always be better this is a way for others who may not have the money for one to use two PCs for streaming effectively and under less load than single PC steaming.
There may be more steps you need to follow depending on how you choose to link the two PCs or your distribution and I'm no expert so I wish you the best of luck on those distros/links.
Thank you for your time and GAME HARD linux users!
The spare machine I had with hardware encoding that was running OBS as the final master was my old mid-2012 Macbook Pro, and for whatever reason, OBS just kept crashing. :(
One day I'll have the budget to build a proper stream head PC and stick something like a Magewell capture card in there to do this all properly... that'd be an interesting article if you know anyone else who's already done it? ;)
Ufff. Just at the limit! for U$199 you can get a Blackmagic Device's Intensity Pro 4k. I use it daily for my production in Arch =D
The whole BMD line up have all the software and drivers for linux.
Last edited by Liam Dawe on 23 January 2018 at 9:27 am UTC
I have been looking into NDI lately and I'm just wondering does my secondary Linux workstation have enough power to encode NDI source coming from my gaming machine, so this would maybe give some direction.
tvs with an bad input delay are bad for gaming, it dont make any difference when you're watching tv so many people dont know there is an issue, but as soon as they try to play, they have issues.
in this case, you will have the delay of the monitor (or tv) to where you are streaming+ the delay to encode, send and decode the image, it may be noticeable.
(i know, it will not stream to an monitor or tv, but you will show the image on those anyway)
that is the reason that people who have both an xbox one and an ps4 dont use the hdmi pass through to send the image from an console to the other then to the tv.
the controller will have the same input delay since it comunicate direct with the console, but the image will not
Last edited by elmapul on 23 January 2018 at 4:38 pm UTC
Nice! I may have to pick one of those up! When I was last looking all I could find that had Linux support was in the 300-500 range, and didn't want to spend that much on what was going to be the occasional video recording from my Atari Falcon, or other Retro systems. One advantage of the USB based ones is I can connect them to my laptop or Tablet rather than having to connect one of these older systems up to my desktop system (which is now on a different floor!)