This is topic 32-bit color? in forum Books, Films, Food and Culture at Hatrack River Forum.


To visit this topic, use this URL:
http://www.hatrack.com/ubb/main/ultimatebb.php?ubb=get_topic;f=2;t=026359

Posted by A Rat Named Dog (Member # 699) on :
 
Why is the "true color" or "16.7 million color" setting called "32 bit color" when it should only take 24 bits to hold that much information? (ie, 16,777,216 million colors = 2^24 = 256 x 256 x 256 = the RGB values) ... am I missing something?

[ August 03, 2004, 12:21 PM: Message edited by: A Rat Named Dog ]
 
Posted by pooka (Member # 5003) on :
 
Maybe you have to times it by black/white value?
 
Posted by Jutsa Notha Name (Member # 4485) on :
 
It's referring to the chips, which are 32-bit, not the colors, which are 24-bit. It is slightly misleading, and some driver makers have taken to using 24-bit in their list of available modes now instead of using the chip settings.
 
Posted by Hobbes (Member # 433) on :
 
No, black and white is one of the colors possible (an RGB setting of 0, 0, 0 or 255, 255, 255 depending). Two possibliities, for some reason maybe they store alpha components in there, not sure why they would do that but hey. Or maybe, since you're processor is undoubtly 32 bit word length they store it in 32 bit format even if they only use the RGB components to increase the speed thigns are rendered. Other than that, I'm at a loss.

[EDIT: Or you could just go with Justa's explenation, but would that really be any fun? [Wink] ]

Hobbes [Smile]

[ August 03, 2004, 12:28 PM: Message edited by: Hobbes ]
 
Posted by Jutsa Notha Name (Member # 4485) on :
 
Too unnecessarily complex, Hobbes. It's just the difference between the chips themselves and the number of available colors.
 
Posted by Corwin (Member # 5705) on :
 
Dog, there's also an 'alpha' channel, used for transparency effects. So there are 24 bits for the colors and 8 bits for the alpha channel. I don't know exactly how this actually works, I'll do a little research on it and come back later with more info.
 
Posted by TomDavidson (Member # 124) on :
 
Here's an answer from John Schilling himself:

"32-bit color" is for all practical purposes just 24-bit color that is aligned so that the color information for each pixel in the bitmap starts every four bytes vs. every three bytes.

The only reason this is done is that on the Intel 32-bit PCI/AGP/Memory data bus its more efficient to get at data that is "32-bit aligned". [with 24-bit data you often actually have to read the pixel's data twice--and then mask for the bits you are interested in]

The "fourth byte" is generally wasted.
 
Posted by Hobbes (Member # 433) on :
 
Ha! With Tom's explenation I was right! [Party]

[EDIT: Or Corwin's for that matter...]

Hobbes [Smile]

[ August 03, 2004, 12:32 PM: Message edited by: Hobbes ]
 
Posted by Mike (Member # 55) on :
 
Not sure why it's usually called 32 bit. It might be because pixels are usually stored in 32-bit chunks so that they're word-aligned (memory on modern computers is accessed in 32- or 64- bit blocks, known as words -- this is one of the things that is meant by, for example, a 64- bit CPU). Often the remaining 8 bits of the word are used for the alpha channel (pixel transparency). So in a sense even 32-bit color with RGBA format is only 16.7 mil. colors, but at 256 possible levels of transparency.

Hope this clears things up a bit.

(Edit: let's not all answer at once, now...)

[ August 03, 2004, 12:37 PM: Message edited by: Mike ]
 
Posted by Corwin (Member # 5705) on :
 
Colors explained.

About the alpha channel:
quote:
Generally, RGB colors are given an alpha channel as well. This value specifies the opacity of the color, which is used when blitting (drawing) the color on another color. If the alpha channel is at 0%, the other channels are trivial, as the pixel is not even drawn. It is completely transparent. 0% of the value of each channel is drawn, thus, nothing is drawn. If the alpha channel is at the maximum value (100%), it is completely opaque. If it's somewhere in the middle, the color is drawn with a certain degree of transparency, depending on the value.

I actually thought it was too simple to be like this, but it turns out it is... Occam's Razor shaves again !
 
Posted by Corwin (Member # 5705) on :
 
From the above link:

quote:
Final Thoughts
Now that you understand how pixels work, you are much better prepared to use them in the real world.

(italics mine)

Use pixel knowledge in the real world ? Define real... [Big Grin]
 
Posted by Corwin (Member # 5705) on :
 
Sorry about all these posts, but I just found another link which talks about a different (although not very usual) use for 32-bit colors:

Adam's Transparency Tutorial

quote:
TIFF files can also be CMYK, also 32-bit, but with no transparency channel.

I've never known that there are images stored in CMYK (Cyan Magenta Yellow Black) format... Now that I know, I can use this knowledge in the real world ! [Wink]

Edit: To really answer Dog's initial question:
quote:
am I missing something?
Yeah, you're missing an alpha channel, you... opaque creature, you ! [Big Grin]

[ August 03, 2004, 12:52 PM: Message edited by: Corwin ]
 
Posted by Jutsa Notha Name (Member # 4485) on :
 
John Schilling gives a nice answer and all, but it's more an after-the-fact attempt at describing it than actually addressing it from the hardware out, which is where the question stems from.

The truth is that the colors, when added up in bits, do only account for 24 bits. However, they are being run on 32-bit chipsets. That is where the 32-bit nomenclature comes from, with 16- and 8-bit chip resolution capabilities preceding it.

This is why when Tom (quoting Schilling) states, "The only reason this is done is that on the Intel 32-bit PCI/AGP/Memory data bus its more efficient to get at data that is "32-bit aligned"." he is more correct, and saying the same thing I already said, that it was the hardware bitrate and not the color bitrate.
 
Posted by James Tiberius Kirk (Member # 2832) on :
 
I stopped thinking about 32 bit color when I realized that the human eye can't distinguish quite that many. [Wink]
 
Posted by Jutsa Notha Name (Member # 4485) on :
 
That's a misstatement along the same lines as saying the human eye can only view at 30 frames per second.

It is not entirely true. The eye may not be able to completely delineate between each separate color, but it can notice the difference between having one million and sixteen million different colors, just like the human eye can actually tell the difference between 30 and 50 and 75 frames a second.
 
Posted by Glenn Arnold (Member # 3192) on :
 
The alpha channel can also be used for reflectivity in programs that do ray tracing.
 
Posted by pooka (Member # 5003) on :
 
So why on the ice cream box flap is there a test print of red, yellow, blue and black? Is it one of those practicality things since there is a large tendency to use just black and if the registration is fouled up it makes it really hard to read the Nutrition facts? Does anyone read the nutrition facts on Ice cream?
 
Posted by Corwin (Member # 5705) on :
 
JTK: Create a picture with a gradient in a 32-bit format, save it, then display it on 16-bit color. You'll notice the difference, I'm sure about it.

pooka: You have time to look on the ice cream box ?! Most people tear it right away to get to the ice cream ! (and I have no idea what you're talking about [Big Grin] )
 
Posted by Mike (Member # 55) on :
 
pooka: http://en.wikipedia.org/wiki/CMYK

Not sure why they need a test print. Maybe so they can easily tell when they're running out of a particular color of ink.
 


Copyright © 2008 Hatrack River Enterprises Inc. All rights reserved.
Reproduction in whole or in part without permission is prohibited.


Powered by Infopop Corporation
UBB.classic™ 6.7.2