1<html><head><meta http-equiv="Content-Type" content="text/html; charset=ANSI_X3.4-1968"><title>V4L2_PIX_FMT_YVU420 ('YV12'), V4L2_PIX_FMT_YUV420 ('YU12')</title><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"><link rel="home" href="index.html" title="LINUX MEDIA INFRASTRUCTURE API"><link rel="up" href="yuv-formats.html" title="YUV Formats"><link rel="prev" href="V4L2-PIX-FMT-Y41P.html" title="V4L2_PIX_FMT_Y41P ('Y41P')"><link rel="next" href="V4L2-PIX-FMT-YUV420M.html" title="V4L2_PIX_FMT_YUV420M ('YM12')"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">V4L2_PIX_FMT_YVU420 ('YV12'), V4L2_PIX_FMT_YUV420 ('YU12')</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="V4L2-PIX-FMT-Y41P.html">Prev</a>&#160;</td><th width="60%" align="center">YUV Formats</th><td width="20%" align="right">&#160;<a accesskey="n" href="V4L2-PIX-FMT-YUV420M.html">Next</a></td></tr></table><hr></div><div class="refentry"><a name="idp1102119988"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p><code class="constant">V4L2_PIX_FMT_YVU420</code>, <code class="constant">V4L2_PIX_FMT_YUV420</code> &#8212; Planar formats with &#189; horizontal and
2vertical chroma resolution, also known as YUV 4:2:0</p></div><div class="refsect1"><a name="idp1102110628"></a><h2>Description</h2><p>These are planar formats, as opposed to a packed format.
3The three components are separated into three sub- images or planes.
4The Y plane is first. The Y plane has one byte per pixel. For
5<code class="constant">V4L2_PIX_FMT_YVU420</code>, the Cr plane immediately
6follows the Y plane in memory. The Cr plane is half the width and half
7the height of the Y plane (and of the image). Each Cr belongs to four
8pixels, a two-by-two square of the image. For example,
9Cr<sub>0</sub> belongs to Y'<sub>00</sub>,
10Y'<sub>01</sub>, Y'<sub>10</sub>, and
11Y'<sub>11</sub>. Following the Cr plane is the Cb plane,
12just like the Cr plane. <code class="constant">V4L2_PIX_FMT_YUV420</code> is
13the same except the Cb plane comes first, then the Cr plane.</p><p>If the Y plane has pad bytes after each row, then the Cr
14and Cb planes have half as many pad bytes after their rows. In other
15words, two Cx rows (including padding) is exactly as long as one Y row
16(including padding).</p><div class="example"><a name="idp1102154828"></a><p class="title"><b>Example&#160;2.21.&#160;<code class="constant">V4L2_PIX_FMT_YVU420</code> 4 &#215; 4
17pixel image</b></p><div class="example-contents"><p><b>Byte Order.&#160;</b>Each cell is one byte.
18		</p><div class="informaltable"><table border="0"><colgroup><col align="left"><col><col><col><col></colgroup><tbody valign="top"><tr><td align="left" valign="top">start&#160;+&#160;0:</td><td align="center" valign="top">Y'<sub>00</sub></td><td align="center" valign="top">Y'<sub>01</sub></td><td align="center" valign="top">Y'<sub>02</sub></td><td align="center" valign="top">Y'<sub>03</sub></td></tr><tr><td align="left" valign="top">start&#160;+&#160;4:</td><td align="center" valign="top">Y'<sub>10</sub></td><td align="center" valign="top">Y'<sub>11</sub></td><td align="center" valign="top">Y'<sub>12</sub></td><td align="center" valign="top">Y'<sub>13</sub></td></tr><tr><td align="left" valign="top">start&#160;+&#160;8:</td><td align="center" valign="top">Y'<sub>20</sub></td><td align="center" valign="top">Y'<sub>21</sub></td><td align="center" valign="top">Y'<sub>22</sub></td><td align="center" valign="top">Y'<sub>23</sub></td></tr><tr><td align="left" valign="top">start&#160;+&#160;12:</td><td align="center" valign="top">Y'<sub>30</sub></td><td align="center" valign="top">Y'<sub>31</sub></td><td align="center" valign="top">Y'<sub>32</sub></td><td align="center" valign="top">Y'<sub>33</sub></td></tr><tr><td align="left" valign="top">start&#160;+&#160;16:</td><td align="center" valign="top">Cr<sub>00</sub></td><td align="center" valign="top">Cr<sub>01</sub></td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td align="left" valign="top">start&#160;+&#160;18:</td><td align="center" valign="top">Cr<sub>10</sub></td><td align="center" valign="top">Cr<sub>11</sub></td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td align="left" valign="top">start&#160;+&#160;20:</td><td align="center" valign="top">Cb<sub>00</sub></td><td align="center" valign="top">Cb<sub>01</sub></td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td align="left" valign="top">start&#160;+&#160;22:</td><td align="center" valign="top">Cb<sub>10</sub></td><td align="center" valign="top">Cb<sub>11</sub></td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr></tbody></table></div><p>
19	      </p><p><b>Color Sample Location.&#160;</b>
20		</p><div class="informaltable"><table border="0"><colgroup><col><col><col><col><col><col><col></colgroup><tbody valign="top"><tr><td align="center" valign="top">&#160;</td><td align="center" valign="top">0</td><td align="center" valign="top">&#160;</td><td align="center" valign="top">1</td><td align="center" valign="top">&#160;</td><td align="center" valign="top">2</td><td align="center" valign="top">&#160;</td><td align="center" valign="top">3</td></tr><tr><td align="center" valign="top">0</td><td align="center" valign="top">Y</td><td align="center" valign="top">&#160;</td><td align="center" valign="top">Y</td><td align="center" valign="top">&#160;</td><td align="center" valign="top">Y</td><td align="center" valign="top">&#160;</td><td align="center" valign="top">Y</td></tr><tr><td align="center" valign="top">&#160;</td><td align="center" valign="top">&#160;</td><td align="center" valign="top">C</td><td align="center" valign="top">&#160;</td><td align="center" valign="top">&#160;</td><td align="center" valign="top">&#160;</td><td align="center" valign="top">C</td><td align="center" valign="top">&#160;</td></tr><tr><td align="center" valign="top">1</td><td align="center" valign="top">Y</td><td align="center" valign="top">&#160;</td><td align="center" valign="top">Y</td><td align="center" valign="top">&#160;</td><td align="center" valign="top">Y</td><td align="center" valign="top">&#160;</td><td align="center" valign="top">Y</td></tr><tr><td align="center" valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td align="center" valign="top">2</td><td align="center" valign="top">Y</td><td align="center" valign="top">&#160;</td><td align="center" valign="top">Y</td><td align="center" valign="top">&#160;</td><td align="center" valign="top">Y</td><td align="center" valign="top">&#160;</td><td align="center" valign="top">Y</td></tr><tr><td align="center" valign="top">&#160;</td><td align="center" valign="top">&#160;</td><td align="center" valign="top">C</td><td align="center" valign="top">&#160;</td><td align="center" valign="top">&#160;</td><td align="center" valign="top">&#160;</td><td align="center" valign="top">C</td><td align="center" valign="top">&#160;</td></tr><tr><td align="center" valign="top">3</td><td align="center" valign="top">Y</td><td align="center" valign="top">&#160;</td><td align="center" valign="top">Y</td><td align="center" valign="top">&#160;</td><td align="center" valign="top">Y</td><td align="center" valign="top">&#160;</td><td align="center" valign="top">Y</td></tr></tbody></table></div><p>
21	      </p></div></div><br class="example-break"></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="V4L2-PIX-FMT-Y41P.html">Prev</a>&#160;</td><td width="20%" align="center"><a accesskey="u" href="yuv-formats.html">Up</a></td><td width="40%" align="right">&#160;<a accesskey="n" href="V4L2-PIX-FMT-YUV420M.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">V4L2_PIX_FMT_Y41P ('Y41P')&#160;</td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top">&#160;V4L2_PIX_FMT_YUV420M ('YM12')</td></tr></table></div></body></html>
22