Packed RGB formats
&manvol;
Packed RGB formatsPacked RGB formatsDescriptionThese formats are designed to match the pixel formats of
typical PC graphics frame buffers. They occupy 8, 16, 24 or 32 bits
per pixel. These are all packed-pixel formats, meaning all the data
for a pixel lie next to each other in memory.When one of these formats is used, drivers shall report the
colorspace V4L2_COLORSPACE_SRGB.
Packed RGB Image FormatsIdentifierCodeByte 0 in memoryByte 1Byte 2Byte 3Bit76543210765432107654321076543210V4L2_PIX_FMT_RGB332'RGB1'b1b0g2g1g0r2r1r0V4L2_PIX_FMT_RGB444'R444'g3g2g1g0b3b2b1b0a3a2a1a0r3r2r1r0V4L2_PIX_FMT_RGB555'RGBO'g2g1g0r4r3r2r1r0ab4b3b2b1b0g4g3V4L2_PIX_FMT_RGB565'RGBP'g2g1g0r4r3r2r1r0b4b3b2b1b0g5g4g3V4L2_PIX_FMT_RGB555X'RGBQ'ab4b3b2b1b0g4g3g2g1g0r4r3r2r1r0V4L2_PIX_FMT_RGB565X'RGBR'b4b3b2b1b0g5g4g3g2g1g0r4r3r2r1r0V4L2_PIX_FMT_BGR24'BGR3'b7b6b5b4b3b2b1b0g7g6g5g4g3g2g1g0r7r6r5r4r3r2r1r0V4L2_PIX_FMT_RGB24'RGB3'r7r6r5r4r3r2r1r0g7g6g5g4g3g2g1g0b7b6b5b4b3b2b1b0V4L2_PIX_FMT_BGR32'BGR4'b7b6b5b4b3b2b1b0g7g6g5g4g3g2g1g0r7r6r5r4r3r2r1r0a7a6a5a4a3a2a1a0V4L2_PIX_FMT_RGB32'RGB4'r7r6r5r4r3r2r1r0g7g6g5g4g3g2g1g0b7b6b5b4b3b2b1b0a7a6a5a4a3a2a1a0
Bit 7 is the most significant bit. The value of a = alpha
bits is undefined when reading from the driver, ignored when writing
to the driver, except when alpha blending has been negotiated for a
Video Overlay or Video Output Overlay.V4L2_PIX_FMT_BGR24 4 × 4 pixel
imageByte Order.Each cell is one byte.
start + 0:B00G00R00B01G01R01B02G02R02B03G03R03start + 12:B10G10R10B11G11R11B12G12R12B13G13R13start + 24:B20G20R20B21G21R21B22G22R22B23G23R23start + 36:B30G30R30B31G31R31B32G32R32B33G33R33Drivers may interpret these formats differently.Some RGB formats above are uncommon and were probably
defined in error. Drivers may interpret them as in .
A test utility to determine which RGB formats a driver
actually supports is available from the LinuxTV v4l-dvb repository.
See &v4l-dvb; for access instructions.