8-Bit Pipeline but 10 and 12 Bit encoding options ?

General questions or discussion about HandBrake, Video and/or audio transcoding, trends etc.
Post Reply
razorback
Posts: 24
Joined: Wed Apr 25, 2018 7:47 am

8-Bit Pipeline but 10 and 12 Bit encoding options ?

Post by razorback »

Description of problem or question:
If Handbrake only has an 8-bit internal pipeline, what do the 10 and 12 bit encoding options do at all ???



Steps to reproduce the problem (If Applicable):




HandBrake version (e.g., 1.0.0):




Operating system and version (e.g., Ubuntu 16.04 LTS, macOS 10.13 High Sierra, Windows 10 Creators Update):




HandBrake Activity Log ***required*** (see How-to get an activity log)

Code: Select all

Please replace this text with the contents of your log file between the two code tags - OR -  provide a pastebin URL in place of these 3 lines.
Deleted User 11865

Re: 8-Bit Pipeline but 10 and 12 Bit encoding options ?

Post by Deleted User 11865 »

Improves compression efficiency a touch due to reduced internal rounding errors. It may also slightly reduce color banding issues.
User avatar
JohnAStebbins
HandBrake Team
Posts: 5712
Joined: Sat Feb 09, 2008 7:21 pm

Re: 8-Bit Pipeline but 10 and 12 Bit encoding options ?

Post by JohnAStebbins »

This post gives a simplified explanation of the process
viewtopic.php?f=6&t=36432&p=171379&hili ... in#p171354

Basically there are round off errors when converting to and from frequency domain that are reduced when doing 10 bit encoding. I'm making a bit of a guess here since I'm not a codec expert, but I think that the expanded decode bit depth allows the encoder to make better choices when selecting the coefficients it is going to keep during quantization, and thus improves it's compression efficiency (i.e. bits per pixel).
rollin_eng
Veteran User
Posts: 4840
Joined: Wed May 04, 2011 11:06 pm

Re: 8-Bit Pipeline but 10 and 12 Bit encoding options ?

Post by rollin_eng »

12 is better than 10, 10 is better than 8.

Here endeth the lesson.

:)
Deleted User 11865

Re: 8-Bit Pipeline but 10 and 12 Bit encoding options ?

Post by Deleted User 11865 »

Not in terms of compatibility, no. I would stick with 10-bit, AFAIK there's very few devices with hardware-accelerated 12-bit decoding support. So IMHO 10 is better than 12 :P
rollin_eng
Veteran User
Posts: 4840
Joined: Wed May 04, 2011 11:06 pm

Re: 8-Bit Pipeline but 10 and 12 Bit encoding options ?

Post by rollin_eng »

I was just being silly, but everyone knows turning it up to 11 bit is the best.
razorback
Posts: 24
Joined: Wed Apr 25, 2018 7:47 am

Re: 8-Bit Pipeline but 10 and 12 Bit encoding options ?

Post by razorback »

very funny.......

when the source is 8 bit (Standard BD) and the pipeline is 8 bit --> what sense would 10bit/12bit encoding make ?
just padding the surplus bits with zeroes ???

a 10bit source (HDR) cannot be processed properly because the pipeline being 8 bit
same for a 12bit source (Dolby Vision).

So why the bells and whistles for 10/12 bit encoding if its of no use at all ????
Deleted User 11865

Re: 8-Bit Pipeline but 10 and 12 Bit encoding options ?

Post by Deleted User 11865 »

We just explained that encoding an 8-bit source using a 10/12-bit encoder improves compression efficiency. So there is a use case…
mduell
Veteran User
Posts: 8187
Joined: Sat Apr 21, 2007 8:54 pm

Re: 8-Bit Pipeline but 10 and 12 Bit encoding options ?

Post by mduell »

It's mostly for epeen, IMO.
User avatar
JohnAStebbins
HandBrake Team
Posts: 5712
Joined: Sat Feb 09, 2008 7:21 pm

Re: 8-Bit Pipeline but 10 and 12 Bit encoding options ?

Post by JohnAStebbins »

I use 10 bit because it does significantly decrease banding and provides better quality for filesize.
razorback
Posts: 24
Joined: Wed Apr 25, 2018 7:47 am

Re: 8-Bit Pipeline but 10 and 12 Bit encoding options ?

Post by razorback »

well I of course don't know what kind of source nor reproduction devices you use but things like banding have never occured to me dealing with my sources (DVD, BD, BD-UHD (SDR, HDR and DV) and mp4-recordings from my drone).
Maybe I am visually impaired (just quite not 20/20) or my requirements or my reproduction equipment ist just not studio-grade - I can't see the benefit of fiddling around with bits (of no use) and the benefit of such fiddling being not visible on the screen.

Do you have an argument I really can SEE ?????
Deleted User 11865

Re: 8-Bit Pipeline but 10 and 12 Bit encoding options ?

Post by Deleted User 11865 »

Well, as you put it in the topic title, they are encoding options -- if you can't see the difference, don't use them.
User avatar
JohnAStebbins
HandBrake Team
Posts: 5712
Joined: Sat Feb 09, 2008 7:21 pm

Re: 8-Bit Pipeline but 10 and 12 Bit encoding options ?

Post by JohnAStebbins »

The type of artefact I'm referring to is present with any of those sources, although you may not "SEE" in a properly set up viewing environment. It's most easily visible when looking closely at dark areas and becomes quite apparent if you increase brightness and contrast on your monitor or TV (not recommended for proper viewing). It's the kind of thing that the "aq-mode=3" encoder option was specifically designed to help with, but 10-bit encoding does a better job with significantly lower bitrates.

So although you may not see the artefacts in your tests (since you've probably got a properly calibrated viewing environment), they are there. If I find something that can improve quality and lower bitrate at the same time, I consider that a worthwhile option for *my* use case.

The downside of 10bit encoding is that it places a limit on what devices the video can be played back on. So if you want maximum portability, stick with 8 bit, it's plenty good enough. I have a limited set of players I use that support the formats I encode to.
Deleted User 13735

Re: 8-Bit Pipeline but 10 and 12 Bit encoding options ?

Post by Deleted User 13735 »

It may also slightly reduce color banding issues.
it has been visibly demonstrated in tests that when importing 8 bit 4:4:4 or 10 bit YUV original source, banding is reduced over conventional 8 bit dithering, even if outputting 8 bit 4:2:0 for delivery.
Post Reply