GNU Linux-libre 4.14.295-gnu1
[releases.git] / Documentation / media / uapi / v4l / vidioc-g-output.rst
1 .. -*- coding: utf-8; mode: rst -*-
2
3 .. _VIDIOC_G_OUTPUT:
4
5 **************************************
6 ioctl VIDIOC_G_OUTPUT, VIDIOC_S_OUTPUT
7 **************************************
8
9 Name
10 ====
11
12 VIDIOC_G_OUTPUT - VIDIOC_S_OUTPUT - Query or select the current video output
13
14
15 Synopsis
16 ========
17
18 .. c:function:: int ioctl( int fd, VIDIOC_G_OUTPUT, int *argp )
19     :name: VIDIOC_G_OUTPUT
20
21 .. c:function:: int ioctl( int fd, VIDIOC_S_OUTPUT, int *argp )
22     :name: VIDIOC_S_OUTPUT
23
24
25 Arguments
26 =========
27
28 ``fd``
29     File descriptor returned by :ref:`open() <func-open>`.
30
31 ``argp``
32     Pointer to an integer with output index.
33
34
35 Description
36 ===========
37
38 To query the current video output applications call the
39 :ref:`VIDIOC_G_OUTPUT <VIDIOC_G_OUTPUT>` ioctl with a pointer to an integer where the driver
40 stores the number of the output, as in the struct
41 :c:type:`v4l2_output` ``index`` field. This ioctl will
42 fail only when there are no video outputs, returning the ``EINVAL`` error
43 code.
44
45 To select a video output applications store the number of the desired
46 output in an integer and call the :ref:`VIDIOC_S_OUTPUT <VIDIOC_G_OUTPUT>` ioctl with a
47 pointer to this integer. Side effects are possible. For example outputs
48 may support different video standards, so the driver may implicitly
49 switch the current standard. standard. Because of these possible side
50 effects applications must select an output before querying or
51 negotiating any other parameters.
52
53 Information about video outputs is available using the
54 :ref:`VIDIOC_ENUMOUTPUT` ioctl.
55
56
57 Return Value
58 ============
59
60 On success 0 is returned, on error -1 and the ``errno`` variable is set
61 appropriately. The generic error codes are described at the
62 :ref:`Generic Error Codes <gen-errors>` chapter.
63
64 EINVAL
65     The number of the video output is out of bounds, or there are no
66     video outputs at all.