Markus Heiser | 5377d91 | 2016-06-30 15:18:56 +0200 | [diff] [blame] | 1 | .. -*- coding: utf-8; mode: rst -*- |
2 | |||||
3 | .. _V4L2-PIX-FMT-Y41P: | ||||
4 | |||||
5 | ************************** | ||||
6 | V4L2_PIX_FMT_Y41P ('Y41P') | ||||
7 | ************************** | ||||
8 | |||||
9 | *man V4L2_PIX_FMT_Y41P(2)* | ||||
10 | |||||
11 | Format with ΒΌ horizontal chroma resolution, also known as YUV 4:1:1 | ||||
12 | |||||
13 | |||||
14 | Description | ||||
15 | =========== | ||||
16 | |||||
17 | In this format each 12 bytes is eight pixels. In the twelve bytes are | ||||
18 | two CbCr pairs and eight Y's. The first CbCr pair goes with the first | ||||
19 | four Y's, and the second CbCr pair goes with the other four Y's. The Cb | ||||
20 | and Cr components have one fourth the horizontal resolution of the Y | ||||
21 | component. | ||||
22 | |||||
23 | Do not confuse this format with | ||||
24 | :ref:`V4L2_PIX_FMT_YUV411P <V4L2-PIX-FMT-YUV411P>`. Y41P is derived | ||||
25 | from "YUV 4:1:1 *packed*", while YUV411P stands for "YUV 4:1:1 | ||||
26 | *planar*". | ||||
27 | |||||
28 | **Byte Order.** | ||||
Markus Heiser | 5377d91 | 2016-06-30 15:18:56 +0200 | [diff] [blame] | 29 | Each cell is one byte. |
30 | |||||
31 | |||||
32 | |||||
Mauro Carvalho Chehab | 5bd4bb7 | 2016-08-17 08:14:19 -0300 | [diff] [blame^] | 33 | .. tabularcolumns:: |p{2.5cm}|p{1.3cm}|p{1.3cm}|p{1.3cm}|p{1.3cm}|p{1.3cm}|p{1.3cm}|p{1.3cm}|p{1.3cm}|p{1.3cm}|p{1.3cm}|p{1.3cm}|p{0.7cm}| |
34 | |||||
Markus Heiser | 5377d91 | 2016-06-30 15:18:56 +0200 | [diff] [blame] | 35 | .. flat-table:: |
36 | :header-rows: 0 | ||||
37 | :stub-columns: 0 | ||||
38 | :widths: 2 1 1 1 1 1 1 1 1 1 1 1 1 | ||||
39 | |||||
40 | |||||
41 | - .. row 1 | ||||
42 | |||||
43 | - start + 0: | ||||
44 | |||||
45 | - Cb\ :sub:`00` | ||||
46 | |||||
47 | - Y'\ :sub:`00` | ||||
48 | |||||
49 | - Cr\ :sub:`00` | ||||
50 | |||||
51 | - Y'\ :sub:`01` | ||||
52 | |||||
53 | - Cb\ :sub:`01` | ||||
54 | |||||
55 | - Y'\ :sub:`02` | ||||
56 | |||||
57 | - Cr\ :sub:`01` | ||||
58 | |||||
59 | - Y'\ :sub:`03` | ||||
60 | |||||
61 | - Y'\ :sub:`04` | ||||
62 | |||||
63 | - Y'\ :sub:`05` | ||||
64 | |||||
65 | - Y'\ :sub:`06` | ||||
66 | |||||
67 | - Y'\ :sub:`07` | ||||
68 | |||||
69 | - .. row 2 | ||||
70 | |||||
71 | - start + 12: | ||||
72 | |||||
73 | - Cb\ :sub:`10` | ||||
74 | |||||
75 | - Y'\ :sub:`10` | ||||
76 | |||||
77 | - Cr\ :sub:`10` | ||||
78 | |||||
79 | - Y'\ :sub:`11` | ||||
80 | |||||
81 | - Cb\ :sub:`11` | ||||
82 | |||||
83 | - Y'\ :sub:`12` | ||||
84 | |||||
85 | - Cr\ :sub:`11` | ||||
86 | |||||
87 | - Y'\ :sub:`13` | ||||
88 | |||||
89 | - Y'\ :sub:`14` | ||||
90 | |||||
91 | - Y'\ :sub:`15` | ||||
92 | |||||
93 | - Y'\ :sub:`16` | ||||
94 | |||||
95 | - Y'\ :sub:`17` | ||||
96 | |||||
97 | - .. row 3 | ||||
98 | |||||
99 | - start + 24: | ||||
100 | |||||
101 | - Cb\ :sub:`20` | ||||
102 | |||||
103 | - Y'\ :sub:`20` | ||||
104 | |||||
105 | - Cr\ :sub:`20` | ||||
106 | |||||
107 | - Y'\ :sub:`21` | ||||
108 | |||||
109 | - Cb\ :sub:`21` | ||||
110 | |||||
111 | - Y'\ :sub:`22` | ||||
112 | |||||
113 | - Cr\ :sub:`21` | ||||
114 | |||||
115 | - Y'\ :sub:`23` | ||||
116 | |||||
117 | - Y'\ :sub:`24` | ||||
118 | |||||
119 | - Y'\ :sub:`25` | ||||
120 | |||||
121 | - Y'\ :sub:`26` | ||||
122 | |||||
123 | - Y'\ :sub:`27` | ||||
124 | |||||
125 | - .. row 4 | ||||
126 | |||||
127 | - start + 36: | ||||
128 | |||||
129 | - Cb\ :sub:`30` | ||||
130 | |||||
131 | - Y'\ :sub:`30` | ||||
132 | |||||
133 | - Cr\ :sub:`30` | ||||
134 | |||||
135 | - Y'\ :sub:`31` | ||||
136 | |||||
137 | - Cb\ :sub:`31` | ||||
138 | |||||
139 | - Y'\ :sub:`32` | ||||
140 | |||||
141 | - Cr\ :sub:`31` | ||||
142 | |||||
143 | - Y'\ :sub:`33` | ||||
144 | |||||
145 | - Y'\ :sub:`34` | ||||
146 | |||||
147 | - Y'\ :sub:`35` | ||||
148 | |||||
149 | - Y'\ :sub:`36` | ||||
150 | |||||
151 | - Y'\ :sub:`37` | ||||
152 | |||||
153 | |||||
154 | **Color Sample Location..** | ||||
155 | |||||
Markus Heiser | 5377d91 | 2016-06-30 15:18:56 +0200 | [diff] [blame] | 156 | .. flat-table:: |
157 | :header-rows: 0 | ||||
158 | :stub-columns: 0 | ||||
159 | |||||
160 | |||||
161 | - .. row 1 | ||||
162 | |||||
Mauro Carvalho Chehab | 0579e6e | 2016-07-04 16:25:48 -0300 | [diff] [blame] | 163 | - |
Markus Heiser | 5377d91 | 2016-06-30 15:18:56 +0200 | [diff] [blame] | 164 | - 0 |
165 | |||||
Markus Heiser | 5377d91 | 2016-06-30 15:18:56 +0200 | [diff] [blame] | 166 | - 1 |
167 | |||||
Mauro Carvalho Chehab | 0579e6e | 2016-07-04 16:25:48 -0300 | [diff] [blame] | 168 | - |
Markus Heiser | 5377d91 | 2016-06-30 15:18:56 +0200 | [diff] [blame] | 169 | - 2 |
170 | |||||
Markus Heiser | 5377d91 | 2016-06-30 15:18:56 +0200 | [diff] [blame] | 171 | - 3 |
172 | |||||
Markus Heiser | 5377d91 | 2016-06-30 15:18:56 +0200 | [diff] [blame] | 173 | - 4 |
174 | |||||
Markus Heiser | 5377d91 | 2016-06-30 15:18:56 +0200 | [diff] [blame] | 175 | - 5 |
176 | |||||
Mauro Carvalho Chehab | 0579e6e | 2016-07-04 16:25:48 -0300 | [diff] [blame] | 177 | - |
Markus Heiser | 5377d91 | 2016-06-30 15:18:56 +0200 | [diff] [blame] | 178 | - 6 |
179 | |||||
Markus Heiser | 5377d91 | 2016-06-30 15:18:56 +0200 | [diff] [blame] | 180 | - 7 |
181 | |||||
182 | - .. row 2 | ||||
183 | |||||
184 | - 0 | ||||
185 | |||||
186 | - Y | ||||
187 | |||||
Markus Heiser | 5377d91 | 2016-06-30 15:18:56 +0200 | [diff] [blame] | 188 | - Y |
189 | |||||
190 | - C | ||||
191 | |||||
192 | - Y | ||||
193 | |||||
Markus Heiser | 5377d91 | 2016-06-30 15:18:56 +0200 | [diff] [blame] | 194 | - Y |
195 | |||||
Markus Heiser | 5377d91 | 2016-06-30 15:18:56 +0200 | [diff] [blame] | 196 | - Y |
197 | |||||
Markus Heiser | 5377d91 | 2016-06-30 15:18:56 +0200 | [diff] [blame] | 198 | - Y |
199 | |||||
200 | - C | ||||
201 | |||||
202 | - Y | ||||
203 | |||||
Markus Heiser | 5377d91 | 2016-06-30 15:18:56 +0200 | [diff] [blame] | 204 | - Y |
205 | |||||
206 | - .. row 3 | ||||
207 | |||||
208 | - 1 | ||||
209 | |||||
210 | - Y | ||||
211 | |||||
Markus Heiser | 5377d91 | 2016-06-30 15:18:56 +0200 | [diff] [blame] | 212 | - Y |
213 | |||||
214 | - C | ||||
215 | |||||
216 | - Y | ||||
217 | |||||
Markus Heiser | 5377d91 | 2016-06-30 15:18:56 +0200 | [diff] [blame] | 218 | - Y |
219 | |||||
Markus Heiser | 5377d91 | 2016-06-30 15:18:56 +0200 | [diff] [blame] | 220 | - Y |
221 | |||||
Markus Heiser | 5377d91 | 2016-06-30 15:18:56 +0200 | [diff] [blame] | 222 | - Y |
223 | |||||
224 | - C | ||||
225 | |||||
226 | - Y | ||||
227 | |||||
Markus Heiser | 5377d91 | 2016-06-30 15:18:56 +0200 | [diff] [blame] | 228 | - Y |
229 | |||||
230 | - .. row 4 | ||||
231 | |||||
232 | - 2 | ||||
233 | |||||
234 | - Y | ||||
235 | |||||
Markus Heiser | 5377d91 | 2016-06-30 15:18:56 +0200 | [diff] [blame] | 236 | - Y |
237 | |||||
238 | - C | ||||
239 | |||||
240 | - Y | ||||
241 | |||||
Markus Heiser | 5377d91 | 2016-06-30 15:18:56 +0200 | [diff] [blame] | 242 | - Y |
243 | |||||
Markus Heiser | 5377d91 | 2016-06-30 15:18:56 +0200 | [diff] [blame] | 244 | - Y |
245 | |||||
Markus Heiser | 5377d91 | 2016-06-30 15:18:56 +0200 | [diff] [blame] | 246 | - Y |
247 | |||||
248 | - C | ||||
249 | |||||
250 | - Y | ||||
251 | |||||
Markus Heiser | 5377d91 | 2016-06-30 15:18:56 +0200 | [diff] [blame] | 252 | - Y |
253 | |||||
254 | - .. row 5 | ||||
255 | |||||
256 | - 3 | ||||
257 | |||||
258 | - Y | ||||
259 | |||||
Markus Heiser | 5377d91 | 2016-06-30 15:18:56 +0200 | [diff] [blame] | 260 | - Y |
261 | |||||
262 | - C | ||||
263 | |||||
264 | - Y | ||||
265 | |||||
Markus Heiser | 5377d91 | 2016-06-30 15:18:56 +0200 | [diff] [blame] | 266 | - Y |
267 | |||||
Markus Heiser | 5377d91 | 2016-06-30 15:18:56 +0200 | [diff] [blame] | 268 | - Y |
269 | |||||
Markus Heiser | 5377d91 | 2016-06-30 15:18:56 +0200 | [diff] [blame] | 270 | - Y |
271 | |||||
272 | - C | ||||
273 | |||||
274 | - Y | ||||
275 | |||||
Markus Heiser | 5377d91 | 2016-06-30 15:18:56 +0200 | [diff] [blame] | 276 | - Y |