
video4linux (and v4l2) video format overview
============================================

written by Gerd Knorr <kraxel@bytesex.org>

A more detailed description for most formats is available from
http://www.thedirks.org/v4l2/v4l2fmt.htm


RGB
---

V4L2_PIX_FMT_RGB332
	8 bpp, 3:3:2

VIDEO_PALETTE_RGB555
V4L2_PIX_FMT_RGB555
	15 bpp, HiColor, little endian

VIDEO_PALETTE_RGB565
V4L2_PIX_FMT_RGB565
	16 bpp, HiColor, little endian

V4L2_PIX_FMT_RGB555X
	15 bpp, HiColor, big endian

V4L2_PIX_FMT_RGB565X
	16 bpp, HiColor, big endian

VIDEO_PALETTE_RGB24
V4L2_PIX_FMT_BGR24
	24 bpp, byte order = blue / green / red

V4L2_PIX_FMT_RGB24
	24 bpp, byte order = red / green / blue

VIDEO_PALETTE_RGB32
V4L2_PIX_FMT_BGR32
	32 bpp, byte order = blue / green / red / unused

V4L2_PIX_FMT_RGB32
	32 bpp, byte order = red / green / blue / unused


YUV -- packed pixel
-------------------

VIDEO_PALETTE_YUYV
VIDEO_PALETTE_YUV422
V4L2_PIX_FMT_YUYV
	16 bpp, 4:2:2 packed pixel
	Y - Cb - Y - Cr

VIDEO_PALETTE_UYVY
V4L2_PIX_FMT_UYVY
	16 bpp, 4:2:2 packed pixel
	Cb - Y - Cr - Y

VIDEO_PALETTE_YUV411		[ ??? ]
V4L2_PIX_FMT_Y41P
	12 bpp, 4:1:1 packed pixel

V4L2_PIX_FMT_YYUV
	16 bpp, packed pixel
	Y - Y - Cb - Cr ???


YUV -- planar
-------------

VIDEO_PALETTE_YUV420		[ ??? ]
VIDEO_PALETTE_YUV420P
V4L2_PIX_FMT_YUV420
	12 bpp, 4:2:0 planar
	Y / Cb / Cr

V4L2_PIX_FMT_YVU420
	12 bpp, 4:2:0 planar
	Y / Cr / Cb

VIDEO_PALETTE_YUV410P
V4L2_PIX_FMT_YUV410
	9 bpp, 4:1:0 planar
	Y / Cb / Cr

V4L2_PIX_FMT_YVU410
	9 bpp, 4:1:0 planar
	Y / Cr / Cb

VIDEO_PALETTE_YUV422P
V4L2_PIX_FMT_YVU422P
	16 bpp, 4:2:2 planar
	Y / Cr / Cb

VIDEO_PALETTE_YUV411P		[ ??? ]
V4L2_PIX_FMT_YVU411P
	12 bpp, 4:1:1 planar
	Y / Cr / Cb


V4L2_PIX_FMT_NV12
	12 bpp, 4:2:0 planar (two: Y one, CbCr interleaved the other)
	Y / CbCr

V4L2_PIX_FMT_NV21
	12 bpp, 4:2:0 planar
	Y / CrCb


others
------

VIDEO_PALETTE_GREY
V4L2_PIX_FMT_GREY
	8bpp, grayscale

VIDEO_PALETTE_HI240
V4L2_PIX_FMT_HI240
	8bpp, dithered color cube [bt848]

