Question / Help [Solved] Stream/In-Game Optimization

SorenIX

New Member
Hello everyone,

I started playing "serious" SMNC (fast paced 3d TPS) matches and streaming my matches. Although I have a quite good quality atm, I'm looking for the best I could have. I tried boosting the settings to the top but my in game FPS drops a bit and it becomes a handicap. I would try to test it, setting by setting, to see what work best and not, but I don't know what affects what exactly and it would take me a while to figure it out.

To start with here are my specs and current settings:

-Specs-
Asus HD7970
i5-3570K CPU 3.40GHz
16GB of RAM
Windows 64-bit
Upload Speed: 9.93Mbps

-OBS Settings- (If setting not mentioned, it has default value)

Encoding:
Use CBR: Off
Quality Balance: 7
Max Bitrate: 2000
Buffer Size: 2000
Codec: AAC
Bitrate: 128

Video:
Resolution: 1920x1080
Resolution Downscale: 1.50 (1280x720)
Filter: Bilinear
FPS: 50

Advanced:
Keyframe Interval: 2


Thanks for helping me out figuring the best settings for good in game and stream performance/quality.

(Note: I don't want to lower my in game graphics. I'm only looking for the best quality I can have with my current in game settings.)
 

dodgepong

Administrator
Community Helper
Re: Stream/In-Game Optimization

Can you post your log? http://obsproject.com/forum/viewtopic.php?f=6&t=97

Though a couple things jump out: If you are streaming to Twitch, you're going to want to enable CBR.

Also, change your frame rate to 48fps. The math for frame timings works out better than 50fps.

Can you post a video of what your quality looks like currently?
 

Xphome

Member
Re: Stream/In-Game Optimization

SorenIX said:
I would also like to know what CBR is actually doing.
CBR stands for Constant BitRate. Or did you mean you want to know what it does to keep the bitrate constant?
 

SorenIX

New Member
Re: Stream/In-Game Optimization

I've upgraded to:

CBR: On
Resolution Downscale: 1.25 (1536x864)
FPS: 48

and I'm getting around the same results as with my last settings. So I'm guessing it's going somewhere~ I tried with no downscaling and 60 FPS and I wasn't lagging unless a certain amount of entities and animation were on the screen. (Didn't take much though)
 

Boildown

Active Member
Re: Stream/In-Game Optimization

SorenIX said:
Hey guys! I'm still looking into it! Anyone has an idea?

I'd simply guess that when your game has a lot of action your computer becomes CPU bound and is unable to do both tasks.

On your CPU x264 is going to set the encoding process to use 6 threads for your 4-core CPU. Since you stated that your gameplay is the highest priority, try setting the advanced command "threads=x", where x is a number less than 6. This will reduce the number of threads x264 is allowed to use for encoding, reserving more CPU time for your game. I'd start with 5 and work your way down until you notice that the encode is having problems.

Additionally update to the latest version if it hasn't automatically, there might be some speed improvements.
 

SorenIX

New Member
Re: Stream/In-Game Optimization

What setting are we exactly talking about? I don't seem to see it.

Would you be talking about the x264 CPU Preset? If so it goes from slower to ultra fast. Should I touch this?

And it's true that I said I wanted the best game quality, but I'm also trying to have the best stream quality as well. It's more about the best stream I can have without my game lagging and without lowering the in game graphics.
 

Boildown

Active Member
Re: Stream/In-Game Optimization

Its a typed in command you put on the line on the Advanced menu page. Alternatively or additionally you can put your preset one step faster than it is now (it should be Very Fast now unless you changed it), but that will reduce quality.
 

SorenIX

New Member
Re: Stream/In-Game Optimization

Not sure I see what you're talking about. I don't see any command line on the Advanced settings page.
 

Xphome

Member
Re: Stream/In-Game Optimization

SorenIX said:
Not sure I see what you're talking about. I don't see any command line on the Advanced settings page.
Custom x264 Encoder Settings.
 

SorenIX

New Member
Re: Stream/In-Game Optimization

Thanks for the reply, though setting an X amount of thread didn't help it. Instead I noticed that increasing the bitrate is effective.

What do the Max Bitrate and Buffer Size do exactly? What is a good ratio for them?
 

dodgepong

Administrator
Community Helper
Re: Stream/In-Game Optimization

If you don't know what you're doing with them, leave them in a 1:1 ratio.

Your VBV Max Rate and VBV Buffer are the most important settings for your stream, but unfortunately, it's kind of hard to fully explain how they work.

The short of it is that streaming works by creating a buffer (the VBV buffer) where it puts encoded frames before they get sent out over the internet. The viewer also has a buffer where they put the frames they receive before they start playing back. The encoder can put data into the buffer as fast as it wants, but it can only exit the buffer at a maximum speed of your VBV max rate. Then, on the decoder (viewer) side, the buffer fills at most at the VBV max rate, and then emptied byt the video player as fast as it needs to (as fast as it was put on the buffer on the encoder side).

The idea behind VBV is that the encoder is not allowed to ever exceed the buffer with data, or leave it empty. So the encoder has to decide how to allocate data to each frame to get the best quality, and not put too much data into the buffer to overflow it or put too little data in it to underflow it.

It's not the best explanation (I don't think I have the best grip on the concept myself) but that's the basic idea, I believe.

This is a decent explanation of how it works, too.
 

SorenIX

New Member
Re: Stream/In-Game Optimization

Thank you very much! I think I can figure it out from now on. I've reached a good balanced between the gaming and stream.

You were all very helpfull. Thanks again!
 
Top