View Full Version : NVENC HEVC BFrames - How bad is it?
Neillithan
27th July 2017, 07:59
Hi, I've been tossing this question around in my head lately. NVENC HEVC does not support bframes. But how bad is it? How much of a quality improvement can be had by using bframes? Seems odd that something that has existed for years by other encoders such as x264 and even x265 is not supported by NVENC HEVC. Does anybody have any idea why NVENC HEVC doesn't support bframes?
Thanks!
Asmodian
27th July 2017, 08:31
B-frames need access to future frames so they necessarily increase latency, I suspect this is why NVENC doesn't support them.
Honestly I am not sure how much they help, it is a little bit complex due to the use of quantizer offsets which lower the quality of B-frames without hurting I/P frames. At lower bit-rates this looks better than lowering the quality of all frames but it is different than the pure efficiency improvement B-frames also add. This trick works because B-frames are not used as references by other frames so the error doesn't propagate through the rest of the frames the way it does with I or P frames. Much of the savings from B-frames is due to encoding them at slightly lower quality, not the improved prediction due to having access to future frames as references. As always, different sources can vary widely.
nevcairiel
27th July 2017, 08:41
You can't compare x264/5 to hardware encoders on GPUs realistically. x264/5 are designed for high-quality, NVENC is designed to run fast. Personally I would never use NVENC for anything but realtime streaming (in which case the reduced latency from not having B-Frames might actually be beneficial), and even then unless i'm streaming in 4K and want to use HEVC, I would probably use x264 for its superior quality.
MeteorRain
2nd August 2017, 19:40
Why would you even care about quality improvement when using NVENC?
NVENC has (almost) nothing to do with quality.
It's like asking how much the launch control from super cars could help shortening the lap time of a Toyota Corolla sedan. Yes it helps somehow, but there's not much point. You want a fast car, go get a your car brand here.
writersblock29
13th January 2020, 18:05
NVENC HEVC does not support bframes. But how bad is it? How much of a quality improvement can be had by using bframes?
I realize this is an older thread, but for those stumbling across it now, Turing architecture now does support b-frames for HEVC. From my own usage, I can say that it does increase the quality appreciably. Is it in par with software x265? No... but it's not far off. I suspect this is because x265 contains more tweakability: if you're really striving for maximum quality for the smallest possible file size, you're best served sticking with software and a beefy CPU.
That said, I feel that for most casual users, NVENC is more than fine. I tend to use it mostly for size reduction on UHD HDR sources, since I use an Emby server to serve our living room Roku--and less bitrate makes this type of file easier to stream. Software x265 just takes too bloody long for my liking, so I use my GTX 1660 (Turing).
As an example of what's achievable with Turing and HEVC, using three b-frames in Staxrip, I knocked Once Upon a Time in Hollywood down from ~70GB to just over 20GB, and it looks great. I was able to move on with my life after about a half an hour(ish) of encoding. I'd wager that fits most of us as far as what we desire out of an encoder.
If, on the other hand, I was insistent upon trying to hit something like 12GB... or 15GB, then yeah, x265 would be choice, and I'd spend days doing it once test samples and adjustments are factored. I just can't justify that amount of my time being spent for so little in return: what I managed to do with NVENC streams perfectly, looks good, and hard drives are fairly cheap so it's not even down to cramming the most I can on a single drive.
Your own personal goals really are the decider as to whether GPU encoding is worth it to you. In my case, it is. Your mileage may vary.
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.