I wanted to understand more about higher precision color representation (bit-depth). IMO shift from 8 bits to 16 is long overdue, we use 8bit since VGA and now use many times more pixels but same quality of a pixel. As now 10bit monitors/tv become available and (hopefully) more bits too, I did a web search and had not find much. E.g. Can I use 10bit effectively today and if yes how? (from 2017) says:

If you decide to upgrade, special video cards and drivers are needed to use more than 8-bit color. That pretty much guarantees hours of fiddling to try to get everything working. Outcomes include thinking it's working when it's not, but being unable to tell the difference. Or simply giving up and settling for 8-bits. If you ever do manage to get it working, people will continue to send you JPEGs even though you've insisted they send only HEIC or BPG (or PNG or WebP or EXR). They will also complain about not being able to open your files or about the colors in your images being "off" because they weren't considerate enough to also upgrade their equipment to display 10-bit color. (Or perhaps worse, they will compliment you on how warm the colors in your images are when you had intended cool tones...)

The question is about bold part. I was surprised, isn't 10bits HEIC vs 8 bits is just 2 extra bits to add more precision to color intensity and to display 10bits on 8bits hardware one just drops 2 bits? How such drop can change "warmness"?


1 Answer 1


8bit is capable of reproducing nearly 17 million colors, but a human is only capable of seeing/discerning approximately 11 million colors... 8 bit is not the limitation.

Likewise, modern DSLR's/cameras have 14bit processors; but most of the time the camera is only generating around 8-10 bit data... even in optimal conditions most barely exceed 12bit in any aspect, and I don't know of a single one that ever exceeds 8bit color currently.

For the most part, it's just marketing hype.

What is more relevant is the color space those bits are used to represent. And the issue with non-standard/non-tagged images is that most systems will assume them to be 8bit sRGB; and that is where the color shifts occur.

  • \$\begingroup\$ Thank you for confirmation of the problem. I'm looking for more technical detailed explanation why viewers does not discard extra 2 buts. E.g. if one reads a file of UTF -16 symbols each 2 bytes assuming ASCII of one byte per symbol it is not "shift" occurring, but IMO complete gibberish. Why is there still a more or less correct picture displayed, not gibberish? For e.g. HEIC. \$\endgroup\$ Nov 24, 2021 at 20:13
  • \$\begingroup\$ @Martian2020 I'm sorry, but your comment is partially gibberish. Perhaps there is a language issue or barrier here. UTF-16 is a text encoding scheme that happens to use 16 bits of information. ASCII is also a text encoding scheme (in the strictest interpretation, it's 7 bits). ASCII and UTF-16 have nothing to do with image data encoding. \$\endgroup\$
    – scottbb
    Nov 24, 2021 at 21:35
  • 1
    \$\begingroup\$ @Martian2020, I guess the issue is not that the colours will be off. Normally, yes, the lowest 2 bits would just be truncated, all else being equal. But all else is not always equal: some higher-bit file formats are still relatively new and have less/poorer support, raising the possibility for the software (or the driver) to do something wrong, like ignoring or misinterpreting colour profile data. What makes it worse is that the change will often be subtle and may not be immediately obvious, unlike misinterpreted UTF-16. \$\endgroup\$
    – Zeus
    Nov 25, 2021 at 2:31
  • 1
    \$\begingroup\$ @Martian2020, 006600 and 006700 are the same colors whether the color space is in 16bit or 8bit. Banding is primarily an issue of the rounding of math... i.e. if those colors were arrived at by editing in 8bit. But 006600 and 006700 are different colors in different color spaces (i.e. they are brighter colors in ProPhoto than in sRGB). And monitors have their own color spaces as well... if you see potential banding between those two colors there is probably and issue with the color space conversion at some stage (i.e. an uncalibrated monitor). \$\endgroup\$ Nov 25, 2021 at 15:06
  • 1
    \$\begingroup\$ @Steven, not quite true. I can easily see the difference between #006600 and #006700 (side by side, of course), as well as practically all colours with such difference (except for very dark ones), even in sRGB range, whether calibration on or off. 8-bit calibration makes things just awful for gradients (because of these round-off errors), which acquire colour casts for different bands, and can sometimes hide such difference between neighbours. Decent colour calibration can only be done in 10 or more bits, so 8 bits is a limitation sometimes, in my direct experience. \$\endgroup\$
    – Zeus
    Nov 26, 2021 at 0:26

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.