ext4: avoid deadlock when expanding inode size
[sfrench/cifs-2.6.git] / Documentation / DocBook / media / v4l / pixfmt-yuv444m.xml
1     <refentry>
2       <refmeta>
3         <refentrytitle>V4L2_PIX_FMT_YUV444M ('YM24'), V4L2_PIX_FMT_YVU444M ('YM42')</refentrytitle>
4         &manvol;
5       </refmeta>
6       <refnamediv>
7         <refname id="V4L2-PIX-FMT-YUV444M"><constant>V4L2_PIX_FMT_YUV444M</constant></refname>
8         <refname id="V4L2-PIX-FMT-YVU444M"><constant>V4L2_PIX_FMT_YVU444M</constant></refname>
9         <refpurpose>Planar formats with full horizontal resolution, also
10         known as YUV and YVU 4:4:4</refpurpose>
11       </refnamediv>
12
13       <refsect1>
14         <title>Description</title>
15
16         <para>This is a multi-planar format, as opposed to a packed format.
17 The three components are separated into three sub-images or planes.</para>
18
19         <para>The Y plane is first. The Y plane has one byte per pixel.
20 For <constant>V4L2_PIX_FMT_YUV444M</constant> the Cb data
21 constitutes the second plane which is the same width and height as the Y plane
22 (and as the image). The Cr data, just like the Cb plane, is in the third plane.
23 </para>
24
25         <para><constant>V4L2_PIX_FMT_YVU444M</constant> is the same except
26 the Cr data is stored in the second plane and the Cb data in the third plane.
27 </para>
28         <para>If the Y plane has pad bytes after each row, then the Cb
29 and Cr planes have the same number of pad bytes after their rows.</para>
30
31         <para><constant>V4L2_PIX_FMT_YUV444M</constant> and
32 <constant>V4L2_PIX_FMT_YUV444M</constant> are intended to be
33 used only in drivers and applications that support the multi-planar API,
34 described in <xref linkend="planar-apis"/>. </para>
35
36         <example>
37           <title><constant>V4L2_PIX_FMT_YUV444M</constant> 4 &times; 4
38 pixel image</title>
39
40           <formalpara>
41             <title>Byte Order.</title>
42             <para>Each cell is one byte.
43                 <informaltable frame="none">
44                 <tgroup cols="5" align="center">
45                   <colspec align="left" colwidth="2*" />
46                   <tbody valign="top">
47                     <row>
48                       <entry>start0&nbsp;+&nbsp;0:</entry>
49                       <entry>Y'<subscript>00</subscript></entry>
50                       <entry>Y'<subscript>01</subscript></entry>
51                       <entry>Y'<subscript>02</subscript></entry>
52                       <entry>Y'<subscript>03</subscript></entry>
53                     </row>
54                     <row>
55                       <entry>start0&nbsp;+&nbsp;4:</entry>
56                       <entry>Y'<subscript>10</subscript></entry>
57                       <entry>Y'<subscript>11</subscript></entry>
58                       <entry>Y'<subscript>12</subscript></entry>
59                       <entry>Y'<subscript>13</subscript></entry>
60                     </row>
61                     <row>
62                       <entry>start0&nbsp;+&nbsp;8:</entry>
63                       <entry>Y'<subscript>20</subscript></entry>
64                       <entry>Y'<subscript>21</subscript></entry>
65                       <entry>Y'<subscript>22</subscript></entry>
66                       <entry>Y'<subscript>23</subscript></entry>
67                     </row>
68                     <row>
69                       <entry>start0&nbsp;+&nbsp;12:</entry>
70                       <entry>Y'<subscript>30</subscript></entry>
71                       <entry>Y'<subscript>31</subscript></entry>
72                       <entry>Y'<subscript>32</subscript></entry>
73                       <entry>Y'<subscript>33</subscript></entry>
74                     </row>
75                     <row><entry></entry></row>
76                     <row>
77                       <entry>start1&nbsp;+&nbsp;0:</entry>
78                       <entry>Cb<subscript>00</subscript></entry>
79                       <entry>Cb<subscript>01</subscript></entry>
80                       <entry>Cb<subscript>02</subscript></entry>
81                       <entry>Cb<subscript>03</subscript></entry>
82                     </row>
83                     <row>
84                       <entry>start1&nbsp;+&nbsp;4:</entry>
85                       <entry>Cb<subscript>10</subscript></entry>
86                       <entry>Cb<subscript>11</subscript></entry>
87                       <entry>Cb<subscript>12</subscript></entry>
88                       <entry>Cb<subscript>13</subscript></entry>
89                     </row>
90                     <row>
91                       <entry>start1&nbsp;+&nbsp;8:</entry>
92                       <entry>Cb<subscript>20</subscript></entry>
93                       <entry>Cb<subscript>21</subscript></entry>
94                       <entry>Cb<subscript>22</subscript></entry>
95                       <entry>Cb<subscript>23</subscript></entry>
96                     </row>
97                     <row>
98                       <entry>start1&nbsp;+&nbsp;12:</entry>
99                       <entry>Cb<subscript>20</subscript></entry>
100                       <entry>Cb<subscript>21</subscript></entry>
101                       <entry>Cb<subscript>32</subscript></entry>
102                       <entry>Cb<subscript>33</subscript></entry>
103                     </row>
104                     <row><entry></entry></row>
105                     <row>
106                       <entry>start2&nbsp;+&nbsp;0:</entry>
107                       <entry>Cr<subscript>00</subscript></entry>
108                       <entry>Cr<subscript>01</subscript></entry>
109                       <entry>Cr<subscript>02</subscript></entry>
110                       <entry>Cr<subscript>03</subscript></entry>
111                     </row>
112                     <row>
113                       <entry>start2&nbsp;+&nbsp;4:</entry>
114                       <entry>Cr<subscript>10</subscript></entry>
115                       <entry>Cr<subscript>11</subscript></entry>
116                       <entry>Cr<subscript>12</subscript></entry>
117                       <entry>Cr<subscript>13</subscript></entry>
118                     </row>
119                     <row>
120                       <entry>start2&nbsp;+&nbsp;8:</entry>
121                       <entry>Cr<subscript>20</subscript></entry>
122                       <entry>Cr<subscript>21</subscript></entry>
123                       <entry>Cr<subscript>22</subscript></entry>
124                       <entry>Cr<subscript>23</subscript></entry>
125                     </row>
126                     <row>
127                       <entry>start2&nbsp;+&nbsp;12:</entry>
128                       <entry>Cr<subscript>30</subscript></entry>
129                       <entry>Cr<subscript>31</subscript></entry>
130                       <entry>Cr<subscript>32</subscript></entry>
131                       <entry>Cr<subscript>33</subscript></entry>
132                     </row>
133                   </tbody>
134                 </tgroup>
135                 </informaltable>
136               </para>
137           </formalpara>
138
139           <formalpara>
140             <title>Color Sample Location.</title>
141             <para>
142                 <informaltable frame="none">
143                 <tgroup cols="7" align="center">
144                   <tbody valign="top">
145                     <row>
146                       <entry></entry>
147                       <entry>0</entry><entry></entry><entry>1</entry><entry></entry>
148                       <entry>2</entry><entry></entry><entry>3</entry>
149                     </row>
150                     <row>
151                       <entry>0</entry>
152                       <entry>YC</entry><entry></entry><entry>YC</entry><entry></entry>
153                       <entry>YC</entry><entry></entry><entry>YC</entry>
154                     </row>
155                     <row>
156                       <entry>1</entry>
157                       <entry>YC</entry><entry></entry><entry>YC</entry><entry></entry>
158                       <entry>YC</entry><entry></entry><entry>YC</entry>
159                     </row>
160                     <row>
161                       <entry>2</entry>
162                       <entry>YC</entry><entry></entry><entry>YC</entry><entry></entry>
163                       <entry>YC</entry><entry></entry><entry>YC</entry>
164                     </row>
165                     <row>
166                       <entry>3</entry>
167                       <entry>YC</entry><entry></entry><entry>YC</entry><entry></entry>
168                       <entry>YC</entry><entry></entry><entry>YC</entry>
169                     </row>
170                   </tbody>
171                 </tgroup>
172                 </informaltable>
173               </para>
174           </formalpara>
175         </example>
176       </refsect1>
177     </refentry>