Monday, July 25, 2011

Guest Blog: Understanding 10-bit Color by NEC’s Art Marshall

NEC Display Solutions launched our first 10-bit color LCD, the 24” MultiSync PA241W, in February 2010. One of the questions that we are asked regularly by people evaluating all of our MultiSync PA Series models is “what is the difference between 8-bit color and 10-bit color?” and that is generally followed with “How do I get 10-bit color?” Ron and I have been discussing this for a while and, thanks to his feedback, we’ve put together something that I hope answers those basic questions.

Overview of LCD Color

(This is intended to give you a brief overview of the way that LCDs create color. For much more detail on LCD technologies, see the Wikipedia article on LCDs.)

Understanding how the computer creates color in an LCD is important to getting the most color from the display. Generally LCD pixels are made of 3 colored “subpixels”: red, green and blue (RGB). The LCD combines these subpixels based on the information that the computer sends over the video card. The amount of bits of color that the computer sends controls the number of colors that can be represented by the display, and the computer sends data for each of these three colors.

8 bit color: Typical desktop displays support 8 bits of color data per RGB channel. This means that there are 256 (8 bits) of possible values for each of the colors and combined the display can produce 16.8 million colors (256 x 256 x 256). This is also known as 24 bit color.

Why 30-bit color is better than 32-bit

10 bit color: MultiSync PA Series displays, when used with a compatible video card, support 10 bits of color data per RGB channel. This yields 1024 values for each color and a total of 1.07 billion (1024 x 1024 x 1024) possible colors that can be represented. This is also known as 30 bit color.

Side note: older display technology featured 32-bit output. This was actually a combination of 8 bits for each RGB channel as well as an alpha (transparency) channel. Comparing this to today’s technology, 30-bit technology is true 30 bits of color data compared to the 24 bits of color data in the older, 32-bit technology.

I have a 10-bit LCD, now what?

8-bit color display of dice courtesy of NEC

10-bit color display of dice courtesy of NEC

8-bit color

10-bit color

It turns out that every element of the combination of application software, operating system, video card, video connection and display must support 10 bit color in order to achieve true 10 bit color output.

Several video cards from major manufacturers including ATI (R6xx, R7xx, R8xx ATI Radeon hardware) and NVIDIA (Quadro series with DisplayPort, not Quadro FX) support 10 bit color. In addition, you need a DisplayPort connection to connect the video card to the display.

To enable 10-bit color on an AMD / ATI video card, click here. [Ron likes this doc better]

To enable 10-bit color on NVIDIA video cards click here. [Ron – nVidia calls this feature Deep Color in their drivers]

Finally, you need both operating system and application support for 10-bit color. 10-bit color is only available on computers running Windows XP, Windows Vista and Windows 7. MacOS versions including 10.6.x do not support 10-bit color output.

Application support for 10-bit color is constantly evolving. 10-bit color is typically only supported by software that uses either OpenGL or DirectX. Contact your software vendor for questions on 10-bit color support.

Most typical desktop configurations are limited by some component in the system and can only produce 8 bit color. For example, you could have a 10-bit LCD, 10-bit capable video card, DisplayPort video connection and Windows 7 operating system but without an app that can generate 10-bit color data, you will not see the advantage of those extra bits of data. By using the correct software, an operating system, video card and display that support 10 bit color, you can produce over 1 billion colors.

If you have an NEC MultiSync PA Series display, you can download a sample application (for Windows only) to see if your system is displaying 10-bit color. [Maximize and ALT+TAB between windows for the best result]

I hope that this helps. Contact me on Twitter using @Art_Marshall or post any questions in the comments!

Art Marshall is the Product Manager for Professional Desktop Displays, including the award-winning MultiSync PA Series, at NEC Display Solutions of America.

You can find more about NEC Display Solutions on twitter @NEC_Displays, on Facebook at http://www.facebook.com/necdisplay or at http://www.necdisplay.com/

Ron’s Reviews of NEC PA Series Displays

Click here to read Ron’s reviews of the 24 & 27” PA Series, or click here to read Ron’s review of the 30” PA series.

Photoshop & 10-bit Color Depth Support (by Ron)

While it isn’t very well documented (here’s the closest hit I found), both Photoshop CS4 & CS5 for Windows support 10-bits per channel color depth (30-bits total) by enabling the correct option in Open GL as shown in the following sections. I’m not currently aware of any support in Lightroom for this feature.

These directions will ONLY work if you are running a compatible video card using the correct cables (dual link DVI or DisplayPort) to a compatible display (like most, not all, NEC PA Series).

Enabling 10-bit Per Color Channel (30-bits total) in Photoshop CS4

SNAGHTML149cb279
Step 1 – Click Advanced Settings under Enable OpenGL Drawing

image
Step 2 – Match your settings as shown above (DO NOT check Color Matching)

Enabling 10-bit Per Color Channel (30-bits total) in Photoshop CS5

SNAGHTML14aeda73
Step 1 – Click Advanced Settings under Enable OpenGL Drawing

SNAGHTML14b9e6e1
Step 2 – Choose Normal or Advanced Mode and leave the check boxes checked

NOTE: I’ve got this working on my system before, but as of the time I wrote this article I could not get CS5 to work (CS4 on the same system worked fine). Each time it has been more challenging in CS5 to get this to work and has required multiple restarts of Photoshop to get accurate results.

Testing 10-bit Support in Photoshop

Download Ramp.psd from AMD (web search if link is broken) and open it in Photoshop. If you see this dialog:

image

just click OK. On a properly configured system you’ll see the correct results even using sRGB.

As the dice example above shows, in 8-bit you’ll see segments that clearly define the different shades of gray. In 10-bit per channel color you’ll see a smooth white to black gradient with no hint of any segments. If your video driver isn’t very good it can fail, and some buggy video drivers require you to restart Photoshop or even your system to get this to work properly.

NOTE: If you switch the settings on and off in a single session of Photoshop, you won’t see any changes unless you force a repaint so zoom in and then zoom back to actual pixels again to see the changes (again, ONLY on a properly function video driver).

A Word About 10-bit Per Channel Color Depth & Printing

The world of printing is way behind display technology, so Ron’s advice for those doing print soft-proofing is to DISABLE 10-bit per channel (30-bit total) color support from Photoshop. The reason why is that you’ll hide banding effects that might show in your print as many (not all) printers still only print in 8-bit using a much smaller color space, even if you enable 16-bit printing. This will result in printing surprises and therefore is not recommended.

More About High Color Support on Windows XP & Greater

To understand how and why Windows can support this advanced color mode when the Mac can not, please read this document. It helps to understand what is possible by software that may not support advanced color today. Please forward this link to your software vendor to help spread the word (i.e., educate them) on how they can add advanced color support to their products.

Disclaimer

NEC is a partner of this blog and has provided Ron with loaner PA series displays to review (all of which have been returned). Ron also owns a NEC PA series display that he purchased at B&H with no discount or assistance from NEC. Ron may get a commission if you make a purchase using links originating from this blog.

If you enjoyed this article, please support future articles like this by donating a dollar or saving several dollars by using my discount coupon codes. Either way, your support is greatly appreciated!

Click here to learn more about how this blog is funded.

14 comments:

Pat Herold said...

It is a surprise to Mac users, but I can confirm what we're reading here - that the Mac OS doesn't support 10-bit viewing yet. Here's an Adobe blog that has been following this for awhile. No support in Snow Leopard as of March, 2011. We're still waiting to hear the word about Lion:
http://forums.adobe.com/thread/736938?start=50&tstart=0

Anonymous said...

hallo Ron!......

thanks a lot for good article, but I have one question. Did U figure out why CS5 sometimes work and sometimes not in 10bit mode.(I have same situations)..
Best Regards
Bibo.......

Anonymous said...
This comment has been removed by a blog administrator.
Ron Martinsen said...
This comment has been removed by the author.
Anonymous said...

The nVidia doc which is linked above states, at page 4: the 5800, 4800, 3800, 1800 and 580 Quadro FX series support 30-bit color (for the matter, 10-bit color per channel, I suppose). What is going wrong?

Anonymous said...

Can confirm OS 10.8 still does NOT support 10-bit color. Weak sauce, Apple! Ron: when you say 32-bit color is better than 30-bit, isn't there actually 10 bits for the Alpha in the newer workflow also (making it 32 bit vs. 40 bit if we're comparing Apples and Apples)?

Ron Martinsen said...

Anonymous,

Go read the title more carefully - it says "why 30-bit color is better than 32-bit". It's very confusing which is why this is called out.

I'm not aware of there being an Alpha channel in 10-bits per COLOR channel color (aka 30-bit color which is > 32-bit color which only has 8-bits per color channel).

It's also my understanding that Apple still has not supported 10-bit per color channel color which is why many videographers are moving to the Windows platform as that's really where this higher color resolution is used the most. To some extent it's not really super useful for photography unless your output target is 10-bits per color channel video (no printer or web browser supports this high color depth).

Ron Martinsen said...

RE:


The nVidia doc which is linked above states, at page 4: the 5800, 4800, 3800, 1800 and 580 Quadro FX series support 30-bit color (for the matter, 10-bit color per channel, I suppose). What is going wrong?


This feature is buried in the video driver and turned off by default. It's also an old doc though and sadly the information is very scarce on this topic on the web, hence the reason for my working with NEC to make this article.

Anonymous said...

Thanks for the response re: alpha channels, Ron. This is what's confusing to me. Why would 8bpc color come with comparable alpha support but 10bpc color not have any alpha support? Is the alpha related to dithering the colors or something like that, which is not needed with the precision of 10 bit color?

Ron Martinsen said...

According to my contact at NEC:


it’s because the Alpha channel doesn’t really add anything to the levels of color available.

You can still only have so many values of each color (256 vs 1024) and while an Alpha channel can change the appearance by allowing transparency, it doesn’t actually create additional variants of the color.

Anonymous said...

Thanks Ron.

Sounds like the NEC guy is saying the same thing I was, in a different way: the 8bpc + alpha helps somewhat in the 8-bit workflow, but alpha support in 10-bit workflows is not necessary.

Who is the standards body that makes these kinds of decisions about whether a color workflow uses alpha or not, number of bits supported, etc? CIE? Maybe there is additional descriptions there.

Ron Martinsen said...

I often get asked what card I use, and it is the ATI FirePro V5800

narikin said...

Late comment here, but thanks for the walk through, found I'd forgotten to update my CS6 preferences, and it was a useful reminder. (though the options have changed a bit. Do we need Open CL ticked as well?)

One contribution: I notice on Photoshop CS6, that if your cursor is in the image window's title bar area, you get 8bit, move the cursor away and the 10bit pipeline kicks in, giving a smooth result to the text gradients.

I too use a FirePro 5800

Ron Martinsen said...

narikin,

Yes, you must have a check next to Open GL.

I haven't observed the behavior you are speaking of, but I have steered away from using 10-bit color due to my printing work which requires me to see the 8-bit banding so I can compensate for it before printing.

It sounds like you might be in need of a driver update.

Ron