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