RGB Pixel Formats

This topic provides detailed information about the supported RGB pixel formats.

The following conventions are used in the diagrams: G represents the green component, B represents the blue component, R represents the red component, A represents the alpha component, l represents the low bit and h represents the high bit.

EUidPixelFormatRGB_565

16-bit little-endian format without an alpha channel. The red, green and blue color channels occupy 5, 6 and 5 bits, respectively. This format supports 65536 possible colors. One word contains 2 pixels.

Figure 1. Word diagram representing the EUidPixelFormatRGB_565 format
Figure 2. Pixel address layout in memory for the EUidPixelFormatRGB_565 format
Graphics display mode EColor64K
Color depth 16bpp
Multimedia pixel format constant No mapping
Equivalent UID value {0x1027549E}

EUidPixelFormatXRGB_4444

16-bit little-endian format without an alpha channel. The red, green and blue color channels each occupy 4 bits. The first 4 bits are unused.

Figure 3. Word diagram representing the EUidPixelFormatXRGB_4444 format
Figure 4. Pixel address layout in memory for the EUidPixelFormatXRGB_4444 format
Graphics display mode EColor4K
Color depth 12bpp
Multimedia pixel format constant KUidFormat16bitRGB444Interleaved
Equivalent UID value {0x10273764}

EUidPixelFormatXRGB_8888

32-bit little-endian format without an alpha channel. The red, green and blue color channels each occupy 8 bits with blue in the low byte and one unused byte. Although it uses only 24 bits, this format requires 32 bits (1 word) to construct.

Figure 5. Word diagram representing the EUidPixelFormatXRGB_8888 format
Figure 6. Pixel address layout in memory for the EUidPixelFormatXRGB_8888 format
Graphics display mode EColor16MU
Color depth 32bpp
Multimedia pixel format constant No mapping
Equivalent UID value {0x10275496}

EUidPixelFormatARGB_8888

32-bit little-endian format with an 8-bit alpha channel. The red, green and blue color channels each occupy 8 bits.

Figure 7. Word diagram representing the EUidPixelFormatARGB_8888 format
Figure 8. Pixel address layout in memory for the EUidPixelFormatARGB_8888 format
Graphics display mode EColor16MA
Color depth 32bpp
Multimedia pixel format constant No mapping
Equivalent UID value {0x10275498}

EUidPixelFormatARGB_8888_PRE

32-bit little-endian pre-multiplied format with an 8-bit alpha channel. The red, green and blue color channels each occupy 8 bits. The pixel color channels are pre-multiplied with the alpha information in the alpha channel. The alpha channel is left un-altered. This pixel format can improve performance when using multiple alpha blending and compositions.

Figure 9. Word diagram representing the EUidPixelFormatARGB_8888_PRE format
Figure 10. Pixel address layout in memory for the EUidPixelFormatARGB_8888_PRE format
Graphics display mode EColor16MAP
Color depth 32bpp
Multimedia pixel format constant No mapping
Equivalent UID value {0x1027549A}

EUidPixelFormatRGB_332

8-bit little-endian format without an alpha channel. The red, green and blue color channels occupy 3, 3 and 2 bits, respectively. One word contains 4 bytes.

Figure 11. Word diagram representing the EUidPixelFormatRGB_332 format
Figure 12. Pixel address layout in memory for the EUidPixelFormatRGB_332 format
Graphics display mode N/A
Color depth 8bpp
Multimedia pixel format constant No mapping
Equivalent UID value {0x102754A2}

EUidPixelFormatARGB_4444

16-bit little-endian format with a 4-bit alpha channel. The red, green and blue color channels each occupy 4 bits.

Figure 13. Word diagram representing the EUidPixelFormatARGB_4444 format
Graphics display mode N/A
Color depth 16bpp
Multimedia pixel format constant No mapping
Equivalent UID value {0x102754A1}

EUidPixelFormatARGB_1555

16-bit little-endian format with a 1-bit alpha channel. The red, green and blue color channels each occupy 5 bits. This leads to 32 different levels of each channel and 32768 possible different colors in total. One word contains 2 pixels.

Figure 14. Word diagram representing the EUidPixelFormatARGB_1555 format
Graphics display mode N/A
Color depth 16bpp
Multimedia pixel format constant No mapping
Equivalent UID value {0x1027549F}

EUidPixelFormatXBGR_8888

32-bit big-endian format without an alpha channel. The red, green and blue color channels each occupy 8 bits. This format requires 32 bits to construct and the first 8 bits are unused.

Figure 15. Word diagram representing the EUidPixelFormatXBGR_8888 format
Graphics display mode N/A
Color depth 32bpp
Multimedia pixel format constant KUidFormat32BitRGB888Interleaved
Equivalent UID value {0x10273766}

EUidPixelFormatBGRX_8888

32-bit big-endian format without an alpha channel. The blue, green and red color channels each occupy 8 bits. There is one unused byte. Although it uses only 24 bits, this format requires 1 word to construct.

Figure 16. Word diagram representing the EUidPixelFormatBGRX_8888 format
Graphics display mode N/A
Color depth 32bpp
Multimedia pixel format constant No mapping
Equivalent UID value {0x102754A8}

EUidPixelFormatBGRA_8888

32-bit big-endian format with an alpha channel. The blue, green, red and alpha channels each occupy 8 bits.

Figure 17. Word diagram representing the EUidPixelFormatBGRA_8888 format
Graphics display mode N/A
Color depth 32bpp
Multimedia pixel format constant No mapping
Equivalent UID value {0x102754A9}

EUidPixelFormatABGR_8888

32-bit big-endian format with an 8-bit alpha channel. The blue, green and red color channels each occupy 8 bits.

Figure 18. Word diagram representing the EUidPixelFormatABGR_8888 format
Graphics display mode N/A
Color depth 32bpp
Multimedia pixel format constant No mapping
Equivalent UID value {0x10275499}

EUidPixelFormatABGR_8888_PRE

32-bit big-endian format with an 8-bit alpha channel. The blue, green and red color channels each occupy 8 bits. The pixel color channels are pre-multiplied with the alpha information in the alpha channel.

Figure 19. Word diagram representing the EUidPixelFormatABGR_8888_PRE format
Graphics display mode N/A
Color depth 32bpp
Multimedia pixel format constant No mapping
Equivalent UID value {0x1027549B}

EUidPixelFormatBGRA_8888_PRE

32-bit big-endian format with an 8-bit alpha channel. The blue, green and red color channels each occupy 8 bits. The pixel color channels are pre-multiplied with the alpha information in the alpha channel.

Figure 20. Word diagram representing the EUidPixelFormatBGRA_8888_PRE format
Graphics display mode N/A
Color depth 32bpp
Multimedia pixel format constant No mapping
Equivalent UID value {0x10275497}

EUidPixelFormatABGR_2101010

32-bit big-endian format with a 2-bit alpha channel. The blue, green and red color channels each occupy 10 bits.

Figure 21. Word diagram representing the EUidPixelFormatABGR_2101010 format
Graphics display mode N/A
Color depth 32bpp
Multimedia pixel format constant No mapping
Equivalent UID value {0x1027549C}

EUidPixelFormatARGB_2101010

32-bit little-endian format with a 2-bit alpha channel. The red, green and blue color channels each occupy 10 bits.

Figure 22. Word diagram representing the EUidPixelFormatARGB_2101010 format
Graphics display mode N/A
Color depth 32bpp
Multimedia pixel format constant No mapping
Equivalent UID value {0x1027549D}

EUidPixelFormatBGR_888

24-bit big-endian format without an alpha channel. The blue, green and red color channels each occupy 8 bits. 12 bytes contain 4 pixels as shown in the following diagram.

Figure 23. Word diagram representing the EUidPixelFormatBGR_888 format
Graphics display mode N/A
Color depth 24bpp
Multimedia pixel format constant No mapping
Equivalent UID value {0x102754A7}

EUidPixelFormatRGB_888

24-bit little-endian format without an alpha channel. The red, green and blue color channels each occupy 8 bits. 12 bytes contain 4 pixels as shown in the following diagram.

Figure 24. Word diagram representing the EUidPixelFormatRGB_888 format
Graphics display mode EColor16M
Color depth 24bpp
Multimedia pixel format constant No mapping
Equivalent UID value {0x10275495}

EUidPixelFormatXRGB_1555

16-bit little-endian format without an alpha channel. The red, green and blue color channels each occupy 5 bits.

Figure 25. Word diagram representing the EUidPixelFormatXRGB_1555 format
Graphics display mode N/A
Color depth 16bpp
Multimedia pixel format constant No mapping
Equivalent UID value {0x102754A0}

EUidPixelFormatBGRA_5551

16-bit big-endian format with a 1-bit alpha channel. The red, green and blue color channels each occupy 5 bits.

Figure 26. Word diagram representing the EUidPixelFormatBGRA_5551 format
Graphics display mode N/A
Color depth 16bpp
Multimedia pixel format constant No mapping
Equivalent UID value {0x102754AA}

EUidPixelFormatBGRX_5551

16-bit big-endian format without an alpha channel. The red, green and blue color channels each occupy 5 bits.

Figure 27. Word diagram representing the EUidPixelFormatBGRX_5551 format
Graphics display mode N/A
Color depth 16bpp
Multimedia pixel format constant No mapping
Equivalent UID value {0x102754A5}

EUidPixelFormatBGRA_4444

16-bit big-endian format with a 4-bit alpha channel. The red, green and blue color channels each occupy 4 bits.

Figure 28. Word diagram representing the EUidPixelFormatBGRA_4444 format
Graphics display mode N/A
Color depth 16bpp
Multimedia pixel format constant No mapping
Equivalent UID value {0x102754AC}

EUidPixelFormatBGRX_4444

16-bit big-endian format without an alpha channel. The red, green and blue color channels each occupy 4 bits.

Figure 29. Word diagram representing the EUidPixelFormatBGRX_4444 format
Graphics display mode N/A
Color depth 16bpp
Multimedia pixel format constant No mapping
Equivalent UID value {0x102754A6}

EUidPixelFormatXBGR_4444

16-bit big-endian format without an alpha channel. The red, green and blue color channels each occupy 4 bits.

Figure 30. Word diagram representing the EUidPixelFormatXBGR_4444 format
Graphics display mode N/A
Color depth 16bpp
Multimedia pixel format constant No mapping
Equivalent UID value {0x102754B0}

EUidPixelFormatBGR_565

16-bit big-endian format. The blue, green and red color channels occupy 5, 6 and 5 bits, respectively. This format supports 65536 possible colors. One word contains 2 pixels.

Figure 31. Word diagram representing the EUidPixelFormatBGR_565 format
Graphics display mode N/A
Color depth 16bpp
Multimedia pixel format constant KUidFormat16BitRGB565Interleaved
Equivalent UID value {0x10273765}

EUidPixelFormatARGB_8332

16-bit little-endian format with an 8-bit alpha channel. The red, green and blue color channels occupy 3, 3 and 2 bits, respectively.

Figure 32. Word diagram representing the EUidPixelFormatARGB_8332 format
Graphics display mode N/A
Color depth 16bpp
Multimedia pixel format constant No mapping
Equivalent UID value {0x102754A4}

EUidPixelFormatBGR_332

8-bit big-endian format. The blue, green and red color channels occupy 3, 3 and 2 bits, respectively. One word contains 4 bytes.

Figure 33. Word diagram representing the EUidPixelFormatBGR_332 format
Graphics display mode N/A
Color depth 8bpp
Multimedia pixel format constant No mapping
Equivalent UID value {0x102754B1}

EUidPixelFormatAP_88

16-bit big-endian format with 8 bits of alpha.

Figure 34. Word diagram representing the EUidPixelFormatAP_88 format
Graphics display mode N/A
Color depth 16bpp
Multimedia pixel format constant No mapping
Equivalent UID value {0x102754AB}

EUidPixelFormatP_8

8-bit indexed, which means that it has a palette.

Figure 35. Word diagram representing the EUidPixelFormatP_8 format

A little-endian architecture is implicit in the code, because conversions are made between pointers and byte and pointers to (unsigned) integer. (This implies that the lower-order byte of an unsigned integer has the physically lower address, because this is treated as the lower-addressed pixel).

Figure 36. Pixel address layout in memory for the EUidPixelFormatP_8 format
Graphics display mode N/A
Color depth 8bpp
Multimedia pixel format constant KUidFormatYUVMonochrome
Equivalent UID value {0x10273763}

EUidPixelFormatP_4

4-bit indexed, which means that it has a palette.

Figure 37. Word diagram representing the EUidPixelFormatP_4 format

It is implicit in the code that pixel addresses within a byte increase from low bit to high bit. A little-endian architecture is also implicit, because conversions are made between pointers to byte and pointers to (unsigned) integer and because of the implication that pixel addresses within a 32-bit word also increase from low to high-order bit.

Figure 38. Pixel address layout in memory for the EUidPixelFormatP_4 format
Graphics display mode N/A
Color depth 4bpp
Multimedia pixel format constant No mapping
Equivalent UID value {0x102754AD}

EUidPixelFormatP_2

2-bit indexed, which means that it has a palette.

Figure 39. Word diagram representing the EUidPixelFormatP_2 format

It is implicit in the code that pixel addresses within a byte increase from low bit to high bit. A little-endian architecture is also implicit, because conversions are made between pointers to byte and pointers to (unsigned) integer and because of the implication that pixel addresses within a 32-bit word also increase from low to high-order bit.

Figure 40. Pixel address layout in memory for the EUidPixelFormatP_2 format
Graphics display mode N/A
Color depth 2bpp
Multimedia pixel format constant No mapping
Equivalent UID value {0x102754AE}

EUidPixelFormatP_1

1-bit indexed, which means that it has a palette.

Figure 41. Word diagram representing the EUidPixelFormatP_1 format

It is implicit in the code that pixel addresses within a byte increase from low bit to high bit. A little-endian architecture is also implicit, because conversions are made between pointers to byte and pointers to (unsigned) integer and because of the implication that pixel addresses within a 32-bit word also increase from low to high-order bit.

Figure 42. Pixel address layout in memory for the EUidPixelFormatP_1 format
Graphics display mode N/A
Color depth 1bpp
Multimedia pixel format constant No mapping
Equivalent UID value {0x102754AF}

EUidPixelFormatA_8

8-bit alpha format. This contains an alpha value only.

Graphics display mode N/A
Color depth 8bpp
Multimedia pixel format constant No mapping
Equivalent UID value {0x102754A3}