1<html><head><meta http-equiv="Content-Type" content="text/html; charset=ANSI_X3.4-1968"><title>Extended Controls</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="common.html" title="Chapter&#160;1.&#160;Common API Elements"><link rel="prev" href="control.html" title="User Controls"><link rel="next" href="format.html" title="Data Formats"></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">Extended Controls</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="control.html">Prev</a>&#160;</td><th width="60%" align="center">Chapter&#160;1.&#160;Common API Elements</th><td width="20%" align="right">&#160;<a accesskey="n" href="format.html">Next</a></td></tr></table><hr></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="extended-controls"></a>Extended Controls</h2></div></div></div><div class="toc"><dl class="toc"><dt><span class="section"><a href="extended-controls.html#idp1097023452">Introduction</a></span></dt><dt><span class="section"><a href="extended-controls.html#idp1097025916">The Extended Control API</a></span></dt><dt><span class="section"><a href="extended-controls.html#idp1097037444">Enumerating Extended Controls</a></span></dt><dt><span class="section"><a href="extended-controls.html#idp1096896148">Creating Control Panels</a></span></dt><dt><span class="section"><a href="extended-controls.html#mpeg-controls">Codec Control Reference</a></span></dt><dt><span class="section"><a href="extended-controls.html#camera-controls">Camera Control Reference</a></span></dt><dt><span class="section"><a href="extended-controls.html#fm-tx-controls">FM Transmitter Control Reference</a></span></dt><dt><span class="section"><a href="extended-controls.html#flash-controls">Flash Control Reference</a></span></dt><dt><span class="section"><a href="extended-controls.html#jpeg-controls">JPEG Control Reference</a></span></dt><dt><span class="section"><a href="extended-controls.html#image-source-controls">Image Source Control Reference</a></span></dt><dt><span class="section"><a href="extended-controls.html#image-process-controls">Image Process Control Reference</a></span></dt><dt><span class="section"><a href="extended-controls.html#dv-controls">Digital Video Control Reference</a></span></dt><dt><span class="section"><a href="extended-controls.html#fm-rx-controls">FM Receiver Control Reference</a></span></dt><dt><span class="section"><a href="extended-controls.html#detect-controls">Detect Control Reference</a></span></dt><dt><span class="section"><a href="extended-controls.html#rf-tuner-controls">RF Tuner Control Reference</a></span></dt></dl></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp1097023452"></a>Introduction</h3></div></div></div><p>The control mechanism as originally designed was meant
2to be used for user settings (brightness, saturation, etc). However,
3it turned out to be a very useful model for implementing more
4complicated driver APIs where each driver implements only a subset of
5a larger API.</p><p>The MPEG encoding API was the driving force behind
6designing and implementing this extended control mechanism: the MPEG
7standard is quite large and the currently supported hardware MPEG
8encoders each only implement a subset of this standard. Further more,
9many parameters relating to how the video is encoded into an MPEG
10stream are specific to the MPEG encoding chip since the MPEG standard
11only defines the format of the resulting MPEG stream, not how the
12video is actually encoded into that format.</p><p>Unfortunately, the original control API lacked some
13features needed for these new uses and so it was extended into the
14(not terribly originally named) extended control API.</p><p>Even though the MPEG encoding API was the first effort
15to use the Extended Control API, nowadays there are also other classes
16of Extended Controls, such as Camera Controls and FM Transmitter Controls.
17The Extended Controls API as well as all Extended Controls classes are
18described in the following text.</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp1097025916"></a>The Extended Control API</h3></div></div></div><p>Three new ioctls are available: <a class="link" href="vidioc-g-ext-ctrls.html" title="ioctl VIDIOC_G_EXT_CTRLS, VIDIOC_S_EXT_CTRLS, VIDIOC_TRY_EXT_CTRLS"><code class="constant">VIDIOC_G_EXT_CTRLS</code></a>,
19<a class="link" href="vidioc-g-ext-ctrls.html" title="ioctl VIDIOC_G_EXT_CTRLS, VIDIOC_S_EXT_CTRLS, VIDIOC_TRY_EXT_CTRLS"><code class="constant">VIDIOC_S_EXT_CTRLS</code></a> and <a class="link" href="vidioc-g-ext-ctrls.html" title="ioctl VIDIOC_G_EXT_CTRLS, VIDIOC_S_EXT_CTRLS, VIDIOC_TRY_EXT_CTRLS"><code class="constant">VIDIOC_TRY_EXT_CTRLS</code></a>. These ioctls act on
20arrays of controls (as opposed to the <a class="link" href="vidioc-g-ctrl.html" title="ioctl VIDIOC_G_CTRL, VIDIOC_S_CTRL"><code class="constant">VIDIOC_G_CTRL</code></a> and
21<a class="link" href="vidioc-g-ctrl.html" title="ioctl VIDIOC_G_CTRL, VIDIOC_S_CTRL"><code class="constant">VIDIOC_S_CTRL</code></a> ioctls that act on a single control). This is needed
22since it is often required to atomically change several controls at
23once.</p><p>Each of the new ioctls expects a pointer to a
24struct&#160;<a class="link" href="vidioc-g-ext-ctrls.html#v4l2-ext-controls" title="Table&#160;A.67.&#160;struct v4l2_ext_controls">v4l2_ext_controls</a>. This structure contains a pointer to the control
25array, a count of the number of controls in that array and a control
26class. Control classes are used to group similar controls into a
27single class. For example, control class
28<code class="constant">V4L2_CTRL_CLASS_USER</code> contains all user controls
29(i.&#160;e. all controls that can also be set using the old
30<code class="constant">VIDIOC_S_CTRL</code> ioctl). Control class
31<code class="constant">V4L2_CTRL_CLASS_MPEG</code> contains all controls
32relating to MPEG encoding, etc.</p><p>All controls in the control array must belong to the
33specified control class. An error is returned if this is not the
34case.</p><p>It is also possible to use an empty control array (count
35== 0) to check whether the specified control class is
36supported.</p><p>The control array is a struct&#160;<a class="link" href="vidioc-g-ext-ctrls.html#v4l2-ext-control" title="Table&#160;A.66.&#160;struct v4l2_ext_control">v4l2_ext_control</a> array. The
37<span class="structname">v4l2_ext_control</span> structure is very similar to
38struct&#160;<a class="link" href="vidioc-g-ctrl.html#v4l2-control" title="Table&#160;A.56.&#160;struct v4l2_control">v4l2_control</a>, except for the fact that it also allows for 64-bit
39values and pointers to be passed.</p><p>Since the struct&#160;<a class="link" href="vidioc-g-ext-ctrls.html#v4l2-ext-control" title="Table&#160;A.66.&#160;struct v4l2_ext_control">v4l2_ext_control</a> supports pointers it is now
40also possible to have controls with compound types such as N-dimensional arrays
41and/or structures. You need to specify the <code class="constant">V4L2_CTRL_FLAG_NEXT_COMPOUND</code>
42when enumerating controls to actually be able to see such compound controls.
43In other words, these controls with compound types should only be used
44programmatically.</p><p>Since such compound controls need to expose more information
45about themselves than is possible with <a class="link" href="vidioc-queryctrl.html" title="ioctl VIDIOC_QUERYCTRL, VIDIOC_QUERY_EXT_CTRL, VIDIOC_QUERYMENU"><code class="constant">VIDIOC_QUERYCTRL</code></a> the
46<a class="link" href="vidioc-queryctrl.html" title="ioctl VIDIOC_QUERYCTRL, VIDIOC_QUERY_EXT_CTRL, VIDIOC_QUERYMENU"><code class="constant">VIDIOC_QUERY_EXT_CTRL</code></a> ioctl was added. In particular, this ioctl gives
47the dimensions of the N-dimensional array if this control consists of more than
48one element.</p><p>It is important to realize that due to the flexibility of
49controls it is necessary to check whether the control you want to set
50actually is supported in the driver and what the valid range of values
51is. So use the <a class="link" href="vidioc-queryctrl.html" title="ioctl VIDIOC_QUERYCTRL, VIDIOC_QUERY_EXT_CTRL, VIDIOC_QUERYMENU"><code class="constant">VIDIOC_QUERYCTRL</code></a> (or <a class="link" href="vidioc-queryctrl.html" title="ioctl VIDIOC_QUERYCTRL, VIDIOC_QUERY_EXT_CTRL, VIDIOC_QUERYMENU"><code class="constant">VIDIOC_QUERY_EXT_CTRL</code></a>) and
52<a class="link" href="vidioc-queryctrl.html" title="ioctl VIDIOC_QUERYCTRL, VIDIOC_QUERY_EXT_CTRL, VIDIOC_QUERYMENU"><code class="constant">VIDIOC_QUERYMENU</code></a> ioctls to check this. Also note that it is possible
53that some of the menu indices in a control of type
54<code class="constant">V4L2_CTRL_TYPE_MENU</code> may not be supported
55(<code class="constant">VIDIOC_QUERYMENU</code> will return an error). A good
56example is the list of supported MPEG audio bitrates. Some drivers only
57support one or two bitrates, others support a wider range.</p><p>
58	All controls use machine endianness.
59      </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp1097037444"></a>Enumerating Extended Controls</h3></div></div></div><p>The recommended way to enumerate over the extended
60controls is by using <a class="link" href="vidioc-queryctrl.html" title="ioctl VIDIOC_QUERYCTRL, VIDIOC_QUERY_EXT_CTRL, VIDIOC_QUERYMENU"><code class="constant">VIDIOC_QUERYCTRL</code></a> in combination with the
61<code class="constant">V4L2_CTRL_FLAG_NEXT_CTRL</code> flag:</p><div class="informalexample"><pre class="programlisting">
62struct&#160;<a class="link" href="vidioc-queryctrl.html#v4l2-queryctrl" title="Table&#160;A.95.&#160;struct v4l2_queryctrl">v4l2_queryctrl</a> qctrl;
63
64qctrl.id = V4L2_CTRL_FLAG_NEXT_CTRL;
65while (0 == ioctl (fd, <a class="link" href="vidioc-queryctrl.html" title="ioctl VIDIOC_QUERYCTRL, VIDIOC_QUERY_EXT_CTRL, VIDIOC_QUERYMENU"><code class="constant">VIDIOC_QUERYCTRL</code></a>, &amp;qctrl)) {
66	/* ... */
67	qctrl.id |= V4L2_CTRL_FLAG_NEXT_CTRL;
68}
69</pre></div><p>The initial control ID is set to 0 ORed with the
70<code class="constant">V4L2_CTRL_FLAG_NEXT_CTRL</code> flag. The
71<code class="constant">VIDIOC_QUERYCTRL</code> ioctl will return the first
72control with a higher ID than the specified one. When no such controls
73are found an error is returned.</p><p>If you want to get all controls within a specific control
74class, then you can set the initial
75<em class="structfield"><code>qctrl.id</code></em> value to the control class and add
76an extra check to break out of the loop when a control of another
77control class is found:</p><div class="informalexample"><pre class="programlisting">
78qctrl.id = V4L2_CTRL_CLASS_MPEG | V4L2_CTRL_FLAG_NEXT_CTRL;
79while (0 == ioctl(fd, <a class="link" href="vidioc-queryctrl.html" title="ioctl VIDIOC_QUERYCTRL, VIDIOC_QUERY_EXT_CTRL, VIDIOC_QUERYMENU"><code class="constant">VIDIOC_QUERYCTRL</code></a>, &amp;qctrl)) {
80	if (V4L2_CTRL_ID2CLASS(qctrl.id) != V4L2_CTRL_CLASS_MPEG)
81		break;
82		/* ... */
83	qctrl.id |= V4L2_CTRL_FLAG_NEXT_CTRL;
84}
85</pre></div><p>The 32-bit <em class="structfield"><code>qctrl.id</code></em> value is
86subdivided into three bit ranges: the top 4 bits are reserved for
87flags (e.&#160;g. <code class="constant">V4L2_CTRL_FLAG_NEXT_CTRL</code>) and are not
88actually part of the ID. The remaining 28 bits form the control ID, of
89which the most significant 12 bits define the control class and the
90least significant 16 bits identify the control within the control
91class. It is guaranteed that these last 16 bits are always non-zero
92for controls. The range of 0x1000 and up are reserved for
93driver-specific controls. The macro
94<code class="constant">V4L2_CTRL_ID2CLASS(id)</code> returns the control class
95ID based on a control ID.</p><p>If the driver does not support extended controls, then
96<code class="constant">VIDIOC_QUERYCTRL</code> will fail when used in
97combination with <code class="constant">V4L2_CTRL_FLAG_NEXT_CTRL</code>. In
98that case the old method of enumerating control should be used (see
99<a class="xref" href="control.html#enum_all_controls" title="Example&#160;1.8.&#160;Enumerating all user controls">Example&#160;1.8, &#8220;Enumerating all user controls&#8221;</a>). But if it is supported, then it is guaranteed to enumerate over
100all controls, including driver-private controls.</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp1096896148"></a>Creating Control Panels</h3></div></div></div><p>It is possible to create control panels for a graphical
101user interface where the user can select the various controls.
102Basically you will have to iterate over all controls using the method
103described above. Each control class starts with a control of type
104<code class="constant">V4L2_CTRL_TYPE_CTRL_CLASS</code>.
105<code class="constant">VIDIOC_QUERYCTRL</code> will return the name of this
106control class which can be used as the title of a tab page within a
107control panel.</p><p>The flags field of struct&#160;<a class="link" href="vidioc-queryctrl.html#v4l2-queryctrl" title="Table&#160;A.95.&#160;struct v4l2_queryctrl">v4l2_queryctrl</a> also contains hints on
108the behavior of the control. See the <a class="link" href="vidioc-queryctrl.html" title="ioctl VIDIOC_QUERYCTRL, VIDIOC_QUERY_EXT_CTRL, VIDIOC_QUERYMENU"><code class="constant">VIDIOC_QUERYCTRL</code></a> documentation
109for more details.</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="mpeg-controls"></a>Codec Control Reference</h3></div></div></div><div class="toc"><dl class="toc"><dt><span class="section"><a href="extended-controls.html#idp1096899852">Generic Codec Controls</a></span></dt><dt><span class="section"><a href="extended-controls.html#idp1097415380">MFC 5.1 MPEG Controls</a></span></dt><dt><span class="section"><a href="extended-controls.html#idp1097455644">CX2341x MPEG Controls</a></span></dt><dt><span class="section"><a href="extended-controls.html#idp1097499756">VPX Control Reference</a></span></dt></dl></div><p>Below all controls within the Codec control class are
110described. First the generic controls, then controls specific for
111certain hardware.</p><p>Note: These controls are applicable to all codecs and
112not just MPEG. The defines are prefixed with V4L2_CID_MPEG/V4L2_MPEG
113as the controls were originally made for MPEG codecs and later
114extended to cover all encoding formats.</p><div class="section"><div class="titlepage"><div><div><h4 class="title"><a name="idp1096899852"></a>Generic Codec Controls</h4></div></div></div><div class="table"><a name="mpeg-control-id"></a><p class="title"><b>Table&#160;1.2.&#160;Codec Control IDs</b></p><div class="table-contents"><table summary="Codec Control IDs" width="100%" border="0"><colgroup><col class="c1"><col class="c2"><col class="c3"><col class="c4"></colgroup><thead><tr><th colspan="2" align="left">ID</th><th align="left">Type</th><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><th colspan="3" align="left">Description</th></tr></thead><tbody valign="top"><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_CLASS</code>&#160;</td><td valign="top">class</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">The Codec class
115descriptor. Calling <a class="link" href="vidioc-queryctrl.html" title="ioctl VIDIOC_QUERYCTRL, VIDIOC_QUERY_EXT_CTRL, VIDIOC_QUERYMENU"><code class="constant">VIDIOC_QUERYCTRL</code></a> for this control will return a
116description of this control class. This description can be used as the
117caption of a Tab page in a GUI, for example.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><a name="v4l2-mpeg-stream-type"></a><code class="constant">V4L2_CID_MPEG_STREAM_TYPE</code>&#160;</td><td valign="top">enum&#160;v4l2_mpeg_stream_type</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">The MPEG-1, -2 or -4
118output stream type. One cannot assume anything here. Each hardware
119MPEG encoder tends to support different subsets of the available MPEG
120stream types. This control is specific to multiplexed MPEG streams.
121The currently defined stream types are:</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_MPEG_STREAM_TYPE_MPEG2_PS</code>&#160;</td><td valign="top">MPEG-2 program stream</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_STREAM_TYPE_MPEG2_TS</code>&#160;</td><td valign="top">MPEG-2 transport stream</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_STREAM_TYPE_MPEG1_SS</code>&#160;</td><td valign="top">MPEG-1 system stream</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_STREAM_TYPE_MPEG2_DVD</code>&#160;</td><td valign="top">MPEG-2 DVD-compatible stream</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_STREAM_TYPE_MPEG1_VCD</code>&#160;</td><td valign="top">MPEG-1 VCD-compatible stream</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_STREAM_TYPE_MPEG2_SVCD</code>&#160;</td><td valign="top">MPEG-2 SVCD-compatible stream</td></tr></tbody></table></td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_STREAM_PID_PMT</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Program Map Table
122Packet ID for the MPEG transport stream (default 16)</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_STREAM_PID_AUDIO</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Audio Packet ID for
123the MPEG transport stream (default 256)</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_STREAM_PID_VIDEO</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Video Packet ID for
124the MPEG transport stream (default 260)</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_STREAM_PID_PCR</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Packet ID for the
125MPEG transport stream carrying PCR fields (default 259)</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_STREAM_PES_ID_AUDIO</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Audio ID for MPEG
126PES</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_STREAM_PES_ID_VIDEO</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Video ID for MPEG
127PES</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><a name="v4l2-mpeg-stream-vbi-fmt"></a><code class="constant">V4L2_CID_MPEG_STREAM_VBI_FMT</code>&#160;</td><td valign="top">enum&#160;v4l2_mpeg_stream_vbi_fmt</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Some cards can embed
128VBI data (e.&#160;g. Closed Caption, Teletext) into the MPEG stream. This
129control selects whether VBI data should be embedded, and if so, what
130embedding method should be used. The list of possible VBI formats
131depends on the driver. The currently defined VBI format types
132are:</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_MPEG_STREAM_VBI_FMT_NONE</code>&#160;</td><td valign="top">No VBI in the MPEG stream</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_STREAM_VBI_FMT_IVTV</code>&#160;</td><td valign="top">VBI in private packets, IVTV format (documented
133in the kernel sources in the file <code class="filename">Documentation/video4linux/cx2341x/README.vbi</code>)</td></tr></tbody></table></td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><a name="v4l2-mpeg-audio-sampling-freq"></a><code class="constant">V4L2_CID_MPEG_AUDIO_SAMPLING_FREQ</code>&#160;</td><td valign="top">enum&#160;v4l2_mpeg_audio_sampling_freq</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">MPEG Audio sampling
134frequency. Possible values are:</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_SAMPLING_FREQ_44100</code>&#160;</td><td valign="top">44.1 kHz</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_SAMPLING_FREQ_48000</code>&#160;</td><td valign="top">48 kHz</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_SAMPLING_FREQ_32000</code>&#160;</td><td valign="top">32 kHz</td></tr></tbody></table></td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><a name="v4l2-mpeg-audio-encoding"></a><code class="constant">V4L2_CID_MPEG_AUDIO_ENCODING</code>&#160;</td><td valign="top">enum&#160;v4l2_mpeg_audio_encoding</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">MPEG Audio encoding.
135This control is specific to multiplexed MPEG streams.
136Possible values are:</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_ENCODING_LAYER_1</code>&#160;</td><td valign="top">MPEG-1/2 Layer I encoding</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_ENCODING_LAYER_2</code>&#160;</td><td valign="top">MPEG-1/2 Layer II encoding</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_ENCODING_LAYER_3</code>&#160;</td><td valign="top">MPEG-1/2 Layer III encoding</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_ENCODING_AAC</code>&#160;</td><td valign="top">MPEG-2/4 AAC (Advanced Audio Coding)</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_ENCODING_AC3</code>&#160;</td><td valign="top">AC-3 aka ATSC A/52 encoding</td></tr></tbody></table></td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><a name="v4l2-mpeg-audio-l1-bitrate"></a><code class="constant">V4L2_CID_MPEG_AUDIO_L1_BITRATE</code>&#160;</td><td valign="top">enum&#160;v4l2_mpeg_audio_l1_bitrate</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">MPEG-1/2 Layer I bitrate.
137Possible values are:</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_L1_BITRATE_32K</code>&#160;</td><td valign="top">32 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_L1_BITRATE_64K</code>&#160;</td><td valign="top">64 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_L1_BITRATE_96K</code>&#160;</td><td valign="top">96 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_L1_BITRATE_128K</code>&#160;</td><td valign="top">128 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_L1_BITRATE_160K</code>&#160;</td><td valign="top">160 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_L1_BITRATE_192K</code>&#160;</td><td valign="top">192 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_L1_BITRATE_224K</code>&#160;</td><td valign="top">224 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_L1_BITRATE_256K</code>&#160;</td><td valign="top">256 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_L1_BITRATE_288K</code>&#160;</td><td valign="top">288 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_L1_BITRATE_320K</code>&#160;</td><td valign="top">320 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_L1_BITRATE_352K</code>&#160;</td><td valign="top">352 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_L1_BITRATE_384K</code>&#160;</td><td valign="top">384 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_L1_BITRATE_416K</code>&#160;</td><td valign="top">416 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_L1_BITRATE_448K</code>&#160;</td><td valign="top">448 kbit/s</td></tr></tbody></table></td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><a name="v4l2-mpeg-audio-l2-bitrate"></a><code class="constant">V4L2_CID_MPEG_AUDIO_L2_BITRATE</code>&#160;</td><td valign="top">enum&#160;v4l2_mpeg_audio_l2_bitrate</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">MPEG-1/2 Layer II bitrate.
138Possible values are:</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_L2_BITRATE_32K</code>&#160;</td><td valign="top">32 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_L2_BITRATE_48K</code>&#160;</td><td valign="top">48 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_L2_BITRATE_56K</code>&#160;</td><td valign="top">56 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_L2_BITRATE_64K</code>&#160;</td><td valign="top">64 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_L2_BITRATE_80K</code>&#160;</td><td valign="top">80 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_L2_BITRATE_96K</code>&#160;</td><td valign="top">96 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_L2_BITRATE_112K</code>&#160;</td><td valign="top">112 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_L2_BITRATE_128K</code>&#160;</td><td valign="top">128 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_L2_BITRATE_160K</code>&#160;</td><td valign="top">160 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_L2_BITRATE_192K</code>&#160;</td><td valign="top">192 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_L2_BITRATE_224K</code>&#160;</td><td valign="top">224 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_L2_BITRATE_256K</code>&#160;</td><td valign="top">256 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_L2_BITRATE_320K</code>&#160;</td><td valign="top">320 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_L2_BITRATE_384K</code>&#160;</td><td valign="top">384 kbit/s</td></tr></tbody></table></td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><a name="v4l2-mpeg-audio-l3-bitrate"></a><code class="constant">V4L2_CID_MPEG_AUDIO_L3_BITRATE</code>&#160;</td><td valign="top">enum&#160;v4l2_mpeg_audio_l3_bitrate</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">MPEG-1/2 Layer III bitrate.
139Possible values are:</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_L3_BITRATE_32K</code>&#160;</td><td valign="top">32 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_L3_BITRATE_40K</code>&#160;</td><td valign="top">40 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_L3_BITRATE_48K</code>&#160;</td><td valign="top">48 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_L3_BITRATE_56K</code>&#160;</td><td valign="top">56 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_L3_BITRATE_64K</code>&#160;</td><td valign="top">64 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_L3_BITRATE_80K</code>&#160;</td><td valign="top">80 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_L3_BITRATE_96K</code>&#160;</td><td valign="top">96 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_L3_BITRATE_112K</code>&#160;</td><td valign="top">112 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_L3_BITRATE_128K</code>&#160;</td><td valign="top">128 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_L3_BITRATE_160K</code>&#160;</td><td valign="top">160 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_L3_BITRATE_192K</code>&#160;</td><td valign="top">192 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_L3_BITRATE_224K</code>&#160;</td><td valign="top">224 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_L3_BITRATE_256K</code>&#160;</td><td valign="top">256 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_L3_BITRATE_320K</code>&#160;</td><td valign="top">320 kbit/s</td></tr></tbody></table></td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_AUDIO_AAC_BITRATE</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">AAC bitrate in bits per second.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><a name="v4l2-mpeg-audio-ac3-bitrate"></a><code class="constant">V4L2_CID_MPEG_AUDIO_AC3_BITRATE</code>&#160;</td><td valign="top">enum&#160;v4l2_mpeg_audio_ac3_bitrate</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">AC-3 bitrate.
140Possible values are:</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_AC3_BITRATE_32K</code>&#160;</td><td valign="top">32 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_AC3_BITRATE_40K</code>&#160;</td><td valign="top">40 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_AC3_BITRATE_48K</code>&#160;</td><td valign="top">48 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_AC3_BITRATE_56K</code>&#160;</td><td valign="top">56 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_AC3_BITRATE_64K</code>&#160;</td><td valign="top">64 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_AC3_BITRATE_80K</code>&#160;</td><td valign="top">80 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_AC3_BITRATE_96K</code>&#160;</td><td valign="top">96 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_AC3_BITRATE_112K</code>&#160;</td><td valign="top">112 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_AC3_BITRATE_128K</code>&#160;</td><td valign="top">128 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_AC3_BITRATE_160K</code>&#160;</td><td valign="top">160 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_AC3_BITRATE_192K</code>&#160;</td><td valign="top">192 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_AC3_BITRATE_224K</code>&#160;</td><td valign="top">224 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_AC3_BITRATE_256K</code>&#160;</td><td valign="top">256 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_AC3_BITRATE_320K</code>&#160;</td><td valign="top">320 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_AC3_BITRATE_384K</code>&#160;</td><td valign="top">384 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_AC3_BITRATE_448K</code>&#160;</td><td valign="top">448 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_AC3_BITRATE_512K</code>&#160;</td><td valign="top">512 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_AC3_BITRATE_576K</code>&#160;</td><td valign="top">576 kbit/s</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_AC3_BITRATE_640K</code>&#160;</td><td valign="top">640 kbit/s</td></tr></tbody></table></td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><a name="v4l2-mpeg-audio-mode"></a><code class="constant">V4L2_CID_MPEG_AUDIO_MODE</code>&#160;</td><td valign="top">enum&#160;v4l2_mpeg_audio_mode</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">MPEG Audio mode.
141Possible values are:</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_MODE_STEREO</code>&#160;</td><td valign="top">Stereo</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_MODE_JOINT_STEREO</code>&#160;</td><td valign="top">Joint Stereo</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_MODE_DUAL</code>&#160;</td><td valign="top">Bilingual</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_MODE_MONO</code>&#160;</td><td valign="top">Mono</td></tr></tbody></table></td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><a name="v4l2-mpeg-audio-mode-extension"></a><code class="constant">V4L2_CID_MPEG_AUDIO_MODE_EXTENSION</code>&#160;</td><td valign="top">enum&#160;v4l2_mpeg_audio_mode_extension</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Joint Stereo
142audio mode extension. In Layer I and II they indicate which subbands
143are in intensity stereo. All other subbands are coded in stereo. Layer
144III is not (yet) supported. Possible values
145are:</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_MODE_EXTENSION_BOUND_4</code>&#160;</td><td valign="top">Subbands 4-31 in intensity stereo</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_MODE_EXTENSION_BOUND_8</code>&#160;</td><td valign="top">Subbands 8-31 in intensity stereo</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_MODE_EXTENSION_BOUND_12</code>&#160;</td><td valign="top">Subbands 12-31 in intensity stereo</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_MODE_EXTENSION_BOUND_16</code>&#160;</td><td valign="top">Subbands 16-31 in intensity stereo</td></tr></tbody></table></td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><a name="v4l2-mpeg-audio-emphasis"></a><code class="constant">V4L2_CID_MPEG_AUDIO_EMPHASIS</code>&#160;</td><td valign="top">enum&#160;v4l2_mpeg_audio_emphasis</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Audio Emphasis.
146Possible values are:</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_EMPHASIS_NONE</code>&#160;</td><td valign="top">None</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_EMPHASIS_50_DIV_15_uS</code>&#160;</td><td valign="top">50/15 microsecond emphasis</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_EMPHASIS_CCITT_J17</code>&#160;</td><td valign="top">CCITT J.17</td></tr></tbody></table></td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><a name="v4l2-mpeg-audio-crc"></a><code class="constant">V4L2_CID_MPEG_AUDIO_CRC</code>&#160;</td><td valign="top">enum&#160;v4l2_mpeg_audio_crc</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">CRC method. Possible
147values are:</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_CRC_NONE</code>&#160;</td><td valign="top">None</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_CRC_CRC16</code>&#160;</td><td valign="top">16 bit parity check</td></tr></tbody></table></td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_AUDIO_MUTE</code>&#160;</td><td valign="top">boolean</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Mutes the audio when
148capturing. This is not done by muting audio hardware, which can still
149produce a slight hiss, but in the encoder itself, guaranteeing a fixed
150and reproducible audio bitstream. 0 = unmuted, 1 = muted.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><a name="v4l2-mpeg-audio-dec-playback"></a><code class="constant">V4L2_CID_MPEG_AUDIO_DEC_PLAYBACK</code>&#160;</td><td valign="top">enum&#160;v4l2_mpeg_audio_dec_playback</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Determines how monolingual audio should be played back.
151Possible values are:</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_DEC_PLAYBACK_AUTO</code>&#160;</td><td valign="top">Automatically determines the best playback mode.</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_DEC_PLAYBACK_STEREO</code>&#160;</td><td valign="top">Stereo playback.</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_DEC_PLAYBACK_LEFT</code>&#160;</td><td valign="top">Left channel playback.</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_DEC_PLAYBACK_RIGHT</code>&#160;</td><td valign="top">Right channel playback.</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_DEC_PLAYBACK_MONO</code>&#160;</td><td valign="top">Mono playback.</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_AUDIO_DEC_PLAYBACK_SWAPPED_STEREO</code>&#160;</td><td valign="top">Stereo playback with swapped left and right channels.</td></tr></tbody></table></td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><a name="v4l2-mpeg-audio-dec-multilingual-playback"></a><code class="constant">V4L2_CID_MPEG_AUDIO_DEC_MULTILINGUAL_PLAYBACK</code>&#160;</td><td valign="top">enum&#160;v4l2_mpeg_audio_dec_playback</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Determines how multilingual audio should be played back.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><a name="v4l2-mpeg-video-encoding"></a><code class="constant">V4L2_CID_MPEG_VIDEO_ENCODING</code>&#160;</td><td valign="top">enum&#160;v4l2_mpeg_video_encoding</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">MPEG Video encoding
152method. This control is specific to multiplexed MPEG streams.
153Possible values are:</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_ENCODING_MPEG_1</code>&#160;</td><td valign="top">MPEG-1 Video encoding</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_ENCODING_MPEG_2</code>&#160;</td><td valign="top">MPEG-2 Video encoding</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_ENCODING_MPEG_4_AVC</code>&#160;</td><td valign="top">MPEG-4 AVC (H.264) Video encoding</td></tr></tbody></table></td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><a name="v4l2-mpeg-video-aspect"></a><code class="constant">V4L2_CID_MPEG_VIDEO_ASPECT</code>&#160;</td><td valign="top">enum&#160;v4l2_mpeg_video_aspect</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Video aspect.
154Possible values are:</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_ASPECT_1x1</code>&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_ASPECT_4x3</code>&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_ASPECT_16x9</code>&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_ASPECT_221x100</code>&#160;</td><td class="auto-generated">&#160;</td></tr></tbody></table></td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_B_FRAMES</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Number of B-Frames
155(default 2)</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_GOP_SIZE</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">GOP size (default
15612)</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_GOP_CLOSURE</code>&#160;</td><td valign="top">boolean</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">GOP closure (default
1571)</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_PULLDOWN</code>&#160;</td><td valign="top">boolean</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Enable 3:2 pulldown
158(default 0)</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><a name="v4l2-mpeg-video-bitrate-mode"></a><code class="constant">V4L2_CID_MPEG_VIDEO_BITRATE_MODE</code>&#160;</td><td valign="top">enum&#160;v4l2_mpeg_video_bitrate_mode</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Video bitrate mode.
159Possible values are:</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_BITRATE_MODE_VBR</code>&#160;</td><td valign="top">Variable bitrate</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_BITRATE_MODE_CBR</code>&#160;</td><td valign="top">Constant bitrate</td></tr></tbody></table></td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_BITRATE</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Video bitrate in bits
160per second.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_BITRATE_PEAK</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Peak video bitrate in
161bits per second. Must be larger or equal to the average video bitrate.
162It is ignored if the video bitrate mode is set to constant
163bitrate.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_TEMPORAL_DECIMATION</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">For every captured
164frame, skip this many subsequent frames (default 0).</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_MUTE</code>&#160;</td><td valign="top">boolean</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">"Mutes" the video to a
165fixed color when capturing. This is useful for testing, to produce a
166fixed video bitstream. 0 = unmuted, 1 = muted.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_MUTE_YUV</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Sets the "mute" color
167of the video. The supplied 32-bit integer is interpreted as follows (bit
1680 = least significant bit):</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top">Bit 0:7</td><td valign="top">V chrominance information</td></tr><tr><td valign="top">Bit 8:15</td><td valign="top">U chrominance information</td></tr><tr><td valign="top">Bit 16:23</td><td valign="top">Y luminance information</td></tr><tr><td valign="top">Bit 24:31</td><td valign="top">Must be zero.</td></tr></tbody></table></td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><a name="v4l2-mpeg-video-dec-pts"></a><code class="constant">V4L2_CID_MPEG_VIDEO_DEC_PTS</code>&#160;</td><td valign="top">integer64</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">This read-only control returns the
16933-bit video Presentation Time Stamp as defined in ITU T-REC-H.222.0 and ISO/IEC 13818-1 of
170the currently displayed frame. This is the same PTS as is used in <a class="link" href="vidioc-decoder-cmd.html" title="ioctl VIDIOC_DECODER_CMD, VIDIOC_TRY_DECODER_CMD"><code class="constant">VIDIOC_DECODER_CMD</code></a>.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><a name="v4l2-mpeg-video-dec-frame"></a><code class="constant">V4L2_CID_MPEG_VIDEO_DEC_FRAME</code>&#160;</td><td valign="top">integer64</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">This read-only control returns the
171frame counter of the frame that is currently displayed (decoded). This value is reset to 0 whenever
172the decoder is started.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_DECODER_SLICE_INTERFACE</code>&#160;</td><td valign="top">boolean</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">If enabled the decoder expects to receive a single slice per buffer, otherwise
173the decoder expects a single frame in per buffer. Applicable to the decoder, all codecs.
174</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_H264_VUI_SAR_ENABLE</code>&#160;</td><td valign="top">boolean</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Enable writing sample aspect ratio in the Video Usability Information.
175Applicable to the H264 encoder.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><a name="v4l2-mpeg-video-h264-vui-sar-idc"></a><code class="constant">V4L2_CID_MPEG_VIDEO_H264_VUI_SAR_IDC</code>&#160;</td><td valign="top">enum&#160;v4l2_mpeg_video_h264_vui_sar_idc</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">VUI sample aspect ratio indicator for H.264 encoding. The value
176is defined in the table E-1 in the standard. Applicable to the H264 encoder.</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_UNSPECIFIED</code>&#160;</td><td valign="top">Unspecified</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_1x1</code>&#160;</td><td valign="top">1x1</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_12x11</code>&#160;</td><td valign="top">12x11</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_10x11</code>&#160;</td><td valign="top">10x11</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_16x11</code>&#160;</td><td valign="top">16x11</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_40x33</code>&#160;</td><td valign="top">40x33</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_24x11</code>&#160;</td><td valign="top">24x11</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_20x11</code>&#160;</td><td valign="top">20x11</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_32x11</code>&#160;</td><td valign="top">32x11</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_80x33</code>&#160;</td><td valign="top">80x33</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_18x11</code>&#160;</td><td valign="top">18x11</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_15x11</code>&#160;</td><td valign="top">15x11</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_64x33</code>&#160;</td><td valign="top">64x33</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_160x99</code>&#160;</td><td valign="top">160x99</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_4x3</code>&#160;</td><td valign="top">4x3</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_3x2</code>&#160;</td><td valign="top">3x2</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_2x1</code>&#160;</td><td valign="top">2x1</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_EXTENDED</code>&#160;</td><td valign="top">Extended SAR</td></tr></tbody></table></td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_H264_VUI_EXT_SAR_WIDTH</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Extended sample aspect ratio width for H.264 VUI encoding.
177Applicable to the H264 encoder.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_H264_VUI_EXT_SAR_HEIGHT</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Extended sample aspect ratio height for H.264 VUI encoding.
178Applicable to the H264 encoder.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><a name="v4l2-mpeg-video-h264-level"></a><code class="constant">V4L2_CID_MPEG_VIDEO_H264_LEVEL</code>&#160;</td><td valign="top">enum&#160;v4l2_mpeg_video_h264_level</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">The level information for the H264 video elementary stream.
179Applicable to the H264 encoder.
180Possible values are:</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_LEVEL_1_0</code>&#160;</td><td valign="top">Level 1.0</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_LEVEL_1B</code>&#160;</td><td valign="top">Level 1B</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_LEVEL_1_1</code>&#160;</td><td valign="top">Level 1.1</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_LEVEL_1_2</code>&#160;</td><td valign="top">Level 1.2</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_LEVEL_1_3</code>&#160;</td><td valign="top">Level 1.3</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_LEVEL_2_0</code>&#160;</td><td valign="top">Level 2.0</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_LEVEL_2_1</code>&#160;</td><td valign="top">Level 2.1</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_LEVEL_2_2</code>&#160;</td><td valign="top">Level 2.2</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_LEVEL_3_0</code>&#160;</td><td valign="top">Level 3.0</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_LEVEL_3_1</code>&#160;</td><td valign="top">Level 3.1</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_LEVEL_3_2</code>&#160;</td><td valign="top">Level 3.2</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_LEVEL_4_0</code>&#160;</td><td valign="top">Level 4.0</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_LEVEL_4_1</code>&#160;</td><td valign="top">Level 4.1</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_LEVEL_4_2</code>&#160;</td><td valign="top">Level 4.2</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_LEVEL_5_0</code>&#160;</td><td valign="top">Level 5.0</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_LEVEL_5_1</code>&#160;</td><td valign="top">Level 5.1</td></tr></tbody></table></td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><a name="v4l2-mpeg-video-mpeg4-level"></a><code class="constant">V4L2_CID_MPEG_VIDEO_MPEG4_LEVEL</code>&#160;</td><td valign="top">enum&#160;v4l2_mpeg_video_mpeg4_level</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">The level information for the MPEG4 elementary stream.
181Applicable to the MPEG4 encoder.
182Possible values are:</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_LEVEL_0</code>&#160;</td><td valign="top">Level 0</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_LEVEL_0B</code>&#160;</td><td valign="top">Level 0b</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_LEVEL_1</code>&#160;</td><td valign="top">Level 1</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_LEVEL_2</code>&#160;</td><td valign="top">Level 2</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_LEVEL_3</code>&#160;</td><td valign="top">Level 3</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_LEVEL_3B</code>&#160;</td><td valign="top">Level 3b</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_LEVEL_4</code>&#160;</td><td valign="top">Level 4</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_LEVEL_5</code>&#160;</td><td valign="top">Level 5</td></tr></tbody></table></td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><a name="v4l2-mpeg-video-h264-profile"></a><code class="constant">V4L2_CID_MPEG_VIDEO_H264_PROFILE</code>&#160;</td><td valign="top">enum&#160;v4l2_mpeg_video_h264_profile</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">The profile information for H264.
183Applicable to the H264 encoder.
184Possible values are:</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_PROFILE_BASELINE</code>&#160;</td><td valign="top">Baseline profile</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_PROFILE_CONSTRAINED_BASELINE</code>&#160;</td><td valign="top">Constrained Baseline profile</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_PROFILE_MAIN</code>&#160;</td><td valign="top">Main profile</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_PROFILE_EXTENDED</code>&#160;</td><td valign="top">Extended profile</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_PROFILE_HIGH</code>&#160;</td><td valign="top">High profile</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_PROFILE_HIGH_10</code>&#160;</td><td valign="top">High 10 profile</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_PROFILE_HIGH_422</code>&#160;</td><td valign="top">High 422 profile</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_PROFILE_HIGH_444_PREDICTIVE</code>&#160;</td><td valign="top">High 444 Predictive profile</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_PROFILE_HIGH_10_INTRA</code>&#160;</td><td valign="top">High 10 Intra profile</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_PROFILE_HIGH_422_INTRA</code>&#160;</td><td valign="top">High 422 Intra profile</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_PROFILE_HIGH_444_INTRA</code>&#160;</td><td valign="top">High 444 Intra profile</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_PROFILE_CAVLC_444_INTRA</code>&#160;</td><td valign="top">CAVLC 444 Intra profile</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_PROFILE_SCALABLE_BASELINE</code>&#160;</td><td valign="top">Scalable Baseline profile</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_PROFILE_SCALABLE_HIGH</code>&#160;</td><td valign="top">Scalable High profile</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_PROFILE_SCALABLE_HIGH_INTRA</code>&#160;</td><td valign="top">Scalable High Intra profile</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_PROFILE_STEREO_HIGH</code>&#160;</td><td valign="top">Stereo High profile</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_PROFILE_MULTIVIEW_HIGH</code>&#160;</td><td valign="top">Multiview High profile</td></tr></tbody></table></td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><a name="v4l2-mpeg-video-mpeg4-profile"></a><code class="constant">V4L2_CID_MPEG_VIDEO_MPEG4_PROFILE</code>&#160;</td><td valign="top">enum&#160;v4l2_mpeg_video_mpeg4_profile</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">The profile information for MPEG4.
185Applicable to the MPEG4 encoder.
186Possible values are:</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_PROFILE_SIMPLE</code>&#160;</td><td valign="top">Simple profile</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_PROFILE_ADVANCED_SIMPLE</code>&#160;</td><td valign="top">Advanced Simple profile</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_PROFILE_CORE</code>&#160;</td><td valign="top">Core profile</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_PROFILE_SIMPLE_SCALABLE</code>&#160;</td><td valign="top">Simple Scalable profile</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_PROFILE_ADVANCED_CODING_EFFICIENCY</code>&#160;</td><td valign="top">&#160;</td></tr></tbody></table></td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_MAX_REF_PIC</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">The maximum number of reference pictures used for encoding.
187Applicable to the encoder.
188</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><a name="v4l2-mpeg-video-multi-slice-mode"></a><code class="constant">V4L2_CID_MPEG_VIDEO_MULTI_SLICE_MODE</code>&#160;</td><td valign="top">enum&#160;v4l2_mpeg_video_multi_slice_mode</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Determines how the encoder should handle division of frame into slices.
189Applicable to the encoder.
190Possible values are:</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_MULTI_SLICE_MODE_SINGLE</code>&#160;</td><td valign="top">Single slice per frame.</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_MULTI_SLICE_MODE_MAX_MB</code>&#160;</td><td valign="top">Multiple slices with set maximum number of macroblocks per slice.</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_MULTI_SLICE_MODE_MAX_BYTES</code>&#160;</td><td valign="top">Multiple slice with set maximum size in bytes per slice.</td></tr></tbody></table></td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_MULTI_SLICE_MAX_MB</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">The maximum number of macroblocks in a slice. Used when
191<code class="constant">V4L2_CID_MPEG_VIDEO_MULTI_SLICE_MODE</code> is set to <code class="constant">V4L2_MPEG_VIDEO_MULTI_SLICE_MODE_MAX_MB</code>.
192Applicable to the encoder.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_MULTI_SLICE_MAX_BYTES</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">The maximum size of a slice in bytes. Used when
193<code class="constant">V4L2_CID_MPEG_VIDEO_MULTI_SLICE_MODE</code> is set to <code class="constant">V4L2_MPEG_VIDEO_MULTI_SLICE_MODE_MAX_BYTES</code>.
194Applicable to the encoder.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><a name="v4l2-mpeg-video-h264-loop-filter-mode"></a><code class="constant">V4L2_CID_MPEG_VIDEO_H264_LOOP_FILTER_MODE</code>&#160;</td><td valign="top">enum&#160;v4l2_mpeg_video_h264_loop_filter_mode</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Loop filter mode for H264 encoder.
195Possible values are:</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_LOOP_FILTER_MODE_ENABLED</code>&#160;</td><td valign="top">Loop filter is enabled.</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_LOOP_FILTER_MODE_DISABLED</code>&#160;</td><td valign="top">Loop filter is disabled.</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_LOOP_FILTER_MODE_DISABLED_AT_SLICE_BOUNDARY</code>&#160;</td><td valign="top">Loop filter is disabled at the slice boundary.</td></tr></tbody></table></td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_H264_LOOP_FILTER_ALPHA</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Loop filter alpha coefficient, defined in the H264 standard.
196Applicable to the H264 encoder.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_H264_LOOP_FILTER_BETA</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Loop filter beta coefficient, defined in the H264 standard.
197Applicable to the H264 encoder.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><a name="v4l2-mpeg-video-h264-entropy-mode"></a><code class="constant">V4L2_CID_MPEG_VIDEO_H264_ENTROPY_MODE</code>&#160;</td><td valign="top">enum&#160;v4l2_mpeg_video_h264_entropy_mode</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Entropy coding mode for H264 - CABAC/CAVALC.
198Applicable to the H264 encoder.
199Possible values are:</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_ENTROPY_MODE_CAVLC</code>&#160;</td><td valign="top">Use CAVLC entropy coding.</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_ENTROPY_MODE_CABAC</code>&#160;</td><td valign="top">Use CABAC entropy coding.</td></tr></tbody></table></td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_H264_8X8_TRANSFORM</code>&#160;</td><td valign="top">boolean</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Enable 8X8 transform for H264. Applicable to the H264 encoder.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_CYCLIC_INTRA_REFRESH_MB</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Cyclic intra macroblock refresh. This is the number of continuous macroblocks
200refreshed every frame. Each frame a successive set of macroblocks is refreshed until the cycle completes and starts from the
201top of the frame. Applicable to H264, H263 and MPEG4 encoder.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_FRAME_RC_ENABLE</code>&#160;</td><td valign="top">boolean</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Frame level rate control enable.
202If this control is disabled then the quantization parameter for each frame type is constant and set with appropriate controls
203(e.g. <code class="constant">V4L2_CID_MPEG_VIDEO_H263_I_FRAME_QP</code>).
204If frame rate control is enabled then quantization parameter is adjusted to meet the chosen bitrate. Minimum and maximum value
205for the quantization parameter can be set with appropriate controls (e.g. <code class="constant">V4L2_CID_MPEG_VIDEO_H263_MIN_QP</code>).
206Applicable to encoders.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_MB_RC_ENABLE</code>&#160;</td><td valign="top">boolean</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Macroblock level rate control enable.
207Applicable to the MPEG4 and H264 encoders.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_MPEG4_QPEL</code>&#160;</td><td valign="top">boolean</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Quarter pixel motion estimation for MPEG4. Applicable to the MPEG4 encoder.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_H263_I_FRAME_QP</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Quantization parameter for an I frame for H263. Valid range: from 1 to 31.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_H263_MIN_QP</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Minimum quantization parameter for H263. Valid range: from 1 to 31.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_H263_MAX_QP</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Maximum quantization parameter for H263. Valid range: from 1 to 31.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_H263_P_FRAME_QP</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Quantization parameter for an P frame for H263. Valid range: from 1 to 31.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_H263_B_FRAME_QP</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Quantization parameter for an B frame for H263. Valid range: from 1 to 31.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_H264_I_FRAME_QP</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Quantization parameter for an I frame for H264. Valid range: from 0 to 51.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_H264_MIN_QP</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Minimum quantization parameter for H264. Valid range: from 0 to 51.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_H264_MAX_QP</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Maximum quantization parameter for H264. Valid range: from 0 to 51.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_H264_P_FRAME_QP</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Quantization parameter for an P frame for H264. Valid range: from 0 to 51.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_H264_B_FRAME_QP</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Quantization parameter for an B frame for H264. Valid range: from 0 to 51.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_MPEG4_I_FRAME_QP</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Quantization parameter for an I frame for MPEG4. Valid range: from 1 to 31.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_MPEG4_MIN_QP</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Minimum quantization parameter for MPEG4. Valid range: from 1 to 31.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_MPEG4_MAX_QP</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Maximum quantization parameter for MPEG4. Valid range: from 1 to 31.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_MPEG4_P_FRAME_QP</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Quantization parameter for an P frame for MPEG4. Valid range: from 1 to 31.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_MPEG4_B_FRAME_QP</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Quantization parameter for an B frame for MPEG4. Valid range: from 1 to 31.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_VBV_SIZE</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">The Video Buffer Verifier size in kilobytes, it is used as a limitation of frame skip.
208The VBV is defined in the standard as a mean to verify that the produced stream will be successfully decoded.
209The standard describes it as "Part of a hypothetical decoder that is conceptually connected to the
210output of the encoder. Its purpose is to provide a constraint on the variability of the data rate that an
211encoder or editing process may produce.".
212Applicable to the MPEG1, MPEG2, MPEG4 encoders.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><a name="v4l2-mpeg-video-vbv-delay"></a><code class="constant">V4L2_CID_MPEG_VIDEO_VBV_DELAY</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Sets the initial delay in milliseconds for
213VBV buffer control.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><a name="v4l2-mpeg-video-hor-search-range"></a><code class="constant">V4L2_CID_MPEG_VIDEO_MV_H_SEARCH_RANGE</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Horizontal search range defines maximum horizontal search area in pixels
214to search and match for the present Macroblock (MB) in the reference picture. This V4L2 control macro is used to set
215horizontal search range for motion estimation module in video encoder.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><a name="v4l2-mpeg-video-vert-search-range"></a><code class="constant">V4L2_CID_MPEG_VIDEO_MV_V_SEARCH_RANGE</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Vertical search range defines maximum vertical search area in pixels
216to search and match for the present Macroblock (MB) in the reference picture. This V4L2 control macro is used to set
217vertical search range for motion estimation module in video encoder.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_H264_CPB_SIZE</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">The Coded Picture Buffer size in kilobytes, it is used as a limitation of frame skip.
218The CPB is defined in the H264 standard as a mean to verify that the produced stream will be successfully decoded.
219Applicable to the H264 encoder.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_H264_I_PERIOD</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Period between I-frames in the open GOP for H264. In case of an open GOP
220this is the period between two I-frames. The period between IDR (Instantaneous Decoding Refresh) frames is taken from the GOP_SIZE control.
221An IDR frame, which stands for Instantaneous Decoding Refresh is an I-frame after which no prior frames are
222referenced. This means that a stream can be restarted from an IDR frame without the need to store or decode any
223previous frames. Applicable to the H264 encoder.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><a name="v4l2-mpeg-video-header-mode"></a><code class="constant">V4L2_CID_MPEG_VIDEO_HEADER_MODE</code>&#160;</td><td valign="top">enum&#160;v4l2_mpeg_video_header_mode</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Determines whether the header is returned as the first buffer or is
224it returned together with the first frame. Applicable to encoders.
225Possible values are:</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_HEADER_MODE_SEPARATE</code>&#160;</td><td valign="top">The stream header is returned separately in the first buffer.</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_HEADER_MODE_JOINED_WITH_1ST_FRAME</code>&#160;</td><td valign="top">The stream header is returned together with the first encoded frame.</td></tr></tbody></table></td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_REPEAT_SEQ_HEADER</code>&#160;</td><td valign="top">boolean</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Repeat the video sequence headers. Repeating these
226headers makes random access to the video stream easier. Applicable to the MPEG1, 2 and 4 encoder.</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_DECODER_MPEG4_DEBLOCK_FILTER</code>&#160;</td><td valign="top">boolean</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Enabled the deblocking post processing filter for MPEG4 decoder.
227Applicable to the MPEG4 decoder.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_MPEG4_VOP_TIME_RES</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">vop_time_increment_resolution value for MPEG4. Applicable to the MPEG4 encoder.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_MPEG4_VOP_TIME_INC</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">vop_time_increment value for MPEG4. Applicable to the MPEG4 encoder.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_H264_SEI_FRAME_PACKING</code>&#160;</td><td valign="top">boolean</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Enable generation of frame packing supplemental enhancement information in the encoded bitstream.
228The frame packing SEI message contains the arrangement of L and R planes for 3D viewing. Applicable to the H264 encoder.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_H264_SEI_FP_CURRENT_FRAME_0</code>&#160;</td><td valign="top">boolean</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Sets current frame as frame0 in frame packing SEI.
229Applicable to the H264 encoder.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><a name="v4l2-mpeg-video-h264-sei-fp-arrangement-type"></a><code class="constant">V4L2_CID_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE</code>&#160;</td><td valign="top">enum&#160;v4l2_mpeg_video_h264_sei_fp_arrangement_type</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Frame packing arrangement type for H264 SEI.
230Applicable to the H264 encoder.
231Possible values are:</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_CHEKERBOARD</code>&#160;</td><td valign="top">Pixels are alternatively from L and R.</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_COLUMN</code>&#160;</td><td valign="top">L and R are interlaced by column.</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_ROW</code>&#160;</td><td valign="top">L and R are interlaced by row.</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_SIDE_BY_SIDE</code>&#160;</td><td valign="top">L is on the left, R on the right.</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_TOP_BOTTOM</code>&#160;</td><td valign="top">L is on top, R on bottom.</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_TEMPORAL</code>&#160;</td><td valign="top">One view per frame.</td></tr></tbody></table></td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_H264_FMO</code>&#160;</td><td valign="top">boolean</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Enables flexible macroblock ordering in the encoded bitstream. It is a technique
232used for restructuring the ordering of macroblocks in pictures. Applicable to the H264 encoder.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><a name="v4l2-mpeg-video-h264-fmo-map-type"></a><code class="constant">V4L2_CID_MPEG_VIDEO_H264_FMO_MAP_TYPE</code>&#160;</td><td valign="top">enum&#160;v4l2_mpeg_video_h264_fmo_map_type</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">When using FMO, the map type divides the image in different scan patterns of macroblocks.
233Applicable to the H264 encoder.
234Possible values are:</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_INTERLEAVED_SLICES</code>&#160;</td><td valign="top">Slices are interleaved one after other with macroblocks in run length order.</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_SCATTERED_SLICES</code>&#160;</td><td valign="top">Scatters the macroblocks based on a mathematical function known to both encoder and decoder.</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_FOREGROUND_WITH_LEFT_OVER</code>&#160;</td><td valign="top">Macroblocks arranged in rectangular areas or regions of interest.</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_BOX_OUT</code>&#160;</td><td valign="top">Slice groups grow in a cyclic way from centre to outwards.</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_RASTER_SCAN</code>&#160;</td><td valign="top">Slice groups grow in raster scan pattern from left to right.</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_WIPE_SCAN</code>&#160;</td><td valign="top">Slice groups grow in wipe scan pattern from top to bottom.</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_EXPLICIT</code>&#160;</td><td valign="top">User defined map type.</td></tr></tbody></table></td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_H264_FMO_SLICE_GROUP</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Number of slice groups in FMO.
235Applicable to the H264 encoder.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><a name="v4l2-mpeg-video-h264-fmo-change-direction"></a><code class="constant">V4L2_CID_MPEG_VIDEO_H264_FMO_CHANGE_DIRECTION</code>&#160;</td><td valign="top">enum&#160;v4l2_mpeg_video_h264_fmo_change_dir</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Specifies a direction of the slice group change for raster and wipe maps.
236Applicable to the H264 encoder.
237Possible values are:</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_FMO_CHANGE_DIR_RIGHT</code>&#160;</td><td valign="top">Raster scan or wipe right.</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_FMO_CHANGE_DIR_LEFT</code>&#160;</td><td valign="top">Reverse raster scan or wipe left.</td></tr></tbody></table></td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_H264_FMO_CHANGE_RATE</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Specifies the size of the first slice group for raster and wipe map.
238Applicable to the H264 encoder.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_H264_FMO_RUN_LENGTH</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Specifies the number of consecutive macroblocks for the interleaved map.
239Applicable to the H264 encoder.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_H264_ASO</code>&#160;</td><td valign="top">boolean</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Enables arbitrary slice ordering in encoded bitstream.
240Applicable to the H264 encoder.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_H264_ASO_SLICE_ORDER</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Specifies the slice order in ASO. Applicable to the H264 encoder.
241The supplied 32-bit integer is interpreted as follows (bit
2420 = least significant bit):</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top">Bit 0:15</td><td valign="top">Slice ID</td></tr><tr><td valign="top">Bit 16:32</td><td valign="top">Slice position or order</td></tr></tbody></table></td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_H264_HIERARCHICAL_CODING</code>&#160;</td><td valign="top">boolean</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Enables H264 hierarchical coding.
243Applicable to the H264 encoder.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><a name="v4l2-mpeg-video-h264-hierarchical-coding-type"></a><code class="constant">V4L2_CID_MPEG_VIDEO_H264_HIERARCHICAL_CODING_TYPE</code>&#160;</td><td valign="top">enum&#160;v4l2_mpeg_video_h264_hierarchical_coding_type</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Specifies the hierarchical coding type.
244Applicable to the H264 encoder.
245Possible values are:</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_HIERARCHICAL_CODING_B</code>&#160;</td><td valign="top">Hierarchical B coding.</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_VIDEO_H264_HIERARCHICAL_CODING_P</code>&#160;</td><td valign="top">Hierarchical P coding.</td></tr></tbody></table></td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_H264_HIERARCHICAL_CODING_LAYER</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Specifies the number of hierarchical coding layers.
246Applicable to the H264 encoder.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_H264_HIERARCHICAL_CODING_LAYER_QP</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Specifies a user defined QP for each layer. Applicable to the H264 encoder.
247The supplied 32-bit integer is interpreted as follows (bit
2480 = least significant bit):</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top">Bit 0:15</td><td valign="top">QP value</td></tr><tr><td valign="top">Bit 16:32</td><td valign="top">Layer number</td></tr></tbody></table></td></tr></tbody></table></div></div><br class="table-break"></div><div class="section"><div class="titlepage"><div><div><h4 class="title"><a name="idp1097415380"></a>MFC 5.1 MPEG Controls</h4></div></div></div><p>The following MPEG class controls deal with MPEG
249decoding and encoding settings that are specific to the Multi Format Codec 5.1 device present
250in the S5P family of SoCs by Samsung.
251</p><div class="table"><a name="mfc51-control-id"></a><p class="title"><b>Table&#160;1.3.&#160;MFC 5.1 Control IDs</b></p><div class="table-contents"><table summary="MFC 5.1 Control IDs" width="100%" border="0"><colgroup><col class="c1"><col class="c2"><col class="c3"><col class="c4"></colgroup><thead><tr><th colspan="2" align="left">ID</th><th align="left">Type</th><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><th colspan="3" align="left">Description</th></tr></thead><tbody valign="top"><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_MFC51_VIDEO_DECODER_H264_DISPLAY_DELAY_ENABLE</code>&#160;</td><td valign="top">boolean</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">If the display delay is enabled then the decoder is forced to return a
252CAPTURE buffer (decoded frame) after processing a certain number of OUTPUT buffers. The delay can be set through
253<code class="constant">V4L2_CID_MPEG_MFC51_VIDEO_DECODER_H264_DISPLAY_DELAY</code>. This feature can be used for example
254for generating thumbnails of videos. Applicable to the H264 decoder.
255	      </td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_MFC51_VIDEO_DECODER_H264_DISPLAY_DELAY</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Display delay value for H264 decoder.
256The decoder is forced to return a decoded frame after the set 'display delay' number of frames. If this number is
257low it may result in frames returned out of dispaly order, in addition the hardware may still be using the returned buffer
258as a reference picture for subsequent frames.
259</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_MFC51_VIDEO_H264_NUM_REF_PIC_FOR_P</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">The number of reference pictures used for encoding a P picture.
260Applicable to the H264 encoder.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_MFC51_VIDEO_PADDING</code>&#160;</td><td valign="top">boolean</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Padding enable in the encoder - use a color instead of repeating border pixels.
261Applicable to encoders.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_MFC51_VIDEO_PADDING_YUV</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Padding color in the encoder. Applicable to encoders. The supplied 32-bit integer is interpreted as follows (bit
2620 = least significant bit):</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top">Bit 0:7</td><td valign="top">V chrominance information</td></tr><tr><td valign="top">Bit 8:15</td><td valign="top">U chrominance information</td></tr><tr><td valign="top">Bit 16:23</td><td valign="top">Y luminance information</td></tr><tr><td valign="top">Bit 24:31</td><td valign="top">Must be zero.</td></tr></tbody></table></td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_MFC51_VIDEO_RC_REACTION_COEFF</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Reaction coefficient for MFC rate control. Applicable to encoders.
263<p>Note 1: Valid only when the frame level RC is enabled.</p>
264<p>Note 2: For tight CBR, this field must be small (ex. 2 ~ 10).
265For VBR, this field must be large (ex. 100 ~ 1000).</p>
266<p>Note 3: It is not recommended to use the greater number than FRAME_RATE * (10^9 / BIT_RATE).</p>
267</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_MFC51_VIDEO_H264_ADAPTIVE_RC_DARK</code>&#160;</td><td valign="top">boolean</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Adaptive rate control for dark region.
268Valid only when H.264 and macroblock level RC is enabled (<code class="constant">V4L2_CID_MPEG_VIDEO_MB_RC_ENABLE</code>).
269Applicable to the H264 encoder.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_MFC51_VIDEO_H264_ADAPTIVE_RC_SMOOTH</code>&#160;</td><td valign="top">boolean</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Adaptive rate control for smooth region.
270Valid only when H.264 and macroblock level RC is enabled (<code class="constant">V4L2_CID_MPEG_VIDEO_MB_RC_ENABLE</code>).
271Applicable to the H264 encoder.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_MFC51_VIDEO_H264_ADAPTIVE_RC_STATIC</code>&#160;</td><td valign="top">boolean</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Adaptive rate control for static region.
272Valid only when H.264 and macroblock level RC is enabled (<code class="constant">V4L2_CID_MPEG_VIDEO_MB_RC_ENABLE</code>).
273Applicable to the H264 encoder.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_MFC51_VIDEO_H264_ADAPTIVE_RC_ACTIVITY</code>&#160;</td><td valign="top">boolean</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Adaptive rate control for activity region.
274Valid only when H.264 and macroblock level RC is enabled (<code class="constant">V4L2_CID_MPEG_VIDEO_MB_RC_ENABLE</code>).
275Applicable to the H264 encoder.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><a name="v4l2-mpeg-mfc51-video-frame-skip-mode"></a><code class="constant">V4L2_CID_MPEG_MFC51_VIDEO_FRAME_SKIP_MODE</code>&#160;</td><td valign="top">enum&#160;v4l2_mpeg_mfc51_video_frame_skip_mode</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">
276Indicates in what conditions the encoder should skip frames. If encoding a frame would cause the encoded stream to be larger then
277a chosen data limit then the frame will be skipped.
278Possible values are:</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_MPEG_MFC51_FRAME_SKIP_MODE_DISABLED</code>&#160;</td><td valign="top">Frame skip mode is disabled.</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_MFC51_FRAME_SKIP_MODE_LEVEL_LIMIT</code>&#160;</td><td valign="top">Frame skip mode enabled and buffer limit is set by the chosen level and is defined by the standard.</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_MFC51_FRAME_SKIP_MODE_BUF_LIMIT</code>&#160;</td><td valign="top">Frame skip mode enabled and buffer limit is set by the VBV (MPEG1/2/4) or CPB (H264) buffer size control.</td></tr></tbody></table></td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_MFC51_VIDEO_RC_FIXED_TARGET_BIT</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Enable rate-control with fixed target bit.
279If this setting is enabled, then the rate control logic of the encoder will calculate the average bitrate
280for a GOP and keep it below or equal the set bitrate target. Otherwise the rate control logic calculates the
281overall average bitrate for the stream and keeps it below or equal to the set bitrate. In the first case
282the average bitrate for the whole stream will be smaller then the set bitrate. This is caused because the
283average is calculated for smaller number of frames, on the other hand enabling this setting will ensure that
284the stream will meet tight bandwidth contraints. Applicable to encoders.
285</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><a name="v4l2-mpeg-mfc51-video-force-frame-type"></a><code class="constant">V4L2_CID_MPEG_MFC51_VIDEO_FORCE_FRAME_TYPE</code>&#160;</td><td valign="top">enum&#160;v4l2_mpeg_mfc51_video_force_frame_type</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Force a frame type for the next queued buffer. Applicable to encoders.
286Possible values are:</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_MPEG_MFC51_FORCE_FRAME_TYPE_DISABLED</code>&#160;</td><td valign="top">Forcing a specific frame type disabled.</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_MFC51_FORCE_FRAME_TYPE_I_FRAME</code>&#160;</td><td valign="top">Force an I-frame.</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_MFC51_FORCE_FRAME_TYPE_NOT_CODED</code>&#160;</td><td valign="top">Force a non-coded frame.</td></tr></tbody></table></td></tr></tbody></table></div></div><br class="table-break"></div><div class="section"><div class="titlepage"><div><div><h4 class="title"><a name="idp1097455644"></a>CX2341x MPEG Controls</h4></div></div></div><p>The following MPEG class controls deal with MPEG
287encoding settings that are specific to the Conexant CX23415 and
288CX23416 MPEG encoding chips.</p><div class="table"><a name="cx2341x-control-id"></a><p class="title"><b>Table&#160;1.4.&#160;CX2341x Control IDs</b></p><div class="table-contents"><table summary="CX2341x Control IDs" width="100%" border="0"><colgroup><col class="c1"><col class="c2"><col class="c3"><col class="c4"></colgroup><thead><tr><th colspan="2" align="left">ID</th><th align="left">Type</th><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><th colspan="3" align="left">Description</th></tr></thead><tbody valign="top"><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><a name="v4l2-mpeg-cx2341x-video-spatial-filter-mode"></a><code class="constant">V4L2_CID_MPEG_CX2341X_VIDEO_SPATIAL_FILTER_MODE</code>&#160;</td><td valign="top">enum&#160;v4l2_mpeg_cx2341x_video_spatial_filter_mode</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Sets the Spatial
289Filter mode (default <code class="constant">MANUAL</code>). Possible values
290are:</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_MPEG_CX2341X_VIDEO_SPATIAL_FILTER_MODE_MANUAL</code>&#160;</td><td valign="top">Choose the filter manually</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_CX2341X_VIDEO_SPATIAL_FILTER_MODE_AUTO</code>&#160;</td><td valign="top">Choose the filter automatically</td></tr></tbody></table></td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_CX2341X_VIDEO_SPATIAL_FILTER</code>&#160;</td><td valign="top">integer&#160;(0-15)</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">The setting for the
291Spatial Filter. 0 = off, 15 = maximum. (Default is 0.)</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><a name="luma-spatial-filter-type"></a><code class="constant">V4L2_CID_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE</code>&#160;</td><td valign="top">enum&#160;v4l2_mpeg_cx2341x_video_luma_spatial_filter_type</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Select the algorithm
292to use for the Luma Spatial Filter (default
293<code class="constant">1D_HOR</code>). Possible values:</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE_OFF</code>&#160;</td><td valign="top">No filter</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE_1D_HOR</code>&#160;</td><td valign="top">One-dimensional horizontal</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE_1D_VERT</code>&#160;</td><td valign="top">One-dimensional vertical</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE_2D_HV_SEPARABLE</code>&#160;</td><td valign="top">Two-dimensional separable</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE_2D_SYM_NON_SEPARABLE</code>&#160;</td><td valign="top">Two-dimensional symmetrical
294non-separable</td></tr></tbody></table></td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><a name="chroma-spatial-filter-type"></a><code class="constant">V4L2_CID_MPEG_CX2341X_VIDEO_CHROMA_SPATIAL_FILTER_TYPE</code>&#160;</td><td valign="top">enum&#160;v4l2_mpeg_cx2341x_video_chroma_spatial_filter_type</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Select the algorithm
295for the Chroma Spatial Filter (default <code class="constant">1D_HOR</code>).
296Possible values are:</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_MPEG_CX2341X_VIDEO_CHROMA_SPATIAL_FILTER_TYPE_OFF</code>&#160;</td><td valign="top">No filter</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_CX2341X_VIDEO_CHROMA_SPATIAL_FILTER_TYPE_1D_HOR</code>&#160;</td><td valign="top">One-dimensional horizontal</td></tr></tbody></table></td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><a name="v4l2-mpeg-cx2341x-video-temporal-filter-mode"></a><code class="constant">V4L2_CID_MPEG_CX2341X_VIDEO_TEMPORAL_FILTER_MODE</code>&#160;</td><td valign="top">enum&#160;v4l2_mpeg_cx2341x_video_temporal_filter_mode</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Sets the Temporal
297Filter mode (default <code class="constant">MANUAL</code>). Possible values
298are:</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_MPEG_CX2341X_VIDEO_TEMPORAL_FILTER_MODE_MANUAL</code>&#160;</td><td valign="top">Choose the filter manually</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_CX2341X_VIDEO_TEMPORAL_FILTER_MODE_AUTO</code>&#160;</td><td valign="top">Choose the filter automatically</td></tr></tbody></table></td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_CX2341X_VIDEO_TEMPORAL_FILTER</code>&#160;</td><td valign="top">integer&#160;(0-31)</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">The setting for the
299Temporal Filter. 0 = off, 31 = maximum. (Default is 8 for full-scale
300capturing and 0 for scaled capturing.)</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><a name="v4l2-mpeg-cx2341x-video-median-filter-type"></a><code class="constant">V4L2_CID_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE</code>&#160;</td><td valign="top">enum&#160;v4l2_mpeg_cx2341x_video_median_filter_type</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Median Filter Type
301(default <code class="constant">OFF</code>). Possible values are:</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE_OFF</code>&#160;</td><td valign="top">No filter</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE_HOR</code>&#160;</td><td valign="top">Horizontal filter</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE_VERT</code>&#160;</td><td valign="top">Vertical filter</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE_HOR_VERT</code>&#160;</td><td valign="top">Horizontal and vertical filter</td></tr><tr><td valign="top"><code class="constant">V4L2_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE_DIAG</code>&#160;</td><td valign="top">Diagonal filter</td></tr></tbody></table></td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_CX2341X_VIDEO_LUMA_MEDIAN_FILTER_BOTTOM</code>&#160;</td><td valign="top">integer&#160;(0-255)</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Threshold above which
302the luminance median filter is enabled (default 0)</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_CX2341X_VIDEO_LUMA_MEDIAN_FILTER_TOP</code>&#160;</td><td valign="top">integer&#160;(0-255)</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Threshold below which
303the luminance median filter is enabled (default 255)</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_CX2341X_VIDEO_CHROMA_MEDIAN_FILTER_BOTTOM</code>&#160;</td><td valign="top">integer&#160;(0-255)</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Threshold above which
304the chroma median filter is enabled (default 0)</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_CX2341X_VIDEO_CHROMA_MEDIAN_FILTER_TOP</code>&#160;</td><td valign="top">integer&#160;(0-255)</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Threshold below which
305the chroma median filter is enabled (default 255)</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_CX2341X_STREAM_INSERT_NAV_PACKETS</code>&#160;</td><td valign="top">boolean</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">The CX2341X MPEG encoder
306can insert one empty MPEG-2 PES packet into the stream between every
307four video frames. The packet size is 2048 bytes, including the
308packet_start_code_prefix and stream_id fields. The stream_id is 0xBF
309(private stream 2). The payload consists of 0x00 bytes, to be filled
310in by the application. 0 = do not insert, 1 = insert packets.</td></tr></tbody></table></div></div><br class="table-break"></div><div class="section"><div class="titlepage"><div><div><h4 class="title"><a name="idp1097499756"></a>VPX Control Reference</h4></div></div></div><p>The VPX controls include controls for encoding parameters
311      of VPx video codec.</p><div class="table"><a name="vpx-control-id"></a><p class="title"><b>Table&#160;1.5.&#160;VPX Control IDs</b></p><div class="table-contents"><table summary="VPX Control IDs" width="100%" border="0"><colgroup><col class="c1"><col class="c2"><col class="c3"><col class="c4"></colgroup><thead><tr><th colspan="2" align="left">ID</th><th align="left">Type</th><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><th colspan="3" align="left">Description</th></tr></thead><tbody valign="top"><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><a name="v4l2-vpx-num-partitions"></a><code class="constant">V4L2_CID_MPEG_VIDEO_VPX_NUM_PARTITIONS</code></td><td valign="top">enum v4l2_vp8_num_partitions</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">The number of token partitions to use in VP8 encoder.
312Possible values are:</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_VPX_1_PARTITION</code></td><td valign="top">1 coefficient partition</td></tr><tr><td valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_VPX_2_PARTITIONS</code></td><td valign="top">2 coefficient partitions</td></tr><tr><td valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_VPX_4_PARTITIONS</code></td><td valign="top">4 coefficient partitions</td></tr><tr><td valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_VPX_8_PARTITIONS</code></td><td valign="top">8 coefficient partitions</td></tr></tbody></table></td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_VPX_IMD_DISABLE_4X4</code></td><td valign="top">boolean</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Setting this prevents intra 4x4 mode in the intra mode decision.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><a name="v4l2-vpx-num-ref-frames"></a><code class="constant">V4L2_CID_MPEG_VIDEO_VPX_NUM_REF_FRAMES</code></td><td valign="top">enum v4l2_vp8_num_ref_frames</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">The number of reference pictures for encoding P frames.
313Possible values are:</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_VPX_1_REF_FRAME</code></td><td valign="top">Last encoded frame will be searched</td></tr><tr><td valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_VPX_2_REF_FRAME</code></td><td valign="top">Two frames will be searched among the last encoded frame, the golden frame
314and the alternate reference (altref) frame. The encoder implementation will decide which two are chosen.</td></tr><tr><td valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_VPX_3_REF_FRAME</code></td><td valign="top">The last encoded frame, the golden frame and the altref frame will be searched.</td></tr></tbody></table></td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_VPX_FILTER_LEVEL</code></td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Indicates the loop filter level. The adjustment of the loop
315filter level is done via a delta value against a baseline loop filter value.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_VPX_FILTER_SHARPNESS</code></td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">This parameter affects the loop filter. Anything above
316zero weakens the deblocking effect on the loop filter.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_VPX_GOLDEN_FRAME_REF_PERIOD</code></td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Sets the refresh period for the golden frame. The period is defined
317in number of frames. For a value of 'n', every nth frame starting from the first key frame will be taken as a golden frame.
318For eg. for encoding sequence of 0, 1, 2, 3, 4, 5, 6, 7 where the golden frame refresh period is set as 4, the frames
3190, 4, 8 etc will be taken as the golden frames as frame 0 is always a key frame.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><a name="v4l2-vpx-golden-frame-sel"></a><code class="constant">V4L2_CID_MPEG_VIDEO_VPX_GOLDEN_FRAME_SEL</code></td><td valign="top">enum v4l2_vp8_golden_frame_sel</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Selects the golden frame for encoding.
320Possible values are:</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_VPX_GOLDEN_FRAME_USE_PREV</code></td><td valign="top">Use the (n-2)th frame as a golden frame, current frame index being 'n'.</td></tr><tr><td valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_VPX_GOLDEN_FRAME_USE_REF_PERIOD</code></td><td valign="top">Use the previous specific frame indicated by
321V4L2_CID_MPEG_VIDEO_VPX_GOLDEN_FRAME_REF_PERIOD as a golden frame.</td></tr></tbody></table></td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_VPX_MIN_QP</code></td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Minimum quantization parameter for VP8.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_VPX_MAX_QP</code></td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Maximum quantization parameter for VP8.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_VPX_I_FRAME_QP</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Quantization parameter for an I frame for VP8.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_VPX_P_FRAME_QP</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Quantization parameter for a P frame for VP8.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_MPEG_VIDEO_VPX_PROFILE</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Select the desired profile for VPx encoder.
322Acceptable values are 0, 1, 2 and 3 corresponding to encoder profiles 0, 1, 2 and 3.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr></tbody></table></div></div><br class="table-break"></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="camera-controls"></a>Camera Control Reference</h3></div></div></div><p>The Camera class includes controls for mechanical (or
323equivalent digital) features of a device such as controllable lenses
324or sensors.</p><div class="table"><a name="camera-control-id"></a><p class="title"><b>Table&#160;1.6.&#160;Camera Control IDs</b></p><div class="table-contents"><table summary="Camera Control IDs" width="100%" border="0"><colgroup><col class="c1"><col class="c2"><col class="c3"><col class="c4"></colgroup><thead><tr><th colspan="2" align="left">ID</th><th align="left">Type</th><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><th colspan="3" align="left">Description</th></tr></thead><tbody valign="top"><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_CAMERA_CLASS</code>&#160;</td><td valign="top">class</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">The Camera class
325descriptor. Calling <a class="link" href="vidioc-queryctrl.html" title="ioctl VIDIOC_QUERYCTRL, VIDIOC_QUERY_EXT_CTRL, VIDIOC_QUERYMENU"><code class="constant">VIDIOC_QUERYCTRL</code></a> for this control will return a
326description of this control class.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><a name="v4l2-exposure-auto-type"></a><code class="constant">V4L2_CID_EXPOSURE_AUTO</code>&#160;</td><td valign="top">enum&#160;v4l2_exposure_auto_type</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Enables automatic
327adjustments of the exposure time and/or iris aperture. The effect of
328manual changes of the exposure time or iris aperture while these
329features are enabled is undefined, drivers should ignore such
330requests. Possible values are:</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_EXPOSURE_AUTO</code>&#160;</td><td valign="top">Automatic exposure time, automatic iris
331aperture.</td></tr><tr><td valign="top"><code class="constant">V4L2_EXPOSURE_MANUAL</code>&#160;</td><td valign="top">Manual exposure time, manual iris.</td></tr><tr><td valign="top"><code class="constant">V4L2_EXPOSURE_SHUTTER_PRIORITY</code>&#160;</td><td valign="top">Manual exposure time, auto iris.</td></tr><tr><td valign="top"><code class="constant">V4L2_EXPOSURE_APERTURE_PRIORITY</code>&#160;</td><td valign="top">Auto exposure time, manual iris.</td></tr></tbody></table></td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_EXPOSURE_ABSOLUTE</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Determines the exposure
332time of the camera sensor. The exposure time is limited by the frame
333interval. Drivers should interpret the values as 100 &#181;s units,
334where the value 1 stands for 1/10000th of a second, 10000 for 1 second
335and 100000 for 10 seconds.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_EXPOSURE_AUTO_PRIORITY</code>&#160;</td><td valign="top">boolean</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">When
336<code class="constant">V4L2_CID_EXPOSURE_AUTO</code> is set to
337<code class="constant">AUTO</code> or <code class="constant">APERTURE_PRIORITY</code>,
338this control determines if the device may dynamically vary the frame
339rate. By default this feature is disabled (0) and the frame rate must
340remain constant.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_EXPOSURE_BIAS</code>&#160;</td><td valign="top">integer menu</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"> Determines the automatic
341exposure compensation, it is effective only when <code class="constant">V4L2_CID_EXPOSURE_AUTO</code>
342control is set to <code class="constant">AUTO</code>, <code class="constant">SHUTTER_PRIORITY </code>
343or <code class="constant">APERTURE_PRIORITY</code>.
344It is expressed in terms of EV, drivers should interpret the values as 0.001 EV
345units, where the value 1000 stands for +1 EV.
346<p>Increasing the exposure compensation value is equivalent to decreasing
347the exposure value (EV) and will increase the amount of light at the image
348sensor. The camera performs the exposure compensation by adjusting absolute
349exposure time and/or aperture.</p></td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><a name="v4l2-exposure-metering"></a><code class="constant">V4L2_CID_EXPOSURE_METERING</code>&#160;</td><td valign="top">enum&#160;v4l2_exposure_metering</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Determines how the camera measures
350the amount of light available for the frame exposure. Possible values are:</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_EXPOSURE_METERING_AVERAGE</code>&#160;</td><td valign="top">Use the light information coming from the entire frame
351and average giving no weighting to any particular portion of the metered area.
352		  </td></tr><tr><td valign="top"><code class="constant">V4L2_EXPOSURE_METERING_CENTER_WEIGHTED</code>&#160;</td><td valign="top">Average the light information coming from the entire frame
353giving priority to the center of the metered area.</td></tr><tr><td valign="top"><code class="constant">V4L2_EXPOSURE_METERING_SPOT</code>&#160;</td><td valign="top">Measure only very small area at the center of the frame.</td></tr><tr><td valign="top"><code class="constant">V4L2_EXPOSURE_METERING_MATRIX</code>&#160;</td><td valign="top">A multi-zone metering. The light intensity is measured
354in several points of the frame and the the results are combined. The
355algorithm of the zones selection and their significance in calculating the
356final value is device dependent.</td></tr></tbody></table></td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_PAN_RELATIVE</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">This control turns the
357camera horizontally by the specified amount. The unit is undefined. A
358positive value moves the camera to the right (clockwise when viewed
359from above), a negative value to the left. A value of zero does not
360cause motion. This is a write-only control.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_TILT_RELATIVE</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">This control turns the
361camera vertically by the specified amount. The unit is undefined. A
362positive value moves the camera up, a negative value down. A value of
363zero does not cause motion. This is a write-only control.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_PAN_RESET</code>&#160;</td><td valign="top">button</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">When this control is set,
364the camera moves horizontally to the default position.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_TILT_RESET</code>&#160;</td><td valign="top">button</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">When this control is set,
365the camera moves vertically to the default position.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_PAN_ABSOLUTE</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">This control
366turns the camera horizontally to the specified position. Positive
367values move the camera to the right (clockwise when viewed from above),
368negative values to the left. Drivers should interpret the values as arc
369seconds, with valid values between -180 * 3600 and +180 * 3600
370inclusive.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_TILT_ABSOLUTE</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">This control
371turns the camera vertically to the specified position. Positive values
372move the camera up, negative values down. Drivers should interpret the
373values as arc seconds, with valid values between -180 * 3600 and +180
374* 3600 inclusive.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_FOCUS_ABSOLUTE</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">This control sets the
375focal point of the camera to the specified position. The unit is
376undefined. Positive values set the focus closer to the camera,
377negative values towards infinity.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_FOCUS_RELATIVE</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">This control moves the
378focal point of the camera by the specified amount. The unit is
379undefined. Positive values move the focus closer to the camera,
380negative values towards infinity. This is a write-only control.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_FOCUS_AUTO</code>&#160;</td><td valign="top">boolean</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Enables continuous automatic
381focus adjustments. The effect of manual focus adjustments while this feature
382is enabled is undefined, drivers should ignore such requests.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_AUTO_FOCUS_START</code>&#160;</td><td valign="top">button</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Starts single auto focus process.
383The effect of setting this control when <code class="constant">V4L2_CID_FOCUS_AUTO</code>
384is set to <code class="constant">TRUE</code> (1) is undefined, drivers should ignore
385such requests.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_AUTO_FOCUS_STOP</code>&#160;</td><td valign="top">button</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Aborts automatic focusing
386started with <code class="constant">V4L2_CID_AUTO_FOCUS_START</code> control. It is
387effective only when the continuous autofocus is disabled, that is when
388<code class="constant">V4L2_CID_FOCUS_AUTO</code> control is set to <code class="constant">FALSE
389</code> (0).</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><a name="v4l2-auto-focus-status"></a>
390	      <code class="constant">V4L2_CID_AUTO_FOCUS_STATUS</code>&#160;</td><td valign="top">bitmask</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">The automatic focus status. This is a read-only
391	  control.</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_AUTO_FOCUS_STATUS_IDLE</code>&#160;</td><td valign="top">Automatic focus is not active.</td></tr><tr><td valign="top"><code class="constant">V4L2_AUTO_FOCUS_STATUS_BUSY</code>&#160;</td><td valign="top">Automatic focusing is in progress.</td></tr><tr><td valign="top"><code class="constant">V4L2_AUTO_FOCUS_STATUS_REACHED</code>&#160;</td><td valign="top">Focus has been reached.</td></tr><tr><td valign="top"><code class="constant">V4L2_AUTO_FOCUS_STATUS_FAILED</code>&#160;</td><td valign="top">Automatic focus has failed, the driver will not
392		  transition from this state until another action is
393		  performed by an application.</td></tr></tbody></table></td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">
394Setting <code class="constant">V4L2_LOCK_FOCUS</code> lock bit of the <code class="constant">V4L2_CID_3A_LOCK
395</code> control may stop updates of the <code class="constant">V4L2_CID_AUTO_FOCUS_STATUS</code>
396control value.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><a name="v4l2-auto-focus-range"></a>
397	      <code class="constant">V4L2_CID_AUTO_FOCUS_RANGE</code>&#160;</td><td valign="top">enum&#160;v4l2_auto_focus_range</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Determines auto focus distance range
398for which lens may be adjusted. </td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_AUTO_FOCUS_RANGE_AUTO</code>&#160;</td><td valign="top">The camera automatically selects the focus range.</td></tr><tr><td valign="top"><code class="constant">V4L2_AUTO_FOCUS_RANGE_NORMAL</code>&#160;</td><td valign="top">Normal distance range, limited for best automatic focus
399performance.</td></tr><tr><td valign="top"><code class="constant">V4L2_AUTO_FOCUS_RANGE_MACRO</code>&#160;</td><td valign="top">Macro (close-up) auto focus. The camera will
400use its minimum possible distance for auto focus.</td></tr><tr><td valign="top"><code class="constant">V4L2_AUTO_FOCUS_RANGE_INFINITY</code>&#160;</td><td valign="top">The lens is set to focus on an object at infinite distance.</td></tr></tbody></table></td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_ZOOM_ABSOLUTE</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Specify the objective lens
401focal length as an absolute value. The zoom unit is driver-specific and its
402value should be a positive integer.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_ZOOM_RELATIVE</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Specify the objective lens
403focal length relatively to the current value. Positive values move the zoom
404lens group towards the telephoto direction, negative values towards the
405wide-angle direction. The zoom unit is driver-specific. This is a write-only control.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_ZOOM_CONTINUOUS</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Move the objective lens group
406at the specified speed until it reaches physical device limits or until an
407explicit request to stop the movement. A positive value moves the zoom lens
408group towards the telephoto direction. A value of zero stops the zoom lens
409group movement. A negative value moves the zoom lens group towards the
410wide-angle direction. The zoom speed unit is driver-specific.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_IRIS_ABSOLUTE</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">This control sets the
411camera's aperture to the specified value. The unit is undefined.
412Larger values open the iris wider, smaller values close it.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_IRIS_RELATIVE</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">This control modifies the
413camera's aperture by the specified amount. The unit is undefined.
414Positive values open the iris one step further, negative values close
415it one step further. This is a write-only control.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_PRIVACY</code>&#160;</td><td valign="top">boolean</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Prevent video from being acquired
416by the camera. When this control is set to <code class="constant">TRUE</code> (1), no
417image can be captured by the camera. Common means to enforce privacy are
418mechanical obturation of the sensor and firmware image processing, but the
419device is not restricted to these methods. Devices that implement the privacy
420control must support read access and may support write access.</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_BAND_STOP_FILTER</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Switch the band-stop filter of a
421camera sensor on or off, or specify its strength. Such band-stop filters can
422be used, for example, to filter out the fluorescent light component.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><a name="v4l2-auto-n-preset-white-balance"></a><code class="constant">V4L2_CID_AUTO_N_PRESET_WHITE_BALANCE</code>&#160;</td><td valign="top">enum&#160;v4l2_auto_n_preset_white_balance</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Sets white balance to automatic,
423manual or a preset. The presets determine color temperature of the light as
424a hint to the camera for white balance adjustments resulting in most accurate
425color representation. The following white balance presets are listed in order
426of increasing color temperature.</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_WHITE_BALANCE_MANUAL</code>&#160;</td><td valign="top">Manual white balance.</td></tr><tr><td valign="top"><code class="constant">V4L2_WHITE_BALANCE_AUTO</code>&#160;</td><td valign="top">Automatic white balance adjustments.</td></tr><tr><td valign="top"><code class="constant">V4L2_WHITE_BALANCE_INCANDESCENT</code>&#160;</td><td valign="top">White balance setting for incandescent (tungsten) lighting.
427It generally cools down the colors and corresponds approximately to 2500...3500 K
428color temperature range.</td></tr><tr><td valign="top"><code class="constant">V4L2_WHITE_BALANCE_FLUORESCENT</code>&#160;</td><td valign="top">White balance preset for fluorescent lighting.
429It corresponds approximately to 4000...5000 K color temperature.</td></tr><tr><td valign="top"><code class="constant">V4L2_WHITE_BALANCE_FLUORESCENT_H</code>&#160;</td><td valign="top">With this setting the camera will compensate for
430fluorescent H lighting.</td></tr><tr><td valign="top"><code class="constant">V4L2_WHITE_BALANCE_HORIZON</code>&#160;</td><td valign="top">White balance setting for horizon daylight.
431It corresponds approximately to 5000 K color temperature.</td></tr><tr><td valign="top"><code class="constant">V4L2_WHITE_BALANCE_DAYLIGHT</code>&#160;</td><td valign="top">White balance preset for daylight (with clear sky).
432It corresponds approximately to 5000...6500 K color temperature.</td></tr><tr><td valign="top"><code class="constant">V4L2_WHITE_BALANCE_FLASH</code>&#160;</td><td valign="top">With this setting the camera will compensate for the flash
433light. It slightly warms up the colors and corresponds roughly to 5000...5500 K
434color temperature.</td></tr><tr><td valign="top"><code class="constant">V4L2_WHITE_BALANCE_CLOUDY</code>&#160;</td><td valign="top">White balance preset for moderately overcast sky.
435This option corresponds approximately to 6500...8000 K color temperature
436range.</td></tr><tr><td valign="top"><code class="constant">V4L2_WHITE_BALANCE_SHADE</code>&#160;</td><td valign="top">White balance preset for shade or heavily overcast
437sky. It corresponds approximately to 9000...10000 K color temperature.
438</td></tr></tbody></table></td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><a name="v4l2-wide-dynamic-range"></a><code class="constant">V4L2_CID_WIDE_DYNAMIC_RANGE</code></td><td valign="top">boolean</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Enables or disables the camera's wide dynamic
439range feature. This feature allows to obtain clear images in situations where
440intensity of the illumination varies significantly throughout the scene, i.e.
441there are simultaneously very dark and very bright areas. It is most commonly
442realized in cameras by combining two subsequent frames with different exposure
443times. <a href="#ftn.ctypeconv" class="footnote" name="ctypeconv"><sup class="footnote">[a]</sup></a></td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><a name="v4l2-image-stabilization"></a><code class="constant">V4L2_CID_IMAGE_STABILIZATION</code></td><td valign="top">boolean</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Enables or disables image stabilization.
444	      <a href="extended-controls.html#ftn.ctypeconv" class="footnoteref"><sup class="footnoteref">[a]</sup></a></td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_ISO_SENSITIVITY</code>&#160;</td><td valign="top">integer menu</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Determines ISO equivalent of an
445image sensor indicating the sensor's sensitivity to light. The numbers are
446expressed in arithmetic scale, as per <a class="xref" href="bi01.html#iso12232" title="Photography &#8212; Digital still cameras &#8212; Determination of exposure index, ISO speed ratings, standard output sensitivity, and recommended exposure index">[<abbr class="abbrev">ISO&#160;12232:2006</abbr>]</a> standard,
447where doubling the sensor sensitivity is represented by doubling the numerical
448ISO value. Applications should interpret the values as standard ISO values
449multiplied by 1000, e.g. control value 800 stands for ISO 0.8. Drivers will
450usually support only a subset of standard ISO values. The effect of setting
451this control while the <code class="constant">V4L2_CID_ISO_SENSITIVITY_AUTO</code>
452control is set to a value other than <code class="constant">V4L2_CID_ISO_SENSITIVITY_MANUAL
453</code> is undefined, drivers should ignore such requests.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><a name="v4l2-iso-sensitivity-auto-type"></a><code class="constant">V4L2_CID_ISO_SENSITIVITY_AUTO</code>&#160;</td><td valign="top">enum&#160;v4l2_iso_sensitivity_type</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Enables or disables automatic ISO
454sensitivity adjustments.</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_CID_ISO_SENSITIVITY_MANUAL</code>&#160;</td><td valign="top">Manual ISO sensitivity.</td></tr><tr><td valign="top"><code class="constant">V4L2_CID_ISO_SENSITIVITY_AUTO</code>&#160;</td><td valign="top">Automatic ISO sensitivity adjustments.</td></tr></tbody></table></td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><a name="v4l2-scene-mode"></a><code class="constant">V4L2_CID_SCENE_MODE</code>&#160;</td><td valign="top">enum&#160;v4l2_scene_mode</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">This control allows to select
455scene programs as the camera automatic modes optimized for common shooting
456scenes. Within these modes the camera determines best exposure, aperture,
457focusing, light metering, white balance and equivalent sensitivity. The
458controls of those parameters are influenced by the scene mode control.
459An exact behavior in each mode is subject to the camera specification.
460
461<p>When the scene mode feature is not used, this control should be set to
462<code class="constant">V4L2_SCENE_MODE_NONE</code> to make sure the other possibly
463related controls are accessible. The following scene programs are defined:
464</p>
465</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_SCENE_MODE_NONE</code>&#160;</td><td valign="top">The scene mode feature is disabled.</td></tr><tr><td valign="top"><code class="constant">V4L2_SCENE_MODE_BACKLIGHT</code>&#160;</td><td valign="top">Backlight. Compensates for dark shadows when light is
466		  coming from behind a subject, also by automatically turning
467		  on the flash.</td></tr><tr><td valign="top"><code class="constant">V4L2_SCENE_MODE_BEACH_SNOW</code>&#160;</td><td valign="top">Beach and snow. This mode compensates for all-white or
468bright scenes, which tend to look gray and low contrast, when camera's automatic
469exposure is based on an average scene brightness. To compensate, this mode
470automatically slightly overexposes the frames. The white balance may also be
471adjusted to compensate for the fact that reflected snow looks bluish rather
472than white.</td></tr><tr><td valign="top"><code class="constant">V4L2_SCENE_MODE_CANDLELIGHT</code>&#160;</td><td valign="top">Candle light. The camera generally raises the ISO
473sensitivity and lowers the shutter speed. This mode compensates for relatively
474close subject in the scene. The flash is disabled in order to preserve the
475ambiance of the light.</td></tr><tr><td valign="top"><code class="constant">V4L2_SCENE_MODE_DAWN_DUSK</code>&#160;</td><td valign="top">Dawn and dusk. Preserves the colors seen in low
476natural light before dusk and after down. The camera may turn off the flash,
477and automatically focus at infinity. It will usually boost saturation and
478lower the shutter speed.</td></tr><tr><td valign="top"><code class="constant">V4L2_SCENE_MODE_FALL_COLORS</code>&#160;</td><td valign="top">Fall colors. Increases saturation and adjusts white
479balance for color enhancement. Pictures of autumn leaves get saturated reds
480and yellows.</td></tr><tr><td valign="top"><code class="constant">V4L2_SCENE_MODE_FIREWORKS</code>&#160;</td><td valign="top">Fireworks. Long exposure times are used to capture
481the expanding burst of light from a firework. The camera may invoke image
482stabilization.</td></tr><tr><td valign="top"><code class="constant">V4L2_SCENE_MODE_LANDSCAPE</code>&#160;</td><td valign="top">Landscape. The camera may choose a small aperture to
483provide deep depth of field and long exposure duration to help capture detail
484in dim light conditions. The focus is fixed at infinity. Suitable for distant
485and wide scenery.</td></tr><tr><td valign="top"><code class="constant">V4L2_SCENE_MODE_NIGHT</code>&#160;</td><td valign="top">Night, also known as Night Landscape. Designed for low
486light conditions, it preserves detail in the dark areas without blowing out bright
487objects. The camera generally sets itself to a medium-to-high ISO sensitivity,
488with a relatively long exposure time, and turns flash off. As such, there will be
489increased image noise and the possibility of blurred image.</td></tr><tr><td valign="top"><code class="constant">V4L2_SCENE_MODE_PARTY_INDOOR</code>&#160;</td><td valign="top">Party and indoor. Designed to capture indoor scenes
490that are lit by indoor background lighting as well as the flash. The camera
491usually increases ISO sensitivity, and adjusts exposure for the low light
492conditions.</td></tr><tr><td valign="top"><code class="constant">V4L2_SCENE_MODE_PORTRAIT</code>&#160;</td><td valign="top">Portrait. The camera adjusts the aperture so that the
493depth of field is reduced, which helps to isolate the subject against a smooth
494background. Most cameras recognize the presence of faces in the scene and focus
495on them. The color hue is adjusted to enhance skin tones. The intensity of the
496flash is often reduced.</td></tr><tr><td valign="top"><code class="constant">V4L2_SCENE_MODE_SPORTS</code>&#160;</td><td valign="top">Sports. Significantly increases ISO and uses a fast
497shutter speed to freeze motion of rapidly-moving subjects. Increased image
498noise may be seen in this mode.</td></tr><tr><td valign="top"><code class="constant">V4L2_SCENE_MODE_SUNSET</code>&#160;</td><td valign="top">Sunset. Preserves deep hues seen in sunsets and
499sunrises. It bumps up the saturation.</td></tr><tr><td valign="top"><code class="constant">V4L2_SCENE_MODE_TEXT</code>&#160;</td><td valign="top">Text. It applies extra contrast and sharpness, it is
500typically a black-and-white mode optimized for readability. Automatic focus
501may be switched to close-up mode and this setting may also involve some
502lens-distortion correction.</td></tr></tbody></table></td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_3A_LOCK</code></td><td valign="top">bitmask</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">This control locks or unlocks the automatic
503focus, exposure and white balance. The automatic adjustments can be paused
504independently by setting the corresponding lock bit to 1. The camera then retains
505the settings until the lock bit is cleared. The following lock bits are defined:
506</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_LOCK_EXPOSURE</code></td><td valign="top">Automatic exposure adjustments lock.</td></tr><tr><td valign="top"><code class="constant">V4L2_LOCK_WHITE_BALANCE</code></td><td valign="top">Automatic white balance adjustments lock.</td></tr><tr><td valign="top"><code class="constant">V4L2_LOCK_FOCUS</code></td><td valign="top">Automatic focus lock.</td></tr></tbody></table></td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">
507When a given algorithm is not enabled, drivers should ignore requests
508to lock it and should return no error. An example might be an application
509setting bit <code class="constant">V4L2_LOCK_WHITE_BALANCE</code> when the
510<code class="constant">V4L2_CID_AUTO_WHITE_BALANCE</code> control is set to
511<code class="constant">FALSE</code>. The value of this control may be changed
512by exposure, white balance or focus controls.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_PAN_SPEED</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">This control turns the
513camera horizontally at the specific speed. The unit is undefined. A
514positive value moves the camera to the right (clockwise when viewed
515from above), a negative value to the left. A value of zero stops the motion
516if one is in progress and has no effect otherwise.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_TILT_SPEED</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">This control turns the
517camera vertically at the specified speed. The unit is undefined. A
518positive value moves the camera up, a negative value down. A value of zero
519stops the motion if one is in progress and has no effect otherwise.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr></tbody><tbody class="footnotes"><tr><td colspan="4"><div id="ftn.ctypeconv" class="footnote"><p><a href="#ctypeconv" class="para"><sup class="para">[a] </sup></a> This control may be changed to a menu
520control in the future, if more options are required.</p></div></td></tr></tbody></table></div></div><br class="table-break"></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="fm-tx-controls"></a>FM Transmitter Control Reference</h3></div></div></div><p>The FM Transmitter (FM_TX) class includes controls for common features of
521FM transmissions capable devices. Currently this class includes parameters for audio
522compression, pilot tone generation, audio deviation limiter, RDS transmission and
523tuning power features.</p><div class="table"><a name="fm-tx-control-id"></a><p class="title"><b>Table&#160;1.7.&#160;FM_TX Control IDs</b></p><div class="table-contents"><table summary="FM_TX Control IDs" width="100%" border="0"><colgroup><col class="c1"><col class="c2"><col class="c3"><col class="c4"></colgroup><thead><tr><th colspan="2" align="left">ID</th><th align="left">Type</th><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><th colspan="3" align="left">Description</th></tr></thead><tbody valign="top"><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_FM_TX_CLASS</code>&#160;</td><td valign="top">class</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">The FM_TX class
524descriptor. Calling <a class="link" href="vidioc-queryctrl.html" title="ioctl VIDIOC_QUERYCTRL, VIDIOC_QUERY_EXT_CTRL, VIDIOC_QUERYMENU"><code class="constant">VIDIOC_QUERYCTRL</code></a> for this control will return a
525description of this control class.</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_RDS_TX_DEVIATION</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Configures RDS signal frequency deviation level in Hz.
526The range and step are driver-specific.</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_RDS_TX_PI</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Sets the RDS Programme Identification field
527for transmission.</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_RDS_TX_PTY</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Sets the RDS Programme Type field for transmission.
528This encodes up to 31 pre-defined programme types.</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_RDS_TX_PS_NAME</code>&#160;</td><td valign="top">string</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Sets the Programme Service name (PS_NAME) for transmission.
529It is intended for static display on a receiver. It is the primary aid to listeners in programme service
530identification and selection.  In Annex E of <a class="xref" href="bi01.html#iec62106" title="Specification of the radio data system (RDS) for VHF/FM sound broadcasting in the frequency range from 87,5 to 108,0 MHz">[<abbr class="abbrev">IEC&#160;62106</abbr>]</a>, the RDS specification,
531there is a full description of the correct character encoding for Programme Service name strings.
532Also from RDS specification, PS is usually a single eight character text. However, it is also possible
533to find receivers which can scroll strings sized as 8 x N characters. So, this control must be configured
534with steps of 8 characters. The result is it must always contain a string with size multiple of 8.</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_RDS_TX_RADIO_TEXT</code>&#160;</td><td valign="top">string</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Sets the Radio Text info for transmission. It is a textual description of
535what is being broadcasted. RDS Radio Text can be applied when broadcaster wishes to transmit longer PS names,
536programme-related information or any other text. In these cases, RadioText should be used in addition to
537<code class="constant">V4L2_CID_RDS_TX_PS_NAME</code>. The encoding for Radio Text strings is also fully described
538in Annex E of <a class="xref" href="bi01.html#iec62106" title="Specification of the radio data system (RDS) for VHF/FM sound broadcasting in the frequency range from 87,5 to 108,0 MHz">[<abbr class="abbrev">IEC&#160;62106</abbr>]</a>. The length of Radio Text strings depends on which RDS Block is being
539used to transmit it, either 32 (2A block) or 64 (2B block).  However, it is also possible
540to find receivers which can scroll strings sized as 32 x N or 64 x N characters. So, this control must be configured
541with steps of 32 or 64 characters. The result is it must always contain a string with size multiple of 32 or 64. </td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_RDS_TX_MONO_STEREO</code>&#160;</td><td valign="top">boolean</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Sets the Mono/Stereo bit of the Decoder Identification code. If set,
542then the audio was recorded as stereo.</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_RDS_TX_ARTIFICIAL_HEAD</code>&#160;</td><td valign="top">boolean</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Sets the
543<a class="ulink" href="http://en.wikipedia.org/wiki/Artificial_head" target="_top">Artificial Head</a> bit of the Decoder
544Identification code. If set, then the audio was recorded using an artificial head.</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_RDS_TX_COMPRESSED</code>&#160;</td><td valign="top">boolean</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Sets the Compressed bit of the Decoder Identification code. If set,
545then the audio is compressed.</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_RDS_TX_DYNAMIC_PTY</code>&#160;</td><td valign="top">boolean</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Sets the Dynamic PTY bit of the Decoder Identification code. If set,
546then the PTY code is dynamically switched.</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_RDS_TX_TRAFFIC_ANNOUNCEMENT</code>&#160;</td><td valign="top">boolean</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">If set, then a traffic announcement is in progress.</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_RDS_TX_TRAFFIC_PROGRAM</code>&#160;</td><td valign="top">boolean</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">If set, then the tuned programme carries traffic announcements.</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_RDS_TX_MUSIC_SPEECH</code>&#160;</td><td valign="top">boolean</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">If set, then this channel broadcasts music. If cleared, then it
547broadcasts speech. If the transmitter doesn't make this distinction, then it should be set.</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_RDS_TX_ALT_FREQS_ENABLE</code>&#160;</td><td valign="top">boolean</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">If set, then transmit alternate frequencies.</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_RDS_TX_ALT_FREQS</code>&#160;</td><td valign="top">__u32 array</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">The alternate frequencies in kHz units. The RDS standard allows
548for up to 25 frequencies to be defined. Drivers may support fewer frequencies so check
549the array size.</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_AUDIO_LIMITER_ENABLED</code>&#160;</td><td valign="top">boolean</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Enables or disables the audio deviation limiter feature.
550The limiter is useful when trying to maximize the audio volume, minimize receiver-generated
551distortion and prevent overmodulation.
552</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_AUDIO_LIMITER_RELEASE_TIME</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Sets the audio deviation limiter feature release time.
553Unit is in useconds. Step and range are driver-specific.</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_AUDIO_LIMITER_DEVIATION</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Configures audio frequency deviation level in Hz.
554The range and step are driver-specific.</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_AUDIO_COMPRESSION_ENABLED</code>&#160;</td><td valign="top">boolean</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Enables or disables the audio compression feature.
555This feature amplifies signals below the threshold by a fixed gain and compresses audio
556signals above the threshold by the ratio of Threshold/(Gain + Threshold).</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_AUDIO_COMPRESSION_GAIN</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Sets the gain for audio compression feature. It is
557a dB value. The range and step are driver-specific.</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_AUDIO_COMPRESSION_THRESHOLD</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Sets the threshold level for audio compression freature.
558It is a dB value. The range and step are driver-specific.</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_AUDIO_COMPRESSION_ATTACK_TIME</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Sets the attack time for audio compression feature.
559It is a useconds value. The range and step are driver-specific.</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_AUDIO_COMPRESSION_RELEASE_TIME</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Sets the release time for audio compression feature.
560It is a useconds value. The range and step are driver-specific.</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_PILOT_TONE_ENABLED</code>&#160;</td><td valign="top">boolean</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Enables or disables the pilot tone generation feature.</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_PILOT_TONE_DEVIATION</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Configures pilot tone frequency deviation level. Unit is
561in Hz. The range and step are driver-specific.</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_PILOT_TONE_FREQUENCY</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Configures pilot tone frequency value. Unit is
562in Hz. The range and step are driver-specific.</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_TUNE_PREEMPHASIS</code>&#160;</td><td valign="top">enum v4l2_preemphasis</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><a name="v4l2-preemphasis"></a>Configures the pre-emphasis value for broadcasting.
563A pre-emphasis filter is applied to the broadcast to accentuate the high audio frequencies.
564Depending on the region, a time constant of either 50 or 75 useconds is used. The enum&#160;v4l2_preemphasis
565defines possible values for pre-emphasis. Here they are:</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_PREEMPHASIS_DISABLED</code>&#160;</td><td valign="top">No pre-emphasis is applied.</td></tr><tr><td valign="top"><code class="constant">V4L2_PREEMPHASIS_50_uS</code>&#160;</td><td valign="top">A pre-emphasis of 50 uS is used.</td></tr><tr><td valign="top"><code class="constant">V4L2_PREEMPHASIS_75_uS</code>&#160;</td><td valign="top">A pre-emphasis of 75 uS is used.</td></tr></tbody></table></td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_TUNE_POWER_LEVEL</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Sets the output power level for signal transmission.
566Unit is in dBuV. Range and step are driver-specific.</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_TUNE_ANTENNA_CAPACITOR</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">This selects the value of antenna tuning capacitor
567manually or automatically if set to zero. Unit, range and step are driver-specific.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr></tbody></table></div></div><br class="table-break"><p>For more details about RDS specification, refer to
568<a class="xref" href="bi01.html#iec62106" title="Specification of the radio data system (RDS) for VHF/FM sound broadcasting in the frequency range from 87,5 to 108,0 MHz">[<abbr class="abbrev">IEC&#160;62106</abbr>]</a> document, from CENELEC.</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="flash-controls"></a>Flash Control Reference</h3></div></div></div><div class="toc"><dl class="toc"><dt><span class="section"><a href="extended-controls.html#flash-controls-use-cases">Supported use cases</a></span></dt></dl></div><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title">Experimental</h3><p>This is an <a class="link" href="hist-v4l2.html#experimental" title="Experimental API Elements">experimental</a>
569interface and may change in the future.</p></div><p>
570	The V4L2 flash controls are intended to provide generic access
571	to flash controller devices. Flash controller devices are
572	typically used in digital cameras.
573      </p><p>
574	The interface can support both LED and xenon flash devices. As
575	of writing this, there is no xenon flash driver using this
576	interface.
577      </p><div class="section"><div class="titlepage"><div><div><h4 class="title"><a name="flash-controls-use-cases"></a>Supported use cases</h4></div></div></div><div class="section"><div class="titlepage"><div><div><h5 class="title"><a name="idp1097709812"></a>Unsynchronised LED flash (software strobe)</h5></div></div></div><p>
578	    Unsynchronised LED flash is controlled directly by the
579	    host as the sensor. The flash must be enabled by the host
580	    before the exposure of the image starts and disabled once
581	    it ends. The host is fully responsible for the timing of
582	    the flash.
583	  </p><p>Example of such device: Nokia N900.</p></div><div class="section"><div class="titlepage"><div><div><h5 class="title"><a name="idp1097710948"></a>Synchronised LED flash (hardware strobe)</h5></div></div></div><p>
584	    The synchronised LED flash is pre-programmed by the host
585	    (power and timeout) but controlled by the sensor through a
586	    strobe signal from the sensor to the flash.
587	  </p><p>
588	    The sensor controls the flash duration and timing. This
589	    information typically must be made available to the
590	    sensor.
591	  </p></div><div class="section"><div class="titlepage"><div><div><h5 class="title"><a name="idp1097712092"></a>LED flash as torch</h5></div></div></div><p>
592	    LED flash may be used as torch in conjunction with another
593	    use case involving camera or individually.
594	  </p><div class="table"><a name="flash-control-id"></a><p class="title"><b>Table&#160;1.8.&#160;Flash Control IDs</b></p><div class="table-contents"><table summary="Flash Control IDs" width="100%" border="0"><colgroup><col class="c1"><col class="c2"><col class="c3"><col class="c4"></colgroup><thead><tr><th colspan="2" align="left">ID</th><th align="left">Type</th><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><th colspan="3" align="left">Description</th></tr></thead><tbody valign="top"><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_FLASH_CLASS</code></td><td valign="top">class</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">The FLASH class descriptor.</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_FLASH_LED_MODE</code></td><td valign="top">menu</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><a name="v4l2-flash-led-mode"></a>Defines the mode of the flash LED,
595    	    the high-power white LED attached to the flash controller.
596    	    Setting this control may not be possible in presence of
597    	    some faults. See V4L2_CID_FLASH_FAULT.</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_FLASH_LED_MODE_NONE</code></td><td valign="top">Off.</td></tr><tr><td valign="top"><code class="constant">V4L2_FLASH_LED_MODE_FLASH</code></td><td valign="top">Flash mode.</td></tr><tr><td valign="top"><code class="constant">V4L2_FLASH_LED_MODE_TORCH</code></td><td valign="top">Torch mode. See V4L2_CID_FLASH_TORCH_INTENSITY.</td></tr></tbody></table></td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_FLASH_STROBE_SOURCE</code></td><td valign="top">menu</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><a name="v4l2-flash-strobe-source"></a>Defines the source of the flash LED
598    	  strobe.</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_FLASH_STROBE_SOURCE_SOFTWARE</code></td><td valign="top">The flash strobe is triggered by using
599    		  the V4L2_CID_FLASH_STROBE control.</td></tr><tr><td valign="top"><code class="constant">V4L2_FLASH_STROBE_SOURCE_EXTERNAL</code></td><td valign="top">The flash strobe is triggered by an
600    		  external source. Typically this is a sensor,
601    		  which makes it possible to synchronises the
602    		  flash strobe start to exposure start.</td></tr></tbody></table></td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_FLASH_STROBE</code></td><td valign="top">button</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Strobe flash. Valid when
603    	    V4L2_CID_FLASH_LED_MODE is set to
604    	    V4L2_FLASH_LED_MODE_FLASH and V4L2_CID_FLASH_STROBE_SOURCE
605    	    is set to V4L2_FLASH_STROBE_SOURCE_SOFTWARE. Setting this
606    	    control may not be possible in presence of some faults.
607    	    See V4L2_CID_FLASH_FAULT.</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_FLASH_STROBE_STOP</code></td><td valign="top">button</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Stop flash strobe immediately.</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_FLASH_STROBE_STATUS</code></td><td valign="top">boolean</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Strobe status: whether the flash
608    	    is strobing at the moment or not. This is a read-only
609    	    control.</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_FLASH_TIMEOUT</code></td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Hardware timeout for flash. The
610    	    flash strobe is stopped after this period of time has
611    	    passed from the start of the strobe.</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_FLASH_INTENSITY</code></td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Intensity of the flash strobe when
612    	    the flash LED is in flash mode
613    	    (V4L2_FLASH_LED_MODE_FLASH). The unit should be milliamps
614    	    (mA) if possible.</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_FLASH_TORCH_INTENSITY</code></td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Intensity of the flash LED in
615    	    torch mode (V4L2_FLASH_LED_MODE_TORCH). The unit should be
616    	    milliamps (mA) if possible. Setting this control may not
617    	    be possible in presence of some faults. See
618    	    V4L2_CID_FLASH_FAULT.</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_FLASH_INDICATOR_INTENSITY</code></td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Intensity of the indicator LED.
619    	    The indicator LED may be fully independent of the flash
620    	    LED. The unit should be microamps (uA) if possible.</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_FLASH_FAULT</code></td><td valign="top">bitmask</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Faults related to the flash. The
621    	    faults tell about specific problems in the flash chip
622    	    itself or the LEDs attached to it. Faults may prevent
623    	    further use of some of the flash controls. In particular,
624    	    V4L2_CID_FLASH_LED_MODE is set to V4L2_FLASH_LED_MODE_NONE
625    	    if the fault affects the flash LED. Exactly which faults
626    	    have such an effect is chip dependent. Reading the faults
627    	    resets the control and returns the chip to a usable state
628    	    if possible.</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_FLASH_FAULT_OVER_VOLTAGE</code></td><td valign="top">Flash controller voltage to the flash LED
629    		  has exceeded the limit specific to the flash
630    		  controller.</td></tr><tr><td valign="top"><code class="constant">V4L2_FLASH_FAULT_TIMEOUT</code></td><td valign="top">The flash strobe was still on when
631    		  the timeout set by the user ---
632    		  V4L2_CID_FLASH_TIMEOUT control --- has expired.
633    		  Not all flash controllers may set this in all
634    		  such conditions.</td></tr><tr><td valign="top"><code class="constant">V4L2_FLASH_FAULT_OVER_TEMPERATURE</code></td><td valign="top">The flash controller has overheated.</td></tr><tr><td valign="top"><code class="constant">V4L2_FLASH_FAULT_SHORT_CIRCUIT</code></td><td valign="top">The short circuit protection of the flash
635    		  controller has been triggered.</td></tr><tr><td valign="top"><code class="constant">V4L2_FLASH_FAULT_OVER_CURRENT</code></td><td valign="top">Current in the LED power supply has exceeded the limit
636    		  specific to the flash controller.</td></tr><tr><td valign="top"><code class="constant">V4L2_FLASH_FAULT_INDICATOR</code></td><td valign="top">The flash controller has detected a short or open
637    		  circuit condition on the indicator LED.</td></tr><tr><td valign="top"><code class="constant">V4L2_FLASH_FAULT_UNDER_VOLTAGE</code></td><td valign="top">Flash controller voltage to the flash LED
638		  has been below the minimum limit specific to the flash
639		  controller.</td></tr><tr><td valign="top"><code class="constant">V4L2_FLASH_FAULT_INPUT_VOLTAGE</code></td><td valign="top">The input voltage of the flash controller is below
640		  the limit under which strobing the flash at full current
641		  will not be possible.The condition persists until this flag
642		  is no longer set.</td></tr><tr><td valign="top"><code class="constant">V4L2_FLASH_FAULT_LED_OVER_TEMPERATURE</code></td><td valign="top">The temperature of the LED has exceeded its
643		  allowed upper limit.</td></tr></tbody></table></td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_FLASH_CHARGE</code></td><td valign="top">boolean</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Enable or disable charging of the xenon
644    	  flash capacitor.</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_FLASH_READY</code></td><td valign="top">boolean</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Is the flash ready to strobe?
645    	    Xenon flashes require their capacitors charged before
646    	    strobing. LED flashes often require a cooldown period
647    	    after strobe during which another strobe will not be
648    	    possible. This is a read-only control.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr></tbody></table></div></div><br class="table-break"></div></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="jpeg-controls"></a>JPEG Control Reference</h3></div></div></div><p>The JPEG class includes controls for common features of JPEG
649      encoders and decoders. Currently it includes features for codecs
650      implementing progressive baseline DCT compression process with
651      Huffman entrophy coding.</p><div class="table"><a name="jpeg-control-id"></a><p class="title"><b>Table&#160;1.9.&#160;JPEG Control IDs</b></p><div class="table-contents"><table summary="JPEG Control IDs" width="100%" border="0"><colgroup><col class="c1"><col class="c2"><col class="c3"><col class="c4"></colgroup><thead><tr><th colspan="2" align="left">ID</th><th align="left">Type</th><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><th colspan="3" align="left">Description</th></tr></thead><tbody valign="top"><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_JPEG_CLASS</code>&#160;</td><td valign="top">class</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">The JPEG class descriptor. Calling
652	  <a class="link" href="vidioc-queryctrl.html" title="ioctl VIDIOC_QUERYCTRL, VIDIOC_QUERY_EXT_CTRL, VIDIOC_QUERYMENU"><code class="constant">VIDIOC_QUERYCTRL</code></a> for this control will return a description of this
653	  control class.
654
655	</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_JPEG_CHROMA_SUBSAMPLING</code></td><td valign="top">menu</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><a name="v4l2-jpeg-chroma-subsampling"></a>The chroma subsampling factors describe how
656	    each component of an input image is sampled, in respect to maximum
657	    sample rate in each spatial dimension. See <a class="xref" href="bi01.html#itu-t81" title='ITU-T Recommendation T.81 "Information Technology &#8212; Digital Compression and Coding of Continous-Tone Still Images &#8212; Requirements and Guidelines"'>[<abbr class="abbrev">ITU-T.81</abbr>]</a>,
658	    clause A.1.1. for more details. The <code class="constant">
659	    V4L2_CID_JPEG_CHROMA_SUBSAMPLING</code> control determines how
660	    Cb and Cr components are downsampled after coverting an input image
661	    from RGB to Y'CbCr color space.
662	    </td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_JPEG_CHROMA_SUBSAMPLING_444</code>
663		  </td><td valign="top">No chroma subsampling, each pixel has
664		  Y, Cr and Cb values.</td></tr><tr><td valign="top"><code class="constant">V4L2_JPEG_CHROMA_SUBSAMPLING_422</code>
665		  </td><td valign="top">Horizontally subsample Cr, Cb components
666		  by a factor of 2.</td></tr><tr><td valign="top"><code class="constant">V4L2_JPEG_CHROMA_SUBSAMPLING_420</code>
667		  </td><td valign="top">Subsample Cr, Cb components horizontally
668		  and vertically by 2.</td></tr><tr><td valign="top"><code class="constant">V4L2_JPEG_CHROMA_SUBSAMPLING_411</code>
669		  </td><td valign="top">Horizontally subsample Cr, Cb components
670		  by a factor of 4.</td></tr><tr><td valign="top"><code class="constant">V4L2_JPEG_CHROMA_SUBSAMPLING_410</code>
671		  </td><td valign="top">Subsample Cr, Cb components horizontally
672		  by 4 and vertically by 2.</td></tr><tr><td valign="top"><code class="constant">V4L2_JPEG_CHROMA_SUBSAMPLING_GRAY</code>
673		  </td><td valign="top">Use only luminance component.</td></tr></tbody></table></td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_JPEG_RESTART_INTERVAL</code>
674	    </td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">
675	      The restart interval determines an interval of inserting RSTm
676	      markers (m = 0..7). The purpose of these markers is to additionally
677	      reinitialize the encoder process, in order to process blocks of
678	      an image independently.
679	      For the lossy compression processes the restart interval unit is
680	      MCU (Minimum Coded Unit) and its value is contained in DRI
681	      (Define Restart Interval) marker. If <code class="constant">
682	      V4L2_CID_JPEG_RESTART_INTERVAL</code> control is set to 0,
683	      DRI and RSTm markers will not be inserted.
684	    </td></tr><tr><td colspan="2" valign="top"><a name="jpeg-quality-control"></a><code class="constant">V4L2_CID_JPEG_COMPRESSION_QUALITY</code></td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">
685	      <code class="constant">V4L2_CID_JPEG_COMPRESSION_QUALITY</code> control
686	      determines trade-off between image quality and size.
687	      It provides simpler method for applications to control image quality,
688	      without a need for direct reconfiguration of luminance and chrominance
689	      quantization tables.
690
691	      In cases where a driver uses quantization tables configured directly
692	      by an application, using interfaces defined elsewhere, <code class="constant">
693	      V4L2_CID_JPEG_COMPRESSION_QUALITY</code> control should be set
694	      by driver to 0.
695
696	      <p>The value range of this control is driver-specific. Only
697	      positive, non-zero values are meaningful. The recommended range
698	      is 1 - 100, where larger values correspond to better image quality.
699	      </p>
700	    </td></tr><tr><td colspan="2" valign="top"><a name="jpeg-active-marker-control"></a><code class="constant">V4L2_CID_JPEG_ACTIVE_MARKER</code></td><td valign="top">bitmask</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Specify which JPEG markers are included
701	    in compressed stream. This control is valid only for encoders.
702	    </td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_JPEG_ACTIVE_MARKER_APP0</code></td><td valign="top">Application data segment APP<sub>0</sub>.</td></tr><tr><td valign="top"><code class="constant">V4L2_JPEG_ACTIVE_MARKER_APP1</code></td><td valign="top">Application data segment APP<sub>1</sub>.</td></tr><tr><td valign="top"><code class="constant">V4L2_JPEG_ACTIVE_MARKER_COM</code></td><td valign="top">Comment segment.</td></tr><tr><td valign="top"><code class="constant">V4L2_JPEG_ACTIVE_MARKER_DQT</code></td><td valign="top">Quantization tables segment.</td></tr><tr><td valign="top"><code class="constant">V4L2_JPEG_ACTIVE_MARKER_DHT</code></td><td valign="top">Huffman tables segment.</td></tr></tbody></table></td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr></tbody></table></div></div><br class="table-break"><p>For more details about JPEG specification, refer
703      to <a class="xref" href="bi01.html#itu-t81" title='ITU-T Recommendation T.81 "Information Technology &#8212; Digital Compression and Coding of Continous-Tone Still Images &#8212; Requirements and Guidelines"'>[<abbr class="abbrev">ITU-T.81</abbr>]</a>, <a class="xref" href="bi01.html#jfif" title="JPEG File Interchange Format">[<abbr class="abbrev">JFIF</abbr>]</a>,
704      <a class="xref" href="bi01.html#w3c-jpeg-jfif" title="JPEG JFIF">[<abbr class="abbrev">W3C JPEG JFIF</abbr>]</a>.</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="image-source-controls"></a>Image Source Control Reference</h3></div></div></div><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title">Experimental</h3><p>This is an <a class="link" href="hist-v4l2.html#experimental" title="Experimental API Elements">experimental</a> interface and may
705	change in the future.</p></div><p>
706	The Image Source control class is intended for low-level
707	control of image source devices such as image sensors. The
708	devices feature an analogue to digital converter and a bus
709	transmitter to transmit the image data out of the device.
710      </p><div class="table"><a name="image-source-control-id"></a><p class="title"><b>Table&#160;1.10.&#160;Image Source Control IDs</b></p><div class="table-contents"><table summary="Image Source Control IDs" width="100%" border="0"><colgroup><col class="c1"><col class="c2"><col class="c3"><col class="c4"></colgroup><thead><tr><th colspan="2" align="left">ID</th><th align="left">Type</th><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><th colspan="3" align="left">Description</th></tr></thead><tbody valign="top"><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_IMAGE_SOURCE_CLASS</code></td><td valign="top">class</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">The IMAGE_SOURCE class descriptor.</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_VBLANK</code></td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Vertical blanking. The idle period
711	    after every frame during which no image data is produced.
712	    The unit of vertical blanking is a line. Every line has
713	    length of the image width plus horizontal blanking at the
714	    pixel rate defined by
715	    <code class="constant">V4L2_CID_PIXEL_RATE</code> control in the
716	    same sub-device.</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_HBLANK</code></td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Horizontal blanking. The idle
717	    period after every line of image data during which no
718	    image data is produced. The unit of horizontal blanking is
719	    pixels.</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_ANALOGUE_GAIN</code></td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Analogue gain is gain affecting
720	    all colour components in the pixel matrix. The gain
721	    operation is performed in the analogue domain before A/D
722	    conversion.
723	    </td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_TEST_PATTERN_RED</code></td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Test pattern red colour component.
724	    </td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_TEST_PATTERN_GREENR</code></td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Test pattern green (next to red)
725	    colour component.
726	    </td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_TEST_PATTERN_BLUE</code></td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Test pattern blue colour component.
727	    </td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_TEST_PATTERN_GREENB</code></td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Test pattern green (next to blue)
728	    colour component.
729	    </td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr></tbody></table></div></div><br class="table-break"></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="image-process-controls"></a>Image Process Control Reference</h3></div></div></div><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title">Experimental</h3><p>This is an <a class="link" href="hist-v4l2.html#experimental" title="Experimental API Elements">experimental</a> interface and may
730	change in the future.</p></div><p>
731	The Image Source control class is intended for low-level control of
732	image processing functions. Unlike
733	<code class="constant">V4L2_CID_IMAGE_SOURCE_CLASS</code>, the controls in
734	this class affect processing the image, and do not control capturing
735	of it.
736      </p><div class="table"><a name="image-process-control-id"></a><p class="title"><b>Table&#160;1.11.&#160;Image Source Control IDs</b></p><div class="table-contents"><table summary="Image Source Control IDs" width="100%" border="0"><colgroup><col class="c1"><col class="c2"><col class="c3"><col class="c4"></colgroup><thead><tr><th colspan="2" align="left">ID</th><th align="left">Type</th><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><th colspan="3" align="left">Description</th></tr></thead><tbody valign="top"><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_IMAGE_PROC_CLASS</code></td><td valign="top">class</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">The IMAGE_PROC class descriptor.</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_LINK_FREQ</code></td><td valign="top">integer menu</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Data bus frequency. Together with the
737	    media bus pixel code, bus type (clock cycles per sample), the
738	    data bus frequency defines the pixel rate
739	    (<code class="constant">V4L2_CID_PIXEL_RATE</code>) in the
740	    pixel array (or possibly elsewhere, if the device is not an
741	    image sensor). The frame rate can be calculated from the pixel
742	    clock, image width and height and horizontal and vertical
743	    blanking. While the pixel rate control may be defined elsewhere
744	    than in the subdev containing the pixel array, the frame rate
745	    cannot be obtained from that information. This is because only
746	    on the pixel array it can be assumed that the vertical and
747	    horizontal blanking information is exact: no other blanking is
748	    allowed in the pixel array. The selection of frame rate is
749	    performed by selecting the desired horizontal and vertical
750	    blanking. The unit of this control is Hz. </td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_PIXEL_RATE</code></td><td valign="top">64-bit integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Pixel rate in the source pads of
751	    the subdev. This control is read-only and its unit is
752	    pixels / second.
753	    </td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_TEST_PATTERN</code></td><td valign="top">menu</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><a name="v4l2-test-pattern"></a> Some capture/display/sensor devices have
754	    the capability to generate test pattern images. These hardware
755	    specific test patterns can be used to test if a device is working
756	    properly.</td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr></tbody></table></div></div><br class="table-break"></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="dv-controls"></a>Digital Video Control Reference</h3></div></div></div><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title">Experimental</h3><p>This is an <a class="link" href="hist-v4l2.html#experimental" title="Experimental API Elements">experimental</a> interface and may
757	change in the future.</p></div><p>
758	The Digital Video control class is intended to control receivers
759	and transmitters for <a class="ulink" href="http://en.wikipedia.org/wiki/Vga" target="_top">VGA</a>,
760	<a class="ulink" href="http://en.wikipedia.org/wiki/Digital_Visual_Interface" target="_top">DVI</a>
761	(Digital Visual Interface), HDMI (<a class="xref" href="bi01.html#hdmi" title="High-Definition Multimedia Interface">[<abbr class="abbrev">HDMI</abbr>]</a>) and DisplayPort (<a class="xref" href="bi01.html#dp" title="VESA DisplayPort Standard">[<abbr class="abbrev">DP</abbr>]</a>).
762	These controls are generally expected to be private to the receiver or transmitter
763	subdevice that implements them, so they are only exposed on the
764	<code class="filename">/dev/v4l-subdev*</code> device node.
765      </p><p>Note that these devices can have multiple input or output pads which are
766      hooked up to e.g. HDMI connectors. Even though the subdevice will receive or
767      transmit video from/to only one of those pads, the other pads can still be
768      active when it comes to EDID (Extended Display Identification Data,
769      <a class="xref" href="bi01.html#vesaedid" title="VESA Enhanced Extended Display Identification Data Standard">[<abbr class="abbrev">EDID</abbr>]</a>) and HDCP (High-bandwidth Digital Content
770      Protection System, <a class="xref" href="bi01.html#hdcp" title="High-bandwidth Digital Content Protection System">[<abbr class="abbrev">HDCP</abbr>]</a>) processing, allowing the device
771      to do the fairly slow EDID/HDCP handling in advance. This allows for quick
772      switching between connectors.</p><p>These pads appear in several of the controls in this section as
773      bitmasks, one bit for each pad. Bit 0 corresponds to pad 0, bit 1 to pad 1,
774      etc. The maximum value of the control is the set of valid pads.</p><div class="table"><a name="dv-control-id"></a><p class="title"><b>Table&#160;1.12.&#160;Digital Video Control IDs</b></p><div class="table-contents"><table summary="Digital Video Control IDs" width="100%" border="0"><colgroup><col class="c1"><col class="c2"><col class="c3"><col class="c4"></colgroup><thead><tr><th colspan="2" align="left">ID</th><th align="left">Type</th><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><th colspan="3" align="left">Description</th></tr></thead><tbody valign="top"><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_DV_CLASS</code></td><td valign="top">class</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">The Digital Video class descriptor.</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_DV_TX_HOTPLUG</code></td><td valign="top">bitmask</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Many connectors have a hotplug pin which is high
775	    if EDID information is available from the source. This control shows the
776	    state of the hotplug pin as seen by the transmitter.
777	    Each bit corresponds to an output pad on the transmitter. If an output pad
778	    does not have an associated hotplug pin, then the bit for that pad will be 0.
779	    This read-only control is applicable to DVI-D, HDMI and DisplayPort connectors.
780	    </td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_DV_TX_RXSENSE</code></td><td valign="top">bitmask</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Rx Sense is the detection of pull-ups on the TMDS
781            clock lines. This normally means that the sink has left/entered standby (i.e.
782	    the transmitter can sense that the receiver is ready to receive video).
783	    Each bit corresponds to an output pad on the transmitter. If an output pad
784	    does not have an associated Rx Sense, then the bit for that pad will be 0.
785	    This read-only control is applicable to DVI-D and HDMI devices.
786	    </td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_DV_TX_EDID_PRESENT</code></td><td valign="top">bitmask</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">When the transmitter sees the hotplug signal from the
787	    receiver it will attempt to read the EDID. If set, then the transmitter has read
788	    at least the first block (= 128 bytes).
789	    Each bit corresponds to an output pad on the transmitter. If an output pad
790	    does not support EDIDs, then the bit for that pad will be 0.
791	    This read-only control is applicable to VGA, DVI-A/D, HDMI and DisplayPort connectors.
792	    </td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_DV_TX_MODE</code></td><td valign="top"><a name="v4l2-dv-tx-mode"></a>enum v4l2_dv_tx_mode</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">HDMI transmitters can transmit in DVI-D mode (just video)
793	    or in HDMI mode (video + audio + auxiliary data). This control selects which mode
794	    to use: V4L2_DV_TX_MODE_DVI_D or V4L2_DV_TX_MODE_HDMI.
795	    This control is applicable to HDMI connectors.
796	    </td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_DV_TX_RGB_RANGE</code></td><td valign="top"><a name="v4l2-dv-rgb-range"></a>enum v4l2_dv_rgb_range</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Select the quantization range for RGB output. V4L2_DV_RANGE_AUTO
797	    follows the RGB quantization range specified in the standard for the video interface
798	    (ie. <a class="xref" href="bi01.html#cea861" title="A DTV Profile for Uncompressed High Speed Digital Interfaces">[<abbr class="abbrev">CEA-861-E</abbr>]</a> for HDMI). V4L2_DV_RANGE_LIMITED and V4L2_DV_RANGE_FULL override the standard
799	    to be compatible with sinks that have not implemented the standard correctly
800	    (unfortunately quite common for HDMI and DVI-D). Full range allows all possible values to be
801	    used whereas limited range sets the range to (16 &lt;&lt; (N-8)) - (235 &lt;&lt; (N-8))
802	    where N is the number of bits per component.
803	    This control is applicable to VGA, DVI-A/D, HDMI and DisplayPort connectors.
804	    </td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_DV_RX_POWER_PRESENT</code></td><td valign="top">bitmask</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Detects whether the receiver receives power from the source
805	    (e.g. HDMI carries 5V on one of the pins). This is often used to power an eeprom
806	    which contains EDID information, such that the source can read the EDID even if
807	    the sink is in standby/power off.
808	    Each bit corresponds to an input pad on the transmitter. If an input pad
809	    cannot detect whether power is present, then the bit for that pad will be 0.
810	    This read-only control is applicable to DVI-D, HDMI and DisplayPort connectors.
811	    </td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_DV_RX_RGB_RANGE</code></td><td valign="top">enum v4l2_dv_rgb_range</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Select the quantization range for RGB input. V4L2_DV_RANGE_AUTO
812	    follows the RGB quantization range specified in the standard for the video interface
813	    (ie. <a class="xref" href="bi01.html#cea861" title="A DTV Profile for Uncompressed High Speed Digital Interfaces">[<abbr class="abbrev">CEA-861-E</abbr>]</a> for HDMI). V4L2_DV_RANGE_LIMITED and V4L2_DV_RANGE_FULL override the standard
814	    to be compatible with sources that have not implemented the standard correctly
815	    (unfortunately quite common for HDMI and DVI-D). Full range allows all possible values to be
816	    used whereas limited range sets the range to (16 &lt;&lt; (N-8)) - (235 &lt;&lt; (N-8))
817	    where N is the number of bits per component.
818	    This control is applicable to VGA, DVI-A/D, HDMI and DisplayPort connectors.
819	    </td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr></tbody></table></div></div><br class="table-break"></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="fm-rx-controls"></a>FM Receiver Control Reference</h3></div></div></div><p>The FM Receiver (FM_RX) class includes controls for common features of
820      FM Reception capable devices.</p><div class="table"><a name="fm-rx-control-id"></a><p class="title"><b>Table&#160;1.13.&#160;FM_RX Control IDs</b></p><div class="table-contents"><table summary="FM_RX Control IDs" width="100%" border="0"><colgroup><col class="c1"><col class="c2"><col class="c3"><col class="c4"></colgroup><thead><tr><th colspan="2" align="left">ID</th><th align="left">Type</th><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><th colspan="3" align="left">Description</th></tr></thead><tbody valign="top"><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_FM_RX_CLASS</code>&#160;</td><td valign="top">class</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">The FM_RX class
821descriptor. Calling <a class="link" href="vidioc-queryctrl.html" title="ioctl VIDIOC_QUERYCTRL, VIDIOC_QUERY_EXT_CTRL, VIDIOC_QUERYMENU"><code class="constant">VIDIOC_QUERYCTRL</code></a> for this control will return a
822description of this control class.</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_RDS_RECEPTION</code>&#160;</td><td valign="top">boolean</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Enables/disables RDS
823	  reception by the radio tuner</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_RDS_RX_PTY</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Gets RDS Programme Type field.
824This encodes up to 31 pre-defined programme types.</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_RDS_RX_PS_NAME</code>&#160;</td><td valign="top">string</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Gets the Programme Service name (PS_NAME).
825It is intended for static display on a receiver. It is the primary aid to listeners in programme service
826identification and selection.  In Annex E of <a class="xref" href="bi01.html#iec62106" title="Specification of the radio data system (RDS) for VHF/FM sound broadcasting in the frequency range from 87,5 to 108,0 MHz">[<abbr class="abbrev">IEC&#160;62106</abbr>]</a>, the RDS specification,
827there is a full description of the correct character encoding for Programme Service name strings.
828Also from RDS specification, PS is usually a single eight character text. However, it is also possible
829to find receivers which can scroll strings sized as 8 x N characters. So, this control must be configured
830with steps of 8 characters. The result is it must always contain a string with size multiple of 8.</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_RDS_RX_RADIO_TEXT</code>&#160;</td><td valign="top">string</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Gets the Radio Text info. It is a textual description of
831what is being broadcasted. RDS Radio Text can be applied when broadcaster wishes to transmit longer PS names,
832programme-related information or any other text. In these cases, RadioText can be used in addition to
833<code class="constant">V4L2_CID_RDS_RX_PS_NAME</code>. The encoding for Radio Text strings is also fully described
834in Annex E of <a class="xref" href="bi01.html#iec62106" title="Specification of the radio data system (RDS) for VHF/FM sound broadcasting in the frequency range from 87,5 to 108,0 MHz">[<abbr class="abbrev">IEC&#160;62106</abbr>]</a>. The length of Radio Text strings depends on which RDS Block is being
835used to transmit it, either 32 (2A block) or 64 (2B block).  However, it is also possible
836to find receivers which can scroll strings sized as 32 x N or 64 x N characters. So, this control must be configured
837with steps of 32 or 64 characters. The result is it must always contain a string with size multiple of 32 or 64. </td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_RDS_RX_TRAFFIC_ANNOUNCEMENT</code>&#160;</td><td valign="top">boolean</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">If set, then a traffic announcement is in progress.</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_RDS_RX_TRAFFIC_PROGRAM</code>&#160;</td><td valign="top">boolean</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">If set, then the tuned programme carries traffic announcements.</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_RDS_RX_MUSIC_SPEECH</code>&#160;</td><td valign="top">boolean</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">If set, then this channel broadcasts music. If cleared, then it
838broadcasts speech. If the transmitter doesn't make this distinction, then it will be set.</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_TUNE_DEEMPHASIS</code>&#160;</td><td valign="top">enum v4l2_deemphasis</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><a name="v4l2-deemphasis"></a>Configures the de-emphasis value for reception.
839A de-emphasis filter is applied to the broadcast to accentuate the high audio frequencies.
840Depending on the region, a time constant of either 50 or 75 useconds is used. The enum&#160;v4l2_deemphasis
841defines possible values for de-emphasis. Here they are:</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_DEEMPHASIS_DISABLED</code>&#160;</td><td valign="top">No de-emphasis is applied.</td></tr><tr><td valign="top"><code class="constant">V4L2_DEEMPHASIS_50_uS</code>&#160;</td><td valign="top">A de-emphasis of 50 uS is used.</td></tr><tr><td valign="top"><code class="constant">V4L2_DEEMPHASIS_75_uS</code>&#160;</td><td valign="top">A de-emphasis of 75 uS is used.</td></tr></tbody></table></td></tr><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr></tbody></table></div></div><br class="table-break"></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="detect-controls"></a>Detect Control Reference</h3></div></div></div><p>The Detect class includes controls for common features of
842      various motion or object detection capable devices.</p><div class="table"><a name="detect-control-id"></a><p class="title"><b>Table&#160;1.14.&#160;Detect Control IDs</b></p><div class="table-contents"><table summary="Detect Control IDs" width="100%" border="0"><colgroup><col class="c1"><col class="c2"><col class="c3"><col class="c4"></colgroup><thead><tr><th colspan="2" align="left">ID</th><th align="left">Type</th><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><th colspan="3" align="left">Description</th></tr></thead><tbody valign="top"><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_DETECT_CLASS</code>&#160;</td><td valign="top">class</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">The Detect class
843descriptor. Calling <a class="link" href="vidioc-queryctrl.html" title="ioctl VIDIOC_QUERYCTRL, VIDIOC_QUERY_EXT_CTRL, VIDIOC_QUERYMENU"><code class="constant">VIDIOC_QUERYCTRL</code></a> for this control will return a
844description of this control class.</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_DETECT_MD_MODE</code>&#160;</td><td valign="top">menu</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Sets the motion detection mode.</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_DETECT_MD_MODE_DISABLED</code>
845		  </td><td valign="top">Disable motion detection.</td></tr><tr><td valign="top"><code class="constant">V4L2_DETECT_MD_MODE_GLOBAL</code>
846		  </td><td valign="top">Use a single motion detection threshold.</td></tr><tr><td valign="top"><code class="constant">V4L2_DETECT_MD_MODE_THRESHOLD_GRID</code>
847		  </td><td valign="top">The image is divided into a grid, each cell with its own
848		  motion detection threshold. These thresholds are set through the
849		  <code class="constant">V4L2_CID_DETECT_MD_THRESHOLD_GRID</code> matrix control.</td></tr><tr><td valign="top"><code class="constant">V4L2_DETECT_MD_MODE_REGION_GRID</code>
850		  </td><td valign="top">The image is divided into a grid, each cell with its own
851		  region value that specifies which per-region motion detection thresholds
852		  should be used. Each region has its own thresholds. How these per-region
853		  thresholds are set up is driver-specific. The region values for the grid are set
854		  through the <code class="constant">V4L2_CID_DETECT_MD_REGION_GRID</code> matrix
855		  control.</td></tr></tbody></table></td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_DETECT_MD_GLOBAL_THRESHOLD</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Sets the global motion detection threshold to be
856	  used with the <code class="constant">V4L2_DETECT_MD_MODE_GLOBAL</code> motion detection mode.</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_DETECT_MD_THRESHOLD_GRID</code>&#160;</td><td valign="top">__u16 matrix</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Sets the motion detection thresholds for each cell in the grid.
857	  To be used with the <code class="constant">V4L2_DETECT_MD_MODE_THRESHOLD_GRID</code>
858	  motion detection mode. Matrix element (0, 0) represents the cell at the top-left of the
859	  grid.</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_DETECT_MD_REGION_GRID</code>&#160;</td><td valign="top">__u8 matrix</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Sets the motion detection region value for each cell in the grid.
860	  To be used with the <code class="constant">V4L2_DETECT_MD_MODE_REGION_GRID</code>
861	  motion detection mode. Matrix element (0, 0) represents the cell at the top-left of the
862	  grid.</td></tr></tbody></table></div></div><br class="table-break"></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="rf-tuner-controls"></a>RF Tuner Control Reference</h3></div></div></div><p>
863The RF Tuner (RF_TUNER) class includes controls for common features of devices
864having RF tuner.
865      </p><p>
866In this context, RF tuner is radio receiver circuit between antenna and
867demodulator. It receives radio frequency (RF) from the antenna and converts that
868received signal to lower intermediate frequency (IF) or baseband frequency (BB).
869Tuners that could do baseband output are often called Zero-IF tuners. Older
870tuners were typically simple PLL tuners inside a metal box, whilst newer ones
871are highly integrated chips without a metal box "silicon tuners". These controls
872are mostly applicable for new feature rich silicon tuners, just because older
873tuners does not have much adjustable features.
874      </p><p>
875For more information about RF tuners see
876<a class="ulink" href="http://en.wikipedia.org/wiki/Tuner_%28radio%29" target="_top">Tuner (radio)</a>
877and
878<a class="ulink" href="http://en.wikipedia.org/wiki/RF_front_end" target="_top">RF front end</a>
879from Wikipedia.
880      </p><div class="table"><a name="rf-tuner-control-id"></a><p class="title"><b>Table&#160;1.15.&#160;RF_TUNER Control IDs</b></p><div class="table-contents"><table summary="RF_TUNER Control IDs" width="100%" border="0"><colgroup><col class="c1"><col class="c2"><col class="c3"><col class="c4"></colgroup><thead><tr><th colspan="2" align="left">ID</th><th align="left">Type</th><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><th colspan="3" align="left">Description</th></tr></thead><tbody valign="top"><tr><td valign="top">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td><td class="auto-generated">&#160;</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_RF_TUNER_CLASS</code>&#160;</td><td valign="top">class</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">The RF_TUNER class
881descriptor. Calling <a class="link" href="vidioc-queryctrl.html" title="ioctl VIDIOC_QUERYCTRL, VIDIOC_QUERY_EXT_CTRL, VIDIOC_QUERYMENU"><code class="constant">VIDIOC_QUERYCTRL</code></a> for this control will return a
882description of this control class.</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_RF_TUNER_BANDWIDTH_AUTO</code>&#160;</td><td valign="top">boolean</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Enables/disables tuner radio channel
883bandwidth configuration. In automatic mode bandwidth configuration is performed
884by the driver.</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_RF_TUNER_BANDWIDTH</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Filter(s) on tuner signal path are used to
885filter signal according to receiving party needs. Driver configures filters to
886fulfill desired bandwidth requirement. Used when V4L2_CID_RF_TUNER_BANDWIDTH_AUTO is not
887set. Unit is in Hz. The range and step are driver-specific.</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_RF_TUNER_LNA_GAIN_AUTO</code>&#160;</td><td valign="top">boolean</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Enables/disables LNA automatic gain control (AGC)</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_RF_TUNER_MIXER_GAIN_AUTO</code>&#160;</td><td valign="top">boolean</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Enables/disables mixer automatic gain control (AGC)</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_RF_TUNER_IF_GAIN_AUTO</code>&#160;</td><td valign="top">boolean</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Enables/disables IF automatic gain control (AGC)</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_RF_TUNER_LNA_GAIN</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">LNA (low noise amplifier) gain is first
888gain stage on the RF tuner signal path. It is located very close to tuner
889antenna input. Used when <code class="constant">V4L2_CID_RF_TUNER_LNA_GAIN_AUTO</code> is not set.
890The range and step are driver-specific.</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_RF_TUNER_MIXER_GAIN</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Mixer gain is second gain stage on the RF
891tuner signal path. It is located inside mixer block, where RF signal is
892down-converted by the mixer. Used when <code class="constant">V4L2_CID_RF_TUNER_MIXER_GAIN_AUTO</code>
893is not set. The range and step are driver-specific.</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_RF_TUNER_IF_GAIN</code>&#160;</td><td valign="top">integer</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">IF gain is last gain stage on the RF tuner
894signal path. It is located on output of RF tuner. It controls signal level of
895intermediate frequency output or baseband output. Used when
896<code class="constant">V4L2_CID_RF_TUNER_IF_GAIN_AUTO</code> is not set. The range and step are
897driver-specific.</td></tr><tr><td colspan="2" valign="top"><code class="constant">V4L2_CID_RF_TUNER_PLL_LOCK</code>&#160;</td><td valign="top">boolean</td><td class="auto-generated">&#160;</td></tr><tr><td class="auto-generated">&#160;</td><td colspan="3" valign="top">Is synthesizer PLL locked? RF tuner is
898receiving given frequency when that control is set. This is a read-only control.
899</td></tr></tbody></table></div></div><br class="table-break"></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="control.html">Prev</a>&#160;</td><td width="20%" align="center"><a accesskey="u" href="common.html">Up</a></td><td width="40%" align="right">&#160;<a accesskey="n" href="format.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">User Controls&#160;</td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top">&#160;Data Formats</td></tr></table></div></body></html>
900