Merge tag 'for-linus-5.0-rc3-tag' of git://git.kernel.org/pub/scm/linux/kernel/git...
[sfrench/cifs-2.6.git] / Documentation / media / uapi / v4l / pixfmt-yuv411p.rst
1 .. Permission is granted to copy, distribute and/or modify this
2 .. document under the terms of the GNU Free Documentation License,
3 .. Version 1.1 or any later version published by the Free Software
4 .. Foundation, with no Invariant Sections, no Front-Cover Texts
5 .. and no Back-Cover Texts. A copy of the license is included at
6 .. Documentation/media/uapi/fdl-appendix.rst.
7 ..
8 .. TODO: replace it to GFDL-1.1-or-later WITH no-invariant-sections
9
10 .. _V4L2-PIX-FMT-YUV411P:
11
12 *****************************
13 V4L2_PIX_FMT_YUV411P ('411P')
14 *****************************
15
16
17 Format with ¼ horizontal chroma resolution, also known as YUV 4:1:1.
18 Planar layout as opposed to ``V4L2_PIX_FMT_Y41P``
19
20
21 Description
22 ===========
23
24 This format is not commonly used. This is a planar format similar to the
25 4:2:2 planar format except with half as many chroma. The three
26 components are separated into three sub-images or planes. The Y plane is
27 first. The Y plane has one byte per pixel. The Cb plane immediately
28 follows the Y plane in memory. The Cb plane is ¼ the width of the Y
29 plane (and of the image). Each Cb belongs to 4 pixels all on the same
30 row. For example, Cb\ :sub:`0` belongs to Y'\ :sub:`00`, Y'\ :sub:`01`,
31 Y'\ :sub:`02` and Y'\ :sub:`03`. Following the Cb plane is the Cr plane,
32 just like the Cb plane.
33
34 If the Y plane has pad bytes after each row, then the Cr and Cb planes
35 have ¼ as many pad bytes after their rows. In other words, four C x rows
36 (including padding) is exactly as long as one Y row (including padding).
37
38 **Byte Order.**
39 Each cell is one byte.
40
41
42
43 .. flat-table::
44     :header-rows:  0
45     :stub-columns: 0
46
47     * - start + 0:
48       - Y'\ :sub:`00`
49       - Y'\ :sub:`01`
50       - Y'\ :sub:`02`
51       - Y'\ :sub:`03`
52     * - start + 4:
53       - Y'\ :sub:`10`
54       - Y'\ :sub:`11`
55       - Y'\ :sub:`12`
56       - Y'\ :sub:`13`
57     * - start + 8:
58       - Y'\ :sub:`20`
59       - Y'\ :sub:`21`
60       - Y'\ :sub:`22`
61       - Y'\ :sub:`23`
62     * - start + 12:
63       - Y'\ :sub:`30`
64       - Y'\ :sub:`31`
65       - Y'\ :sub:`32`
66       - Y'\ :sub:`33`
67     * - start + 16:
68       - Cb\ :sub:`00`
69     * - start + 17:
70       - Cb\ :sub:`10`
71     * - start + 18:
72       - Cb\ :sub:`20`
73     * - start + 19:
74       - Cb\ :sub:`30`
75     * - start + 20:
76       - Cr\ :sub:`00`
77     * - start + 21:
78       - Cr\ :sub:`10`
79     * - start + 22:
80       - Cr\ :sub:`20`
81     * - start + 23:
82       - Cr\ :sub:`30`
83
84
85 **Color Sample Location:**
86
87
88
89 .. flat-table::
90     :header-rows:  0
91     :stub-columns: 0
92
93     * -
94       - 0
95       - 1
96       -
97       - 2
98       - 3
99     * - 0
100       - Y
101       - Y
102       - C
103       - Y
104       - Y
105     * - 1
106       - Y
107       - Y
108       - C
109       - Y
110       - Y
111     * - 2
112       - Y
113       - Y
114       - C
115       - Y
116       - Y
117     * - 3
118       - Y
119       - Y
120       - C
121       - Y
122       - Y