Sophie

Sophie

distrib > CentOS > 6 > i386 > by-pkgid > cf93d8a8acdcc6fe2225039da0502495 > files > 2742

kernel-doc-2.6.32-131.17.1.el6.centos.plus.noarch.rpm

<?xml version="1.0" encoding="ANSI_X3.4-1968" standalone="no"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=ANSI_X3.4-1968" /><title>ioctl VIDIOC_G_AUDIO, VIDIOC_S_AUDIO</title><meta name="generator" content="DocBook XSL Stylesheets V1.75.2" /><link rel="home" href="index.html" title="LINUX MEDIA INFRASTRUCTURE API" /><link rel="up" href="apa.html" title="Appendix&#160;A.&#160;Function Reference" /><link rel="prev" href="re33.html" title="ioctl VIDIOC_ENUMSTD" /><link rel="next" href="re35.html" title="ioctl VIDIOC_G_AUDOUT, VIDIOC_S_AUDOUT" /></head><body><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">ioctl VIDIOC_G_AUDIO, VIDIOC_S_AUDIO</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="re33.html">Prev</a>&#160;</td><th width="60%" align="center">Appendix&#160;A.&#160;Function Reference</th><td width="20%" align="right">&#160;<a accesskey="n" href="re35.html">Next</a></td></tr></table><hr /></div><div class="refentry" title="ioctl VIDIOC_G_AUDIO, VIDIOC_S_AUDIO"><a id="vidioc-g-audio"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>VIDIOC_G_AUDIO, VIDIOC_S_AUDIO &#8212; Query or select the current audio input and its
attributes</p></div><div class="refsynopsisdiv" title="Synopsis"><h2>Synopsis</h2><div class="funcsynopsis"><table border="0" summary="Function synopsis" cellspacing="0" cellpadding="0" class="funcprototype-table"><tr><td><code class="funcdef">int <b class="fsfunc">ioctl</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td>&#160;</td><td>int <var class="pdparam">request</var>, </td></tr><tr><td>&#160;</td><td>struct v4l2_audio *<var class="pdparam">argp</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">&#160;</div></div><div class="funcsynopsis"><table border="0" summary="Function synopsis" cellspacing="0" cellpadding="0" class="funcprototype-table"><tr><td><code class="funcdef">int <b class="fsfunc">ioctl</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td>&#160;</td><td>int <var class="pdparam">request</var>, </td></tr><tr><td>&#160;</td><td>const struct v4l2_audio *<var class="pdparam">argp</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">&#160;</div></div></div><div class="refsect1" title="Arguments"><a id="id2892650"></a><h2>Arguments</h2><div class="variablelist"><dl><dt><span class="term"><em class="parameter"><code>fd</code></em></span></dt><dd><p>File descriptor returned by <a class="link" href="re64.html" title="V4L2 open()"><code class="function">open()</code></a>.</p></dd><dt><span class="term"><em class="parameter"><code>request</code></em></span></dt><dd><p>VIDIOC_G_AUDIO, VIDIOC_S_AUDIO</p></dd><dt><span class="term"><em class="parameter"><code>argp</code></em></span></dt><dd><p></p></dd></dl></div></div><div class="refsect1" title="Description"><a id="id2892718"></a><h2>Description</h2><p>To query the current audio input applications zero out the
<em class="structfield"><code>reserved</code></em> array of a struct&#160;<a class="link" href="re34.html#v4l2-audio" title="Table&#160;A.31.&#160;struct v4l2_audio">v4l2_audio</a>
and call the <code class="constant">VIDIOC_G_AUDIO</code> ioctl with a pointer
to this structure. Drivers fill the rest of the structure or return an
<span class="errorcode">EINVAL</span> error code when the device has no audio inputs, or none which combine
with the current video input.</p><p>Audio inputs have one writable property, the audio mode. To
select the current audio input <span class="emphasis"><em>and</em></span> change the
audio mode, applications initialize the
<em class="structfield"><code>index</code></em> and <em class="structfield"><code>mode</code></em>
fields, and the
<em class="structfield"><code>reserved</code></em> array of a
<span class="structname">v4l2_audio</span> structure and call the
<code class="constant">VIDIOC_S_AUDIO</code> ioctl. Drivers may switch to a
different audio mode if the request cannot be satisfied. However, this
is a write-only ioctl, it does not return the actual new audio
mode.</p><div class="table"><a id="v4l2-audio"></a><p class="title"><b>Table&#160;A.31.&#160;struct <span class="structname">v4l2_audio</span></b></p><div class="table-contents"><table summary="struct v4l2_audio" width="100%" border="0"><colgroup><col /><col /><col /></colgroup><tbody valign="top"><tr><td valign="top">__u32</td><td valign="top"><em class="structfield"><code>index</code></em></td><td valign="top">Identifies the audio input, set by the
driver or application.</td></tr><tr><td valign="top">__u8</td><td valign="top"><em class="structfield"><code>name</code></em>[32]</td><td valign="top">Name of the audio input, a NUL-terminated ASCII
string, for example: "Line In". This information is intended for the
user, preferably the connector label on the device itself.</td></tr><tr><td valign="top">__u32</td><td valign="top"><em class="structfield"><code>capability</code></em></td><td valign="top">Audio capability flags, see <a class="xref" href="re34.html#audio-capability" title="Table&#160;A.32.&#160;Audio Capability Flags">Table&#160;A.32, &#8220;Audio Capability Flags&#8221;</a>.</td></tr><tr><td valign="top">__u32</td><td valign="top"><em class="structfield"><code>mode</code></em></td><td valign="top">Audio mode flags set by drivers and applications (on
	    <code class="constant">VIDIOC_S_AUDIO</code> ioctl), see <a class="xref" href="re34.html#audio-mode" title="Table&#160;A.33.&#160;Audio Mode Flags">Table&#160;A.33, &#8220;Audio Mode Flags&#8221;</a>.</td></tr><tr><td valign="top">__u32</td><td valign="top"><em class="structfield"><code>reserved</code></em>[2]</td><td valign="top">Reserved for future extensions. Drivers and
applications must set the array to zero.</td></tr></tbody></table></div></div><br class="table-break" /><div class="table"><a id="audio-capability"></a><p class="title"><b>Table&#160;A.32.&#160;Audio Capability Flags</b></p><div class="table-contents"><table summary="Audio Capability Flags" width="100%" border="0"><colgroup><col /><col /><col /></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_AUDCAP_STEREO</code></td><td valign="top">0x00001</td><td valign="top">This is a stereo input. The flag is intended to
automatically disable stereo recording etc. when the signal is always
monaural. The API provides no means to detect if stereo is
<span class="emphasis"><em>received</em></span>, unless the audio input belongs to a
tuner.</td></tr><tr><td valign="top"><code class="constant">V4L2_AUDCAP_AVL</code></td><td valign="top">0x00002</td><td valign="top">Automatic Volume Level mode is supported.</td></tr></tbody></table></div></div><br class="table-break" /><div class="table"><a id="audio-mode"></a><p class="title"><b>Table&#160;A.33.&#160;Audio Mode Flags</b></p><div class="table-contents"><table summary="Audio Mode Flags" width="100%" border="0"><colgroup><col /><col /><col /></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_AUDMODE_AVL</code></td><td valign="top">0x00001</td><td valign="top">AVL mode is on.</td></tr></tbody></table></div></div><br class="table-break" /></div><div class="refsect1" title="Return Value"><a id="id2893092"></a><h2>Return Value</h2><p>On success <span class="returnvalue">0</span> is returned, on error <span class="returnvalue">-1</span> and the <code class="varname">errno</code> variable is set appropriately:</p><div class="variablelist"><dl><dt><span class="term"><span class="errorcode">EINVAL</span></span></dt><dd><p>No audio inputs combine with the current video input,
or the number of the selected audio input is out of bounds or it does
not combine, or there are no audio inputs at all and the ioctl is not
supported.</p></dd><dt><span class="term"><span class="errorcode">EBUSY</span></span></dt><dd><p>I/O is in progress, the input cannot be
switched.</p></dd></dl></div></div></div><div class="navfooter"><hr /><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="re33.html">Prev</a>&#160;</td><td width="20%" align="center"><a accesskey="u" href="apa.html">Up</a></td><td width="40%" align="right">&#160;<a accesskey="n" href="re35.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">ioctl VIDIOC_ENUMSTD&#160;</td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top">&#160;ioctl VIDIOC_G_AUDOUT, VIDIOC_S_AUDOUT</td></tr></table></div></body></html>