Jump to content

"Shadowplay" vs QuickSync vs x264 for streaming - Quality Comparison

LAwLz
4 minutes ago, kladzen said:

H.264 software produces better quality than NVEC from nvidia.. (hardware h.264 encoder) or even quicksync from intel cpu's...  

 

This have been proven multiple times and the others really suck... (i'm a streamer myself so i have tried all the different options)

 

Nothing beats software h.264 quality.. period..

NVENC, QuickSync, and (I presume) ReLive encode to the H.264 format. You're referring to x264.

Link to comment
Share on other sites

Link to post
Share on other sites

4 minutes ago, M.Yurizaki said:

NVENC, QuickSync, and (I presume) ReLive encode to the H.264 format. You're referring to x264.

- h.264 is the codec.
- x264 is the open source program (library) used to encode Bluray or any other video format into the h.264 format, ready for packaging into the desired container (eg. mkv).

Link to comment
Share on other sites

Link to post
Share on other sites

Well "faster" is twice the performance taxing as "veryfast"... And enables more parameters in the h264 encoding for better quality...

 

Now ryzen will have no issues at encoding 720p 60fps at "fast" or even "medium" - but remember that if you have a game that is very CPU taxing... the both combined COULD be an issue.. and the encoding preset might have to be set to a higher preset...

 

Now.. please also note that if you downscale.. i suggest using the GPU and then encode with the CPU... that way you take away the stress off the CPU even more and and "lower" the preset for even more quality in OBS

Link to comment
Share on other sites

Link to post
Share on other sites

2 minutes ago, kladzen said:

- h.264 is the codec.
- x264 is the open source program (library) used to encode Bluray or any other video format into the h.264 format, ready for packaging into the desired container (eg. mkv).

I reread your post, I misread it.

 

Well sure, hardware encoders have a problem of being fixed function, at least back when they were first released. However, a lot of the material I found when I went digging on this topic last week were articles that were several years old. So I find it hard to take those articles seriously when nobody's looked at again at some depth recently (feel free to find some recent stuff)

 

What's being posited here is that the quality of using a hardware encoder, especially at 3500 kbps, is acceptable for streaming purposes and OP is suggesting that 3500 kbps is too low for 1080p video anyway. That and the possibility of Twitch and YouTube just re-encode everything with heavy compression anyway such that it doesn't really matter what kind of quality you're trying to achieve, it's just going to be butchered on the other side.

 

Plus people are just so anal about not losing game performance while streaming yet want to maintain quality. If you really wanted that, get a dedicated capture/streaming box so that the gaming computer is totally unaffected by doing extra work.

Link to comment
Share on other sites

Link to post
Share on other sites

3 minutes ago, M.Yurizaki said:

I reread your post, I misread it.

 

Well sure, hardware encoders have a problem of being fixed function, at least back when they were first released. However, a lot of the material I found when I went digging on this topic last week were articles that were several years old. So I find it hard to take those articles seriously when nobody's looked at again at some depth recently (feel free to find some recent stuff)

 

What's being posited here is that the quality of using a hardware encoder, especially at 3500 kbps, is acceptable for streaming purposes and OP is suggesting that 3500 kbps is too low for 1080p video anyway. That and the possibility of Twitch and YouTube just re-encode everything with heavy compression anyway such that it doesn't really matter what kind of quality you're trying to achieve, it's just going to be butchered on the other side.

 

Plus people are just so anal about not losing game performance while streaming yet want to maintain quality. If you really wanted that, get a dedicated capture/streaming box so that the gaming computer is totally unaffected by doing extra work.

Aight :) 

 

Well lower to 720p.. for better quality. Also every big streamer is doing 720p for a reason.. cus of quality from twitch.. - However recently more and more people start to stream with 5-6mbit to have nice almost pixel free stream..

 

btw the hardware encoder in nvidia cards have not changed.. so no improvement in this section

Link to comment
Share on other sites

Link to post
Share on other sites

43 minutes ago, kladzen said:

Well "faster" is twice the performance taxing as "veryfast"... And enables more parameters in the h264 encoding for better quality...

 

Now ryzen will have no issues at encoding 720p 60fps at "fast" or even "medium" - but remember that if you have a game that is very CPU taxing... the both combined COULD be an issue.. and the encoding preset might have to be set to a higher preset...

 

Now.. please also note that if you downscale.. i suggest using the GPU and then encode with the CPU... that way you take away the stress off the CPU even more and and "lower" the preset for even more quality in OBS

I find it VERY hard to believe that Ryzen will do medium preset or even fast with a game running, even if the game isn't that CPU taxing. 

 

Also, it still seems like you haven't read my post. I recommend you do that before commenting again. 

Kind of annoying having you come in and recommend using a higher quality preset for x264 when I have already tried that, posted several samples and explained why I did not use a higher preset.

 

 

33 minutes ago, kladzen said:

Aight :) 

 

Well lower to 720p.. for better quality. Also every big streamer is doing 720p for a reason.. cus of quality from twitch.. - However recently more and more people start to stream with 5-6mbit to have nice almost pixel free stream..

 

btw the hardware encoder in nvidia cards have not changed.. so no improvement in this section

Twitch does not allow a higher bitrate than 3500Kbps according to their documentation. That's why I chose that bitrate. 

 

Yes, the hardware encoder has changed, dramatically. The one I was using was the fourth gen NVENC and first gen quicksync. 

Link to comment
Share on other sites

Link to post
Share on other sites

37 minutes ago, LAwLz said:

I find it VERY hard to believe that Ryzen will do medium preset or even fast with a game running, even if the game isn't that CPU taxing. 

 

Also, it still seems like you haven't read my post. I recommend you do that before commenting again. 

Kind of annoying having you come in and recommend using a higher quality preset for x264 when I have already tried that, posted several samples and explained why I did not use a higher preset.

 

 

Twitch does not allow a higher bitrate than 3500Kbps according to their documentation. That's why I chose that bitrate. 

 

Yes, the hardware encoder has changed, dramatically. The one I was using was the fourth gen NVENC and first gen quicksync. 

In your case with your 2500K i would suggest to have the GPU do the downscaling to 720p and have the CPU do the encoding.. this way you propperly will safe yourself 15-40% in CPU load... and then you can propperly run at "faster"... or else at "veryfast" and maybe 60fps

 

I hope this helps with your question! - Cus your "faster" was way better quality than the others...

 

well twitch might not have it documented that you can go over 3500kbit.. but that is the simply because they need to reach alot of people and some people in different areas of the world might not be able to handle a 6000kbit stream... while others can... But sure you can stream at a higher bitrate to twitch...

 

A korean guy even streams at 15.000kbit!

 

I do know that the hardware encoder have been updated at least once that was from kepler to maxwell architecture.. however i'm not aware that it has changed from maxwell to pascal gpu's....

Link to comment
Share on other sites

Link to post
Share on other sites

Nevermind.. they added 10bit support and h.265 suport in pascal gpu's for the optimized nvenc encoder

Link to comment
Share on other sites

Link to post
Share on other sites

1 hour ago, kladzen said:

I hope this helps with your question! - Cus your "faster" was way better quality than the others...

I had no questions... I never asked you anything.

 

I don't really agree that "faster" was "way better". It is definitively higher quality, but not that much.

Running it at an even higher quality setting might be possible, but you would probably need a Ryzen 7 running at ~4GHz and have like 5-6 cores dedicated to encoding. At that point you have to ask yourself, is it really worth the minor quality increase?

 

Good to know that Twitch supports higher than 3500Kbps. I did some more thorough googling and it seems like they don't have a limit after all. They don't recommend going above 3500Kbps though.

 

 

1 hour ago, kladzen said:

I do know that the hardware encoder have been updated at least once that was from kepler to maxwell architecture.. however i'm not aware that it has changed from maxwell to pascal gpu's....

It was actually changed twice during Maxwell. Hence why Pascal is the fourth generation.

Kepler - Gen 1

Maxwell GM 1XX - Gen 2

Maxwell GM 2XX - Gen 3

Pascal - Gen 4

 

I haven't checked it they improved the quality, but they did improve performance across the board (even for H.264).

Link to comment
Share on other sites

Link to post
Share on other sites

Thread moved to Member Reviews. 

"It pays to keep an open mind, but not so open your brain falls out." - Carl Sagan.

"I can explain it to you, but I can't understand it for you" - Edward I. Koch

Link to comment
Share on other sites

Link to post
Share on other sites

So using a 5930k (6 cores 12 threads), with a Titan X Pascal, current gen NVENC. Which settings would be ideal as like a set it and forget it for a beginning twitch user? :)

Link to comment
Share on other sites

Link to post
Share on other sites

2 hours ago, patrickisfrench said:

So using a 5930k (6 cores 12 threads), with a Titan X Pascal, current gen NVENC. Which settings would be ideal as like a set it and forget it for a beginning twitch user? :)

I would try with NVENC first. Set the bitrate to as high as your connection can handle (up to a maximum of 3500Kbps).

You should probably (although I haven't tested yet) stream at 720p. The bitrate Twitch support will, if I had to guess, look better at 720p than at 1080p.

Link to comment
Share on other sites

Link to post
Share on other sites

On 2/26/2017 at 1:42 PM, Ryan_Vickers said:

So you recorded a lossless stream once, and compared the results for quality (right?).  Great test, I'm glad someone bothered to :P 

 

But, I think the next step is to upload each to Twitch and see how they look after they've gone through that second encode.  According to Linus on the WAN show, the claim by AMD for using the on-CPU encoding is that and minor differences in quality are greatly exaggerated when you re-endocde again at a low bitrate.

That was basically done with the youtube upload right? I mean it's not twitch re-encoding but it should be pretty similar.

 

On 2/26/2017 at 3:02 PM, Kloaked said:

NVENC is the clear winner. I would also like to see if anyone notices a slight audio lag in the x264 videos.

 

The video quality is slightly better with NVENC but the video also feels like there's no discrepancy between it and the audio.

I disagree, I think the video quality goes something like this Faster > NVENC ~= VeryFast > QuickSync

 

On 2/27/2017 at 11:18 AM, LAwLz said:

snip

What bitrate did you encode at?

EDIT: Found bitrate in comment, 3.5 mbps

Link to comment
Share on other sites

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×