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