<?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_PRIORITY, VIDIOC_S_PRIORITY</title><meta name="generator" content="DocBook XSL Stylesheets V1.76.1" /><link rel="home" href="index.html" title="LINUX MEDIA INFRASTRUCTURE API" /><link rel="up" href="user-func.html" title="Appendix A. Function Reference" /><link rel="prev" href="vidioc-g-parm.html" title="ioctl VIDIOC_G_PARM, VIDIOC_S_PARM" /><link rel="next" href="vidioc-g-sliced-vbi-cap.html" title="ioctl VIDIOC_G_SLICED_VBI_CAP" /></head><body><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">ioctl VIDIOC_G_PRIORITY, VIDIOC_S_PRIORITY</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="vidioc-g-parm.html">Prev</a> </td><th width="60%" align="center">Appendix A. Function Reference</th><td width="20%" align="right"> <a accesskey="n" href="vidioc-g-sliced-vbi-cap.html">Next</a></td></tr></table><hr /></div><div class="refentry" title="ioctl VIDIOC_G_PRIORITY, VIDIOC_S_PRIORITY"><a id="vidioc-g-priority"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>VIDIOC_G_PRIORITY, VIDIOC_S_PRIORITY — Query or request the access priority associated with a file descriptor</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 <strong>fsfuncioctl</strong>(</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>enum v4l2_priority *<var class="pdparam">argp</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div><div class="funcsynopsis"><table border="0" summary="Function synopsis" cellspacing="0" cellpadding="0" class="funcprototype-table"><tr><td><code class="funcdef">int <strong>fsfuncioctl</strong>(</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>const enum v4l2_priority *<var class="pdparam">argp</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1" title="Arguments"><a id="id3177368"></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="func-open.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_PRIORITY, VIDIOC_S_PRIORITY</p></dd><dt><span class="term"><em class="parameter"><code>argp</code></em></span></dt><dd><p>Pointer to an enum v4l2_priority type.</p></dd></dl></div></div><div class="refsect1" title="Description"><a id="id3177439"></a><h2>Description</h2><p>To query the current access priority applications call the <code class="constant">VIDIOC_G_PRIORITY</code> ioctl with a pointer to an enum v4l2_priority variable where the driver stores the current priority.</p><p>To request an access priority applications store the desired priority in an enum v4l2_priority variable and call <code class="constant">VIDIOC_S_PRIORITY</code> ioctl with a pointer to this variable.</p><div class="table"><a id="v4l2-priority"></a><p class="title"><strong>Table A.66. enum v4l2_priority</strong></p><div class="table-contents"><table summary="enum v4l2_priority" width="100%" border="0"><colgroup><col class="c1" /><col class="c2" /><col class="c3" /></colgroup><tbody valign="top"><tr><td valign="top"><code class="constant">V4L2_PRIORITY_UNSET</code></td><td valign="top">0</td><td valign="top"> </td></tr><tr><td valign="top"><code class="constant">V4L2_PRIORITY_BACKGROUND</code></td><td valign="top">1</td><td valign="top">Lowest priority, usually applications running in background, for example monitoring VBI transmissions. A proxy application running in user space will be necessary if multiple applications want to read from a device at this priority.</td></tr><tr><td valign="top"><code class="constant">V4L2_PRIORITY_INTERACTIVE</code></td><td valign="top">2</td><td valign="top"> </td></tr><tr><td valign="top"><code class="constant">V4L2_PRIORITY_DEFAULT</code></td><td valign="top">2</td><td valign="top">Medium priority, usually applications started and interactively controlled by the user. For example TV viewers, Teletext browsers, or just "panel" applications to change the channel or video controls. This is the default priority unless an application requests another.</td></tr><tr><td valign="top"><code class="constant">V4L2_PRIORITY_RECORD</code></td><td valign="top">3</td><td valign="top">Highest priority. Only one file descriptor can have this priority, it blocks any other fd from changing device properties. Usually applications which must not be interrupted, like video recording.</td></tr></tbody></table></div></div><br class="table-break" /></div><div class="refsect1" title="Return Value"><a id="id3177598"></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 requested priority value is invalid, or the driver does not support access priorities.</p></dd><dt><span class="term"><span class="errorcode">EBUSY</span></span></dt><dd><p>Another application already requested higher priority.</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="vidioc-g-parm.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="user-func.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="vidioc-g-sliced-vbi-cap.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">ioctl VIDIOC_G_PARM, VIDIOC_S_PARM </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_SLICED_VBI_CAP</td></tr></table></div></body></html>