Question / Help A little bit of help optimizing the quality

L0g1stix

New Member
Hello, I'm not brand new to streaming. But i AM new to streaming 720p+ good quality.

I recently upgraded my internet from 25mb down 2.5up to 50mb down 10mb up, allowing me to stream 720p and 1080p (1080p frowned upon by twitch, and most users cant even watch the stream live because of the 10mb buffer)

Anyways my question is in regards to my video quality below

http://www.twitch.tv/l0g1stixgaming/b/443632200

I am doing the gameplay + rendering / streaming all on the same computer. Specs are

Intel Core i7 3770k @ 4.7GHz (delidded, temps are 55-61c under load)
Asus Sabertooth Z77
SLI GTX 670 2GB @ 1136 / 3404 (temps are fine and clock isn't throttling)
16GB Corsair Dominator @ 1333MHz
120GB Mushkin Chronos
11.5MB Upload (Streaming @ 4000 because of twitch frowning upon anything higher)


When i watch my streams in full screen, it seems like there is a foggy haze, almost like a pixelation. You don't see it if you dont watch it in full screen. Does this have to do with my monitor (Which is by no means anything good). Or a setting that i can change? If increasing the bitrate is what will solve the issue, then i guess i am stuck with it

Downscaling to 1280x720 from 1920x1080
AAC /w 128bitrate
Using Lanczos Filter /w 60 FPS for smoother streaming gameplay
Using Very Fast Preset /w Above Normal Process Priority
Using Game Capture
Encoding @ 4000 / 4000 QB Value @ 10

Now i do have Dxtory, and i have attempted to use that with OBS, It does work. But it seems like the OBS Game Capture has put the once great Dxtory + Streaming Software to shame. So i've been using OBS by itself
 

Kharay

Member
Stick with CBR 3500 Kbps; anything over 3500 Kbps is frowned upon by Twitch as well and CBR is preferred over VBR. Also by Twitch but generally speaking CBR makes for a more constant stream and will make it more comfortable for your viewers to watch. The spikey nature of VBR tends to have people lag out and such; particularly at the bitrate you're going with there.

Regarding the quality, well... it's not 100% game accurate but no stream is. Since streaming is a 1-pass encode that aims at doing it realtime. Which obviously comes at an unavoidable quality loss. But, personally, I found that VOD fine to watch. So, if you have issues with that footage yourself it may indeed be the monitor. However, I'd imagine the same phenomenon occurring in-game for you as well. To some extent anyhow.
 

L0g1stix

New Member
Alright, Thanks.

Yeah I'm leaning more towards it being my monitor. I have dropped the bitrate to 3500 now from 4k. I'm assuming that shouldn't be to big of a hit for my 720p streaming quality.

The only other questions i have are, Is there anything else i can do to reduce to fps drop streaming /playing on the same computer with OBS, settings wise (Other than changing the x264 preset). I noticed in your streaming guide you said OBS doesn't support SLI / Crossfire.(So all the rendering etc is done on the primary card). My card is only 2GB. If i had say a 4GB card would i see any improvement in regards to FPS drops streaming, or is that mostly the raw processing power of the GPU combined with the CPU.

The other alternative that i see allot of people do, Is setup a secondary computer (doesn't have to be amazing) with a capture card and they dedicate that pc to the rendering / streaming. I have a secondary pc available specs are

AMD Phenom II X6 1090T @ 3.2 but can increase
ATI Radeon 5870
8GB Kingston @ 1333

Would that be able to handle the streaming with a capture card np?
 

Kharay

Member
What I meant by the remark about SLI/CFX is that in many cases the stream won't even function properly; Game Capture for example is highly doubtful in SLI/CFX. Given the nature of how Game Capture actually captures the image.

As far as pure performance requirements go: I'm on an i5 760 with a single HD 6870 but I have no trouble whatsoever doing 720p@60 FPS. Although I prefer 48 FPS, just to have that little bit of extra quality (20% less frames to spread that 3500 Kbps across). The point being -- You don't need an i7 4770k with triple Titans to get a good quality stream at a high framerate.

Which games are you primarily aiming to stream?
 

L0g1stix

New Member
As of right now i'm only looking to stream Battlefield 3, and then Battlefield 4 when it comes out.

I run the game mostly on ultra, but have things like MSAA off and HBAO off. Right now i'm just trying to find a better balance performance wise with really good quality. I take about a 40ish fps hit when i start streaming, Which isn't terrible but when i get down into the low 60's with my setup streaming it concerns me. Especially when i don't dip below 90 not streaming and almost always over 100+

I read a couple posts stating using "Game Capture" with a multi gpu setup can cause problems. So i was gonna try window capture or something similar. As a last resort probably just get a capture card (But i'd like to stay away from that if i can).

My processor should be able to handle both BF3 and the streaming of it at 720 on 64 man servers without to much of a hassle. I'm not getting "stuttering" or anything. I'm just noticing the performance hit FPS wise when i do stream vs not streaming. Looking to minimize that without making the quality horrid
 

Kharay

Member
There are various performance hits in the titles themselves that do not come across well on-stream but when tweaked out do free up massive amounts of CPU and GPU time. Things like indirect lighting, physics, particle effects, etc. People watching a stream do not take note of such details too much; as long as the texture quality, resolution and framerate are good, they will be content. 50% of a stream's success is completely unrelated to the game and how pretty it looks; I hope you can guess which 50%. :P
 

L0g1stix

New Member
It looks like changing my "Processor Priority Value" to Idle over Above Normal helped a little bit, dedicating more power to the game vs the stream.

I'm going to assume that the only way to completely minimize the streaming performance impact is to A) Use a Capture Card, or B) Dedicate a secondary computer with a capture card to the rendering / streaming.

With programs like Dxtory you can set how many threads it will use to encode / render. Is that possible to do with a custom x264 setting? Or is it even worth doing
 

Kharay

Member
Again and I cannot stress this enough; the impact of OBS is not as severe as you might think it is. And, why not keep it at Normal, the default? At Idle all you will end up doing is sacrificing your stream in favor of the game. Balance is the key.
 

L0g1stix

New Member
I didn't think there would be a massive impact with Above Normal > Normal > Idle. I'll change it back to Normal and see what happens. I am still very curious if you can set how many threads the x264 will use.
 

L0g1stix

New Member
I'm willing to give up the in game quality if i know it will grant me a massive performance balance. Anyways in regards to setting how many threads the x264 would use, in the custom encoder settings.

Looking at the Wiki. How would i transfer that into the box.

--thread-input 4?
 

Kharay

Member
I am telling you it will give you a massive performance boost. Don't mess with x264 unless there is an absolute and undeniable need to; which there isn't in this case. OBS at default settings is actually fine. Essentially, as long as you feed it bitrate it will give you 99% game accuracy at a very tolerable performance cost.

The game easily is by far the bigger performance hit. Unless we're talking about Minesweeper, which we're not.
 

L0g1stix

New Member
Well between setting the priority value back to normal, and lowering most of my settings to Medium (Shadows i think was the biggest impact). I can see the performance gain while streaming, big time. Guess ill just tweak the in game until i get the quality i want. Thanks for the help
 

L0g1stix

New Member
Lol, go figure. Now Twitch is having server connection problems :| Getting the server / stream key not found error, Anyways thanks again for the help.
 
Top