Quote:
Originally Posted by `Orum
I'm curious, what's the rationale behind fulls=false as the default for YUV when using ConvertBits()?
Edit: I ask mainly for up-converting, as e.g. white in 8 bit (255) is no longer truly white when in 10+ bit without fulls=true, it's just very close to true white (i.e. UCHAR_MAX << (BitsPerComponent() - 8)).
|
The lower bound of the upsampled white point is always white in video standards. For 10-bit full range, that means 1020 and 1023 are the same full white, as are 940+ in limited range. BT.2020 defines the hard peak as 940. Engineers worried about that exact problem and decided that a simple bitshift would
always be correct.
This isn't true for HDR, but that's an entirely different ballgame.