blob: ebc27b772a384fd47ce42ac2de5abf64f8d32426 [file] [log] [blame]
Markus Heiser5377d912016-06-30 15:18:56 +02001.. -*- coding: utf-8; mode: rst -*-
2
3.. _V4L2-PIX-FMT-NV24:
Mauro Carvalho Chehab9aff73d2016-07-07 16:16:21 -03004.. _V4L2-PIX-FMT-NV42:
Markus Heiser5377d912016-06-30 15:18:56 +02005
6******************************************************
7V4L2_PIX_FMT_NV24 ('NV24'), V4L2_PIX_FMT_NV42 ('NV42')
8******************************************************
9
10*man V4L2_PIX_FMT_NV24(2)*
11
12V4L2_PIX_FMT_NV42
13Formats with full horizontal and vertical chroma resolutions, also known
14as YUV 4:4:4. One luminance and one chrominance plane with alternating
15chroma samples as opposed to ``V4L2_PIX_FMT_YVU420``
16
17
18Description
19===========
20
21These are two-plane versions of the YUV 4:4:4 format. The three
22components are separated into two sub-images or planes. The Y plane is
23first, with each Y sample stored in one byte per pixel. For
24``V4L2_PIX_FMT_NV24``, a combined CbCr plane immediately follows the Y
25plane in memory. The CbCr plane has the same width and height, in
26pixels, as the Y plane (and the image). Each line contains one CbCr pair
27per pixel, with each Cb and Cr sample stored in one byte.
28``V4L2_PIX_FMT_NV42`` is the same except that the Cb and Cr samples are
29swapped, the CrCb plane starts with a Cr sample.
30
31If the Y plane has pad bytes after each row, then the CbCr plane has
32twice as many pad bytes after its rows.
33
Mauro Carvalho Chehab056d2ee2016-07-04 13:58:01 -030034**Byte Order.**
Markus Heiser5377d912016-06-30 15:18:56 +020035Each cell is one byte.
36
37
38
Mauro Carvalho Chehab5bd4bb72016-08-17 08:14:19 -030039.. tabularcolumns:: |p{3.5cm}|p{1.8cm}|p{1.8cm}|p{1.8cm}|p{1.8cm}|p{1.8cm}|p{1.8cm}|p{1.8cm}|p{1.4cm}|
40
Markus Heiser5377d912016-06-30 15:18:56 +020041.. flat-table::
42 :header-rows: 0
43 :stub-columns: 0
44 :widths: 2 1 1 1 1 1 1 1 1
45
46
47 - .. row 1
48
49 - start + 0:
50
51 - Y'\ :sub:`00`
52
53 - Y'\ :sub:`01`
54
55 - Y'\ :sub:`02`
56
57 - Y'\ :sub:`03`
58
59 - .. row 2
60
61 - start + 4:
62
63 - Y'\ :sub:`10`
64
65 - Y'\ :sub:`11`
66
67 - Y'\ :sub:`12`
68
69 - Y'\ :sub:`13`
70
71 - .. row 3
72
73 - start + 8:
74
75 - Y'\ :sub:`20`
76
77 - Y'\ :sub:`21`
78
79 - Y'\ :sub:`22`
80
81 - Y'\ :sub:`23`
82
83 - .. row 4
84
85 - start + 12:
86
87 - Y'\ :sub:`30`
88
89 - Y'\ :sub:`31`
90
91 - Y'\ :sub:`32`
92
93 - Y'\ :sub:`33`
94
95 - .. row 5
96
97 - start + 16:
98
99 - Cb\ :sub:`00`
100
101 - Cr\ :sub:`00`
102
103 - Cb\ :sub:`01`
104
105 - Cr\ :sub:`01`
106
107 - Cb\ :sub:`02`
108
109 - Cr\ :sub:`02`
110
111 - Cb\ :sub:`03`
112
113 - Cr\ :sub:`03`
114
115 - .. row 6
116
117 - start + 24:
118
119 - Cb\ :sub:`10`
120
121 - Cr\ :sub:`10`
122
123 - Cb\ :sub:`11`
124
125 - Cr\ :sub:`11`
126
127 - Cb\ :sub:`12`
128
129 - Cr\ :sub:`12`
130
131 - Cb\ :sub:`13`
132
133 - Cr\ :sub:`13`
134
135 - .. row 7
136
137 - start + 32:
138
139 - Cb\ :sub:`20`
140
141 - Cr\ :sub:`20`
142
143 - Cb\ :sub:`21`
144
145 - Cr\ :sub:`21`
146
147 - Cb\ :sub:`22`
148
149 - Cr\ :sub:`22`
150
151 - Cb\ :sub:`23`
152
153 - Cr\ :sub:`23`
154
155 - .. row 8
156
157 - start + 40:
158
159 - Cb\ :sub:`30`
160
161 - Cr\ :sub:`30`
162
163 - Cb\ :sub:`31`
164
165 - Cr\ :sub:`31`
166
167 - Cb\ :sub:`32`
168
169 - Cr\ :sub:`32`
170
171 - Cb\ :sub:`33`
172
173 - Cr\ :sub:`33`