V4L2_PIX_FMT_NV12 ('NV12'), V4L2_PIX_FMT_NV21 ('NV21')
&manvol;
V4L2_PIX_FMT_NV12
V4L2_PIX_FMT_NV21
Formats with ½ horizontal and vertical
chroma resolution, also known as YUV 4:2:0. One luminance and one
chrominance plane with alternating chroma samples as opposed to
V4L2_PIX_FMT_YVU420
Description
These are two-plane versions of the YUV 4:2:0 format.
The three components are separated into two sub-images or planes. The
Y plane is first. The Y plane has one byte per pixel. For
V4L2_PIX_FMT_NV12, a combined CbCr plane
immediately follows the Y plane in memory. The CbCr plane is the same
width, in bytes, as the Y plane (and of the image), but is half as
tall in pixels. Each CbCr pair belongs to four pixels. For example,
Cb0/Cr0 belongs to
Y'00, Y'01,
Y'10, Y'11.
V4L2_PIX_FMT_NV21 is the same except the Cb and
Cr bytes are swapped, the CrCb plane starts with a Cr byte.
If the Y plane has pad bytes after each row, then the
CbCr plane has as many pad bytes after its rows.
V4L2_PIX_FMT_NV12 4 × 4
pixel image
Byte Order.
Each cell is one byte.
start + 0:
Y'00
Y'01
Y'02
Y'03
start + 4:
Y'10
Y'11
Y'12
Y'13
start + 8:
Y'20
Y'21
Y'22
Y'23
start + 12:
Y'30
Y'31
Y'32
Y'33
start + 16:
Cb00
Cr00
Cb01
Cr01
start + 20:
Cb10
Cr10
Cb11
Cr11
Color Sample Location.
01
23
0
YY
YY
C
C
1
YY
YY
2
YY
YY
C
C
3
YY
YY