<?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_OUTPUT, VIDIOC_S_OUTPUT</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 A. Function Reference" /><link rel="prev" href="re45.html" title="ioctl VIDIOC_G_MODULATOR, VIDIOC_S_MODULATOR" /><link rel="next" href="re47.html" title="ioctl VIDIOC_G_PARM, VIDIOC_S_PARM" /></head><body><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">ioctl VIDIOC_G_OUTPUT, VIDIOC_S_OUTPUT</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="re45.html">Prev</a> </td><th width="60%" align="center">Appendix A. Function Reference</th><td width="20%" align="right"> <a accesskey="n" href="re47.html">Next</a></td></tr></table><hr /></div><div class="refentry" title="ioctl VIDIOC_G_OUTPUT, VIDIOC_S_OUTPUT"><a id="vidioc-g-output"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>VIDIOC_G_OUTPUT, VIDIOC_S_OUTPUT — Query or select the current video output</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> </td><td>int <var class="pdparam">request</var>, </td></tr><tr><td> </td><td>int *<var class="pdparam">argp</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1" title="Arguments"><a id="id2718685"></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_OUTPUT, VIDIOC_S_OUTPUT</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="id2718753"></a><h2>Description</h2><p>To query the current video output applications call the <code class="constant">VIDIOC_G_OUTPUT</code> ioctl with a pointer to an integer where the driver stores the number of the output, as in the struct <a class="link" href="re32.html#v4l2-output" title="Table A.25. struct v4l2_output">v4l2_output</a> <em class="structfield"><code>index</code></em> field. This ioctl will fail only when there are no video outputs, returning the <span class="errorcode">EINVAL</span> error code.</p><p>To select a video output applications store the number of the desired output in an integer and call the <code class="constant">VIDIOC_S_OUTPUT</code> ioctl with a pointer to this integer. Side effects are possible. For example outputs may support different video standards, so the driver may implicitly switch the current standard. It is good practice to select an output before querying or negotiating any other parameters.</p><p>Information about video outputs is available using the <a class="link" href="re32.html" title="ioctl VIDIOC_ENUMOUTPUT"><code class="constant">VIDIOC_ENUMOUTPUT</code></a> ioctl.</p></div><div class="refsect1" title="Return Value"><a id="id2718813"></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>The number of the video output is out of bounds, or there are no video outputs at all and this 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 output 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="re45.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="apa.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="re47.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">ioctl VIDIOC_G_MODULATOR, VIDIOC_S_MODULATOR </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> ioctl VIDIOC_G_PARM, VIDIOC_S_PARM</td></tr></table></div></body></html>