1<html><head><meta http-equiv="Content-Type" content="text/html; charset=ANSI_X3.4-1968"><title>Reserved Format Identifiers</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="pixfmt.html" title="Chapter 2. Image Formats"><link rel="prev" href="V4L2-SDR-FMT-RU12LE.html" title="V4L2_SDR_FMT_RU12LE ('RU12')"><link rel="next" href="io.html" title="Chapter 3. Input/Output"></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">Reserved Format Identifiers</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="V4L2-SDR-FMT-RU12LE.html">Prev</a> </td><th width="60%" align="center">Chapter 2. Image Formats</th><td width="20%" align="right"> <a accesskey="n" href="io.html">Next</a></td></tr></table><hr></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="pixfmt-reserved"></a>Reserved Format Identifiers</h2></div></div></div><p>These formats are not defined by this specification, they 2are just listed for reference and to avoid naming conflicts. If you 3want to register your own format, send an e-mail to the linux-media mailing 4list <a class="ulink" href="http://www.linuxtv.org/lists.php" target="_top">http://www.linuxtv.org/lists.php</a> for inclusion in the <code class="filename">videodev2.h</code> 5file. If you want to share your format with other developers add a 6link to your documentation and send a copy to the linux-media mailing list 7for inclusion in this section. If you think your format should be listed 8in a standard format section please make a proposal on the linux-media mailing 9list.</p><div class="table"><a name="reserved-formats"></a><p class="title"><b>Table 2.20. Reserved Image Formats</b></p><div class="table-contents"><table summary="Reserved Image Formats" width="100%" border="0"><colgroup><col align="left" class="c1"><col align="left" class="c2"><col align="left" class="c3"></colgroup><thead><tr><th align="left">Identifier</th><th align="left">Code</th><th align="left">Details</th></tr></thead><tbody valign="top"><tr><td align="left" valign="top"><a name="V4L2-PIX-FMT-DV"></a><code class="constant">V4L2_PIX_FMT_DV</code></td><td align="left" valign="top">'dvsd'</td><td align="left" valign="top">unknown</td></tr><tr><td align="left" valign="top"><a name="V4L2-PIX-FMT-ET61X251"></a><code class="constant">V4L2_PIX_FMT_ET61X251</code></td><td align="left" valign="top">'E625'</td><td align="left" valign="top">Compressed format of the ET61X251 driver.</td></tr><tr><td align="left" valign="top"><a name="V4L2-PIX-FMT-HI240"></a><code class="constant">V4L2_PIX_FMT_HI240</code></td><td align="left" valign="top">'HI24'</td><td align="left" valign="top"><p>8 bit RGB format used by the BTTV driver.</p></td></tr><tr><td align="left" valign="top"><a name="V4L2-PIX-FMT-HM12"></a><code class="constant">V4L2_PIX_FMT_HM12</code></td><td align="left" valign="top">'HM12'</td><td align="left" valign="top"><p>YUV 4:2:0 format used by the 10IVTV driver, <a class="ulink" href="http://www.ivtvdriver.org/" target="_top"> 11http://www.ivtvdriver.org/</a></p><p>The format is documented in the 12kernel sources in the file <code class="filename">Documentation/video4linux/cx2341x/README.hm12</code> 13</p></td></tr><tr><td align="left" valign="top"><a name="V4L2-PIX-FMT-CPIA1"></a><code class="constant">V4L2_PIX_FMT_CPIA1</code></td><td align="left" valign="top">'CPIA'</td><td align="left" valign="top">YUV format used by the gspca cpia1 driver.</td></tr><tr><td align="left" valign="top"><a name="V4L2-PIX-FMT-JPGL"></a><code class="constant">V4L2_PIX_FMT_JPGL</code></td><td align="left" valign="top">'JPGL'</td><td align="left" valign="top">JPEG-Light format (Pegasus Lossless JPEG) 14 used in Divio webcams NW 80x.</td></tr><tr><td align="left" valign="top"><a name="V4L2-PIX-FMT-SPCA501"></a><code class="constant">V4L2_PIX_FMT_SPCA501</code></td><td align="left" valign="top">'S501'</td><td align="left" valign="top">YUYV per line used by the gspca driver.</td></tr><tr><td align="left" valign="top"><a name="V4L2-PIX-FMT-SPCA505"></a><code class="constant">V4L2_PIX_FMT_SPCA505</code></td><td align="left" valign="top">'S505'</td><td align="left" valign="top">YYUV per line used by the gspca driver.</td></tr><tr><td align="left" valign="top"><a name="V4L2-PIX-FMT-SPCA508"></a><code class="constant">V4L2_PIX_FMT_SPCA508</code></td><td align="left" valign="top">'S508'</td><td align="left" valign="top">YUVY per line used by the gspca driver.</td></tr><tr><td align="left" valign="top"><a name="V4L2-PIX-FMT-SPCA561"></a><code class="constant">V4L2_PIX_FMT_SPCA561</code></td><td align="left" valign="top">'S561'</td><td align="left" valign="top">Compressed GBRG Bayer format used by the gspca driver.</td></tr><tr><td align="left" valign="top"><a name="V4L2-PIX-FMT-PAC207"></a><code class="constant">V4L2_PIX_FMT_PAC207</code></td><td align="left" valign="top">'P207'</td><td align="left" valign="top">Compressed BGGR Bayer format used by the gspca driver.</td></tr><tr><td align="left" valign="top"><a name="V4L2-PIX-FMT-MR97310A"></a><code class="constant">V4L2_PIX_FMT_MR97310A</code></td><td align="left" valign="top">'M310'</td><td align="left" valign="top">Compressed BGGR Bayer format used by the gspca driver.</td></tr><tr><td align="left" valign="top"><a name="V4L2-PIX-FMT-JL2005BCD"></a><code class="constant">V4L2_PIX_FMT_JL2005BCD</code></td><td align="left" valign="top">'JL20'</td><td align="left" valign="top">JPEG compressed RGGB Bayer format used by the gspca driver.</td></tr><tr><td align="left" valign="top"><a name="V4L2-PIX-FMT-OV511"></a><code class="constant">V4L2_PIX_FMT_OV511</code></td><td align="left" valign="top">'O511'</td><td align="left" valign="top">OV511 JPEG format used by the gspca driver.</td></tr><tr><td align="left" valign="top"><a name="V4L2-PIX-FMT-OV518"></a><code class="constant">V4L2_PIX_FMT_OV518</code></td><td align="left" valign="top">'O518'</td><td align="left" valign="top">OV518 JPEG format used by the gspca driver.</td></tr><tr><td align="left" valign="top"><a name="V4L2-PIX-FMT-PJPG"></a><code class="constant">V4L2_PIX_FMT_PJPG</code></td><td align="left" valign="top">'PJPG'</td><td align="left" valign="top">Pixart 73xx JPEG format used by the gspca driver.</td></tr><tr><td align="left" valign="top"><a name="V4L2-PIX-FMT-SE401"></a><code class="constant">V4L2_PIX_FMT_SE401</code></td><td align="left" valign="top">'S401'</td><td align="left" valign="top">Compressed RGB format used by the gspca se401 driver</td></tr><tr><td align="left" valign="top"><a name="V4L2-PIX-FMT-SQ905C"></a><code class="constant">V4L2_PIX_FMT_SQ905C</code></td><td align="left" valign="top">'905C'</td><td align="left" valign="top">Compressed RGGB bayer format used by the gspca driver.</td></tr><tr><td align="left" valign="top"><a name="V4L2-PIX-FMT-MJPEG"></a><code class="constant">V4L2_PIX_FMT_MJPEG</code></td><td align="left" valign="top">'MJPG'</td><td align="left" valign="top">Compressed format used by the Zoran driver</td></tr><tr><td align="left" valign="top"><a name="V4L2-PIX-FMT-PWC1"></a><code class="constant">V4L2_PIX_FMT_PWC1</code></td><td align="left" valign="top">'PWC1'</td><td align="left" valign="top">Compressed format of the PWC driver.</td></tr><tr><td align="left" valign="top"><a name="V4L2-PIX-FMT-PWC2"></a><code class="constant">V4L2_PIX_FMT_PWC2</code></td><td align="left" valign="top">'PWC2'</td><td align="left" valign="top">Compressed format of the PWC driver.</td></tr><tr><td align="left" valign="top"><a name="V4L2-PIX-FMT-SN9C10X"></a><code class="constant">V4L2_PIX_FMT_SN9C10X</code></td><td align="left" valign="top">'S910'</td><td align="left" valign="top">Compressed format of the SN9C102 driver.</td></tr><tr><td align="left" valign="top"><a name="V4L2-PIX-FMT-SN9C20X-I420"></a><code class="constant">V4L2_PIX_FMT_SN9C20X_I420</code></td><td align="left" valign="top">'S920'</td><td align="left" valign="top">YUV 4:2:0 format of the gspca sn9c20x driver.</td></tr><tr><td align="left" valign="top"><a name="V4L2-PIX-FMT-SN9C2028"></a><code class="constant">V4L2_PIX_FMT_SN9C2028</code></td><td align="left" valign="top">'SONX'</td><td align="left" valign="top">Compressed GBRG bayer format of the gspca sn9c2028 driver.</td></tr><tr><td align="left" valign="top"><a name="V4L2-PIX-FMT-STV0680"></a><code class="constant">V4L2_PIX_FMT_STV0680</code></td><td align="left" valign="top">'S680'</td><td align="left" valign="top">Bayer format of the gspca stv0680 driver.</td></tr><tr><td align="left" valign="top"><a name="V4L2-PIX-FMT-WNVA"></a><code class="constant">V4L2_PIX_FMT_WNVA</code></td><td align="left" valign="top">'WNVA'</td><td align="left" valign="top"><p>Used by the Winnov Videum driver, <a class="ulink" href="http://www.thedirks.org/winnov/" target="_top"> 15http://www.thedirks.org/winnov/</a></p></td></tr><tr><td align="left" valign="top"><a name="V4L2-PIX-FMT-TM6000"></a><code class="constant">V4L2_PIX_FMT_TM6000</code></td><td align="left" valign="top">'TM60'</td><td align="left" valign="top"><p>Used by Trident tm6000</p></td></tr><tr><td align="left" valign="top"><a name="V4L2-PIX-FMT-CIT-YYVYUY"></a><code class="constant">V4L2_PIX_FMT_CIT_YYVYUY</code></td><td align="left" valign="top">'CITV'</td><td align="left" valign="top"><p>Used by xirlink CIT, found at IBM webcams.</p> 16 <p>Uses one line of Y then 1 line of VYUY</p> 17 </td></tr><tr><td align="left" valign="top"><a name="V4L2-PIX-FMT-KONICA420"></a><code class="constant">V4L2_PIX_FMT_KONICA420</code></td><td align="left" valign="top">'KONI'</td><td align="left" valign="top"><p>Used by Konica webcams.</p> 18 <p>YUV420 planar in blocks of 256 pixels.</p> 19 </td></tr><tr><td align="left" valign="top"><a name="V4L2-PIX-FMT-YYUV"></a><code class="constant">V4L2_PIX_FMT_YYUV</code></td><td align="left" valign="top">'YYUV'</td><td align="left" valign="top">unknown</td></tr><tr><td align="left" valign="top"><a name="V4L2-PIX-FMT-Y4"></a><code class="constant">V4L2_PIX_FMT_Y4</code></td><td align="left" valign="top">'Y04 '</td><td align="left" valign="top">Old 4-bit greyscale format. Only the most significant 4 bits of each byte are used, 20the other bits are set to 0.</td></tr><tr><td align="left" valign="top"><a name="V4L2-PIX-FMT-Y6"></a><code class="constant">V4L2_PIX_FMT_Y6</code></td><td align="left" valign="top">'Y06 '</td><td align="left" valign="top">Old 6-bit greyscale format. Only the most significant 6 bits of each byte are used, 21the other bits are set to 0.</td></tr><tr><td align="left" valign="top"><a name="V4L2-PIX-FMT-S5C-UYVY-JPG"></a><code class="constant">V4L2_PIX_FMT_S5C_UYVY_JPG</code></td><td align="left" valign="top">'S5CI'</td><td align="left" valign="top">Two-planar format used by Samsung S5C73MX cameras. The 22first plane contains interleaved JPEG and UYVY image data, followed by meta data 23in form of an array of offsets to the UYVY data blocks. The actual pointer array 24follows immediately the interleaved JPEG/UYVY data, the number of entries in 25this array equals the height of the UYVY image. Each entry is a 4-byte unsigned 26integer in big endian order and it's an offset to a single pixel line of the 27UYVY image. The first plane can start either with JPEG or UYVY data chunk. The 28size of a single UYVY block equals the UYVY image's width multiplied by 2. The 29size of a JPEG chunk depends on the image and can vary with each line. 30<p>The second plane, at an offset of 4084 bytes, contains a 4-byte offset to 31the pointer array in the first plane. This offset is followed by a 4-byte value 32indicating size of the pointer array. All numbers in the second plane are also 33in big endian order. Remaining data in the second plane is undefined. The 34information in the second plane allows to easily find location of the pointer 35array, which can be different for each frame. The size of the pointer array is 36constant for given UYVY image height.</p> 37<p>In order to extract UYVY and JPEG frames an application can initially set 38a data pointer to the start of first plane and then add an offset from the first 39entry of the pointers table. Such a pointer indicates start of an UYVY image 40pixel line. Whole UYVY line can be copied to a separate buffer. These steps 41should be repeated for each line, i.e. the number of entries in the pointer 42array. Anything what's in between the UYVY lines is JPEG data and should be 43concatenated to form the JPEG stream. </p> 44</td></tr></tbody></table></div></div><br class="table-break"><div class="table"><a name="format-flags"></a><p class="title"><b>Table 2.21. Format Flags</b></p><div class="table-contents"><table summary="Format Flags" width="100%" border="0"><colgroup><col class="c1"><col class="c2"><col class="c3"></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_PIX_FMT_FLAG_PREMUL_ALPHA</code></td><td valign="top">0x00000001</td><td valign="top">The color values are premultiplied by the alpha channel 45value. For example, if a light blue pixel with 50% transparency was described by 46RGBA values (128, 192, 255, 128), the same pixel described with premultiplied 47colors would be described by RGBA values (64, 96, 128, 128) </td></tr></tbody></table></div></div><br class="table-break"></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="V4L2-SDR-FMT-RU12LE.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="pixfmt.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="io.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">V4L2_SDR_FMT_RU12LE ('RU12') </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> Chapter 3. Input/Output</td></tr></table></div></body></html> 48