Merge remote-tracking branch 'ftrace/for-next'
[deliverable/linux.git] / Documentation / media / uapi / v4l / vidioc-querystd.rst
CommitLineData
5377d91f
MH
1.. -*- coding: utf-8; mode: rst -*-
2
af4a4d0d 3.. _VIDIOC_QUERYSTD:
5377d91f
MH
4
5*********************
6ioctl VIDIOC_QUERYSTD
7*********************
8
15e7d615 9Name
586027ce 10====
5377d91f 11
586027ce 12VIDIOC_QUERYSTD - Sense the video standard received by the current input
5377d91f 13
15e7d615
MCC
14
15Synopsis
5377d91f
MH
16========
17
41d80465
MCC
18.. c:function:: int ioctl( int fd, VIDIOC_QUERYSTD, v4l2_std_id *argp )
19 :name: VIDIOC_QUERYSTD
5377d91f 20
586027ce 21
15e7d615 22Arguments
5377d91f
MH
23=========
24
25``fd``
26 File descriptor returned by :ref:`open() <func-open>`.
27
5377d91f
MH
28``argp``
29
30
15e7d615 31Description
5377d91f
MH
32===========
33
34The hardware may be able to detect the current video standard
2212ff25 35automatically. To do so, applications call :ref:`VIDIOC_QUERYSTD` with a
5377d91f
MH
36pointer to a :ref:`v4l2_std_id <v4l2-std-id>` type. The driver
37stores here a set of candidates, this can be a single flag or a set of
38supported standards if for example the hardware can only distinguish
39between 50 and 60 Hz systems. If no signal was detected, then the driver
40will return V4L2_STD_UNKNOWN. When detection is not possible or fails,
41the set must contain all standards supported by the current video input
42or output.
43
b6b6e678
MCC
44.. note::
45
46 Drivers shall *not* switch the video standard
706f8a99
MCC
47 automatically if a new video standard is detected. Instead, drivers
48 should send the ``V4L2_EVENT_SOURCE_CHANGE`` event (if they support
49 this) and expect that userspace will take action by calling
50 :ref:`VIDIOC_QUERYSTD`. The reason is that a new video standard can mean
51 different buffer sizes as well, and you cannot change buffer sizes on
52 the fly. In general, applications that receive the Source Change event
53 will have to call :ref:`VIDIOC_QUERYSTD`, and if the detected video
54 standard is valid they will have to stop streaming, set the new
55 standard, allocate new buffers and start streaming again.
5377d91f
MH
56
57
15e7d615 58Return Value
5377d91f
MH
59============
60
61On success 0 is returned, on error -1 and the ``errno`` variable is set
62appropriately. The generic error codes are described at the
63:ref:`Generic Error Codes <gen-errors>` chapter.
64
65ENODATA
66 Standard video timings are not supported for this input or output.
This page took 0.048587 seconds and 5 git commands to generate.