Question / Help Recommendations for streaming high CPU Games?

DJSean00

New Member
Hi Everyone,

As a streamer I have been using my one PC for everything over the last 6 months (Game + Streaming). I have a fairly decent machine (https://valid.x86.fr/cbhath) however due to the games and software I use, I am wanting to explore a dual PC setup and offload some of the streaming load to a dedicated computer.

I’ve been madly reading through these forums and other online sources over the last few weeks and have a little information overload. So I am posting here for clarification on what I am thinking and open to suggestions from anyone on the best design for my current setup.

I stream mainly X-Plane 11.26r2 (Flight sim) which is a very CPU heavy, single threaded application which loves a high clock speed over a lot of cores. I get a good +25FPS from turning off Hyperthreading and to add to the mix, I fly it using VR with my oculus rift which taxes my system further.

You’ll note from the link I’ve posted above that even with my PC at 5.2Ghz when you factor in the Sim, VR, flying complex aircraft in bad weather and with highly detailed airports and terrain, without HT on I sit almost at a constant 100% CPU (without streaming). Add in streaming and without hyperthreading on I run out of CPU and things get ugly. So my situation is leave HT on and have room for streaming and accept crappy performance in X-Plane and thus a crappier stream or turn HT off, gain performance and look to offload the streaming to a second PC.

I stream at 720 @ 60fps but would love to stream at 1080 @ 60fps

What I’ve tried so far:

I have put an old GTX980 in my PC and have OBS running off that using nvENC with GPU 1 selected in the option but I don’t know if that’s enough or working well? I do see it using around 7% of the GTX 980 GPU when streaming but that doesn’t sound like enough to me? The CPU remains around 5-10% unless I run an intro video in a scene, that will cause the OBS CPU to spike between 25-30% CPU. QUESTION: Besides the spikes in CPU when playing a video in an OBS scene, would there still be improvements to be had by moving to a dual setup with a capture card?

I am looking at purchasing something like a Elgato Game Capture HD60 Pro to chuck in a PCI-E slot on the second PC looped from my primary monitor. However my big concern is audio, I use a Steelseries Siberia 840 Headset which has 2 audio feeds (Digital and USB) which allows me to have the sim playing on digital and voice communications on the USB feed and I can adjust volume inside the headset which is great. QUESTION: How would I tackle capturing that audio? I am required to be able to send voice to the same PC that runs the sim so I cannot plug my headset into another machine.

Also, I see a thread for ‘obs-ndi - NewTek NDI™ integration into OBS Studio’ would this provide any benefit over a dedicated capture card? I imaging still having OBS running would have some overhead associated with it still?

Sorry for the long post, I’d really love some different takes on what the best way to stream using my setup is. Basically it all comes down to removing as much off the CPU as possible to allow X-Plane to gobble it all up with Hyper-threading turned off.

This image clearly shows my challenge: HT off with X-Plane and Streaming (Best FPS in X-Plane)
https://cdn.discordapp.com/attachments/432782988850495489/507115055674818560/unknown.png

This image shows HT turned on allowing extra room for things such as OBS however I get a good 20-25FPS drop and when I only have 45 FPS in VR, that’s a big performance impact.
https://cdn.discordapp.com/attachments/432782988850495489/507131903007129610/unknown.png

Cheers
DJ
 

Narcogen

Active Member
NDI doesn't really offer benefits over a capture card-- it's a way to avoid using a capture card to get video from one PC to another (and also for sending program or preview output or arbitrary sources to monitors over the network).

Whether you can do 1080p60 streaming depends largely on if you have partner or affiliate status with a stream provider, or if you're streaming to YouTube and can send 10000 Kbps steady or not. NVENC generally works better with quality settings rather than a constant bitrate, and will give you excellent quality with lower load if you allow file sizes to be large. For streaming bitrates, it's going to be less good than the x264 encoder-- so the ideal setup is a capture card and a streaming PC that also has a strong CPU.

For your audio, you can do this: Run a copy of OBS with the NDI plugin installed on the gaming machine, but turn off the preview window and create an empty scene collection with a single scene and one source: your microphone.

Add a Dedicated Output NDI filter to your microphone, and on your streaming PC-- also with OBS and the NDI software and plugin installed-- add the NDI feed from your gaming machine as an Audio Only source. You keep your headset plugged into the gaming machine as you usually do, and you use NDI to move your microphone audio from the gaming machine to the streaming machine. The load created by this should be minimal. This is the setup I have been using for over a year.
 

DJSean00

New Member
Thanks @Narcogen I guess for me, it all comes down to which technique uses the less CPU.. I'm starting to think just having OBS running on the 980 and using it over nvenc is enough?
 

Narcogen

Active Member
Yes, if you're willing to not do 1080p60. It is unlikely you'll get decent 1080p60 quality out of NVENC at a bitrate you can send to Twitch without bring an affiliate or partner. On Youtube you could do better, it will just depend on your internet connection.
 

DJSean00

New Member
Thanks @Narcogen , I am an affiliate and have Fibre so upload is great. Can NDI do 1080 @ 60FPS across a 1GBPS network fine? If I setup another PC and then use the CPU to encode maybe thats the way to go? save money on a capture card?
 
Top