Question / Help Help with stream quality

Dan_of_Earth

New Member
Hey everyone, i just built a new PC and i'm struggling to find a good balance with my stream. I'm using obs studio. My recordings are amazing, perfect 1080p 60fps. i had the stream settings kinda jacked up at first and my stream, even in the dashboard preview was buffering a bit. A few friends who were watching said that there was a was a weird motion blur for them as well. so i lowered the bit-rate and some other settings and now when i watch the vod's they look horrible. So im at a loss to find a balance between great quality but also not making it impossible for people to actually watch the stream without buffer issues.

currently, im using the NVENC H.254 encoder, downscaling to 1280x720 (id love to do 1080 although most things i've read suggests almost no one streams in 1080), CBR with a bitbrate of 2500, high quality preset, lanczos filter and profile high.

PC specs are:
GPU : NVIDIA GeForce GTX 1080
CPU : Intel(R) Core(TM) i7-6800K CPU @ 3.40GHz
Memory : 32.00 GB RAM (31.90 GB usable)
Current resolution : 1920 × 1080, 60 Hz
Operating system : Microsoft Windows 10 Home

Any help would be greatly appreciated as trying to find a nice balance is starting to drive me a little crazy. Thanks in advance!
 

Cryonic

Member
First, you have a 6800k.
Second: you dont need anything else :D
Switch to x264 encoder (will always look better than other encoders on lower bitrate).
Second: select the right preset for 720p 60FPS (or 30FPS for low motion games aka Hearthstone blubb). If your CPU is sitting around, doing nothing, you can go with medium preset. Faster means - lower CPU usage, lower quality. Veryfast is default.
If you play CPU heavy games (like BF4, BF1 etc) you might wanna drop the preset if you hit "high CPU usage" warnings.
You might even get slower than medium on 720p, that depends on the CPU clock that you use. If you run @ stock, medium will work fine with most games. But i expect someone who gets THAT processor - he will overclock the hell out of it and watercool it (since it is a really hot chip once you go above 4GHz).

You can stream low motion games in 1080p 60FPS. And i would suggest sticking with 3500-4000kbps bitrate. 2500 is just not enough, even with that hardware that can compress the videofeed really well - it is still meh.
If you stream to something else than Twitch, forget the bitrate "limit" and go as high as you want. You can throw even 50mbit/s at Youtube Gaming, it will re-encode it anyway and quality options for users with limited plans etc. are avaliable.
Even 4K streaming at 100mbit/s is possible and it will be really good looking. It is just Twitch considering bitrates above 6mbit/s as DDoS attacks (dumb rule, we kick them for years to get it removed and unlock as much bitrate as we can throw at the server!).

I personally never go lower than 1080p 60FPS veryfast with high bitrate on my stream. With an 5820k and a 970, so even weaker hardware (but higher CPU clock, so it makes up for it).
 
Hi, just as a note @Cryonic states "And i would suggest sticking with 3500-4000kbps bitrate" if you aren't a twitch partner the highest you can stream bitrate is 3500kbps. Once or if you become a partner then you can go higher. Other streaming services will allow higher bitrate though.
 

Dan_of_Earth

New Member
First, you have a 6800k.
Second: you dont need anything else :D
Switch to x264 encoder (will always look better than other encoders on lower bitrate).
Second: select the right preset for 720p 60FPS (or 30FPS for low motion games aka Hearthstone blubb). If your CPU is sitting around, doing nothing, you can go with medium preset. Faster means - lower CPU usage, lower quality. Veryfast is default.
If you play CPU heavy games (like BF4, BF1 etc) you might wanna drop the preset if you hit "high CPU usage" warnings.
You might even get slower than medium on 720p, that depends on the CPU clock that you use. If you run @ stock, medium will work fine with most games. But i expect someone who gets THAT processor - he will overclock the hell out of it and watercool it (since it is a really hot chip once you go above 4GHz).

You can stream low motion games in 1080p 60FPS. And i would suggest sticking with 3500-4000kbps bitrate. 2500 is just not enough, even with that hardware that can compress the videofeed really well - it is still meh.
If you stream to something else than Twitch, forget the bitrate "limit" and go as high as you want. You can throw even 50mbit/s at Youtube Gaming, it will re-encode it anyway and quality options for users with limited plans etc. are avaliable.
Even 4K streaming at 100mbit/s is possible and it will be really good looking. It is just Twitch considering bitrates above 6mbit/s as DDoS attacks (dumb rule, we kick them for years to get it removed and unlock as much bitrate as we can throw at the server!).

I personally never go lower than 1080p 60FPS veryfast with high bitrate on my stream. With an 5820k and a 970, so even weaker hardware (but higher CPU clock, so it makes up for it).

Thanks for the reply and all the info. Im def going to try some of your suggestions. As for my cpu i actually haven't overclocked it yet although i was thinking about it. It is watercooled. I started originally streaming with a higher bitrate however people were telling me that it was buffering quite a bit which was when i decided to lower it. I have pretty awesome internet so i can only assume its on the viewers end. But i was hoping to set the stream in such a way that wouldnt alienate people with not the best internet. Would you suggest sticking with what you originally suggested or maybe something else?
 

Osiris

Active Member
Hi, just as a note @Cryonic states "And i would suggest sticking with 3500-4000kbps bitrate" if you aren't a twitch partner the highest you can stream bitrate is 3500kbps. Once or if you become a partner then you can go higher. Other streaming services will allow higher bitrate though.

Afaik, you can only go higher then 3500 kbps if you have permission from Twitch. Technically you can go higher, but not sure how much leeway Twitch gives you.
 

Cryonic

Member
I was looking at that "issue" aka bandwith cap on Twitch for a long time. You can go for 4000kbps average without any issues. If you go higher (like 5000) you might end up with a twitch staff member in your chat telling you to lower it, that happened a few times to streamers (from big to small). They start thinking about a DDoS type of attack if you pump more than 6000kbps into the ingest server.

Remember, transcoding is avaliable for almost anyone (the quality selection button, not only source) and with the HTML5 player right now things are looking way better than a year ago when it comes to buffering.

Just find your settings. That depends on the game. Low motion, low detail games will look great even at 2500kbps, high detailed games (with a lot of moving parts like grass, DayZ is the worst^^) will look bad even at 5000kbps. It is simply not enough bitrate to have the game look the same on stream as you see it on your screen (and this should be the goal anyway - getting the quality as good as possible without burning a lot of money on additional hardware).
 

Dan_of_Earth

New Member
I was looking at that "issue" aka bandwith cap on Twitch for a long time. You can go for 4000kbps average without any issues. If you go higher (like 5000) you might end up with a twitch staff member in your chat telling you to lower it, that happened a few times to streamers (from big to small). They start thinking about a DDoS type of attack if you pump more than 6000kbps into the ingest server.

Remember, transcoding is avaliable for almost anyone (the quality selection button, not only source) and with the HTML5 player right now things are looking way better than a year ago when it comes to buffering.

Just find your settings. That depends on the game. Low motion, low detail games will look great even at 2500kbps, high detailed games (with a lot of moving parts like grass, DayZ is the worst^^) will look bad even at 5000kbps. It is simply not enough bitrate to have the game look the same on stream as you see it on your screen (and this should be the goal anyway - getting the quality as good as possible without burning a lot of money on additional hardware).

alright, definitely gonn aplay around with some of the settings you mentioned. I basically stream mostly high motion games (FPS shooters, 3rd person action like tomb raider as an example and dead by daylight) so i probably wont have to change the settings too often. Correct me if im wrong but the quality setting is only available when watching a partnered streamer? I am not partnered so thats why i was trying to consider those watching who may not have the bandwidth for higher quality video.
 

Cryonic

Member
Nope, the quality option is enabled to partners by default, but non-partnered streamers get it when the servers have some horsepower left for it. It is random, can happen mid stream and there is no warning etc.
Bandwith is a balance - between the stream quality and low requirements for viewers on limited or slow connections. Once you have transcoding, that doesnt matter anymore.
 

Dan_of_Earth

New Member
Nope, the quality option is enabled to partners by default, but non-partnered streamers get it when the servers have some horsepower left for it. It is random, can happen mid stream and there is no warning etc.
Bandwith is a balance - between the stream quality and low requirements for viewers on limited or slow connections. Once you have transcoding, that doesnt matter anymore.
so considering everything we discussed do you think streaming in 1080p 60fps at 3500 bitrate would be wise in my current situation. At this point obviously hardware isnt an issue, more so finding that balance
 

Cryonic

Member
so considering everything we discussed do you think streaming in 1080p 60fps at 3500 bitrate would be wise in my current situation. At this point obviously hardware isnt an issue, more so finding that balance

Nope. High motion games will look bad at that bitrate combined with that resolution. Drop to 720p 60FPS and select a slower preset (that does not overload your CPU) and keep the 3500 or 4000 bitrate for twitch.
1080p streaming on twitch works well with "easy" games like league of legends,HS, maybe CS:Go if set up properly, but all high detailed high motion games will just get blurry and pixelated. Specially stuff like jungle or moving grass all over the screen (ala DayZ) will stress out the encoder. This is why games like League of Legends look way better on streams than stuff like DayZ when streamed with the same settings.

So: keep it at 720p 60FPS and play around with the preset and maybe light overclocking (the CPU should take 3,8Ghz without much additional voltage, also bump the cache a bit - detailed overclocking guides on haswell-e/broadwell-e can be found on the usual sites like tomshardware or overclockers blah. If you struggle, i get you some help - but i know that broadwell-e does not overclock as high as haswell-e (like my 5820k). 4,0Ghz is sure, every broadwell-e CPU can take it, the difference is just the needed voltage and the heat output. Even with watercooling, you will see 80°C in the summer, be prepared. Hot chip once you squeeze it :-P
The main goal for you is: find the preset that leaves enough headroom for games and background tasks, remember - some stuff gets heavy after hours of streaming, so dont squeeze the last % out. Some games are pretty heavy on the CPU (current Mafia 3, BF1 - at least it was in the beta), other games dont stress the CPU at all.
 

Dan_of_Earth

New Member
Nope. High motion games will look bad at that bitrate combined with that resolution. Drop to 720p 60FPS and select a slower preset (that does not overload your CPU) and keep the 3500 or 4000 bitrate for twitch.
1080p streaming on twitch works well with "easy" games like league of legends,HS, maybe CS:Go if set up properly, but all high detailed high motion games will just get blurry and pixelated. Specially stuff like jungle or moving grass all over the screen (ala DayZ) will stress out the encoder. This is why games like League of Legends look way better on streams than stuff like DayZ when streamed with the same settings.

So: keep it at 720p 60FPS and play around with the preset and maybe light overclocking (the CPU should take 3,8Ghz without much additional voltage, also bump the cache a bit - detailed overclocking guides on haswell-e/broadwell-e can be found on the usual sites like tomshardware or overclockers blah. If you struggle, i get you some help - but i know that broadwell-e does not overclock as high as haswell-e (like my 5820k). 4,0Ghz is sure, every broadwell-e CPU can take it, the difference is just the needed voltage and the heat output. Even with watercooling, you will see 80°C in the summer, be prepared. Hot chip once you squeeze it :-P
The main goal for you is: find the preset that leaves enough headroom for games and background tasks, remember - some stuff gets heavy after hours of streaming, so dont squeeze the last % out. Some games are pretty heavy on the CPU (current Mafia 3, BF1 - at least it was in the beta), other games dont stress the CPU at all.
ok thanks again for all the advice. So i've switched to x264. Ill keep it at 720p 60fps with a 3500 bitrate. I'll start on the medium preset and see how that works out and adjust as needed. Im keeping the profile on high. Anything else i should adjust or check for?
 

Cryonic

Member
ok thanks again for all the advice. So i've switched to x264. Ill keep it at 720p 60fps with a 3500 bitrate. I'll start on the medium preset and see how that works out and adjust as needed. Im keeping the profile on high. Anything else i should adjust or check for?

CPU load, CPU temps (CoreTemp is a good small tool for both). Try to find the hardest scenario out of all games/scenes that you use.
Remember to test everything else - alerts, overlay, cam blubb.
 

N1GHTHAWK

Member
Hey guy so I recently built gaming PC with a i7 -6700k and a GTX 1070, thinking that I should be able to stream just fine. However, I tried recording at 1080p/60fps with a 3500 bitrate (since my internet speeds are 1000 mbps), but my stream is pixelating during high motion scenes. So, I lowered my bitrate to 3000 and my quality to 720p/60fps, but the stream is still pixelating in high motion scenes. Any suggestions as to how I can fix this issue?

Here are my log files:
https://gist.github.com/8cd32f16eb06de0971bf50b13319377e
 
Top