39 lines
1.7 KiB
ReStructuredText
39 lines
1.7 KiB
ReStructuredText
|
.. -*- coding: utf-8; mode: rst -*-
|
||
|
|
||
|
.. _dv-timings:
|
||
|
|
||
|
**************************
|
||
|
Digital Video (DV) Timings
|
||
|
**************************
|
||
|
|
||
|
The video standards discussed so far have been dealing with Analog TV
|
||
|
and the corresponding video timings. Today there are many more different
|
||
|
hardware interfaces such as High Definition TV interfaces (HDMI), VGA,
|
||
|
DVI connectors etc., that carry video signals and there is a need to
|
||
|
extend the API to select the video timings for these interfaces. Since
|
||
|
it is not possible to extend the :ref:`v4l2_std_id <v4l2-std-id>`
|
||
|
due to the limited bits available, a new set of ioctls was added to
|
||
|
set/get video timings at the input and output.
|
||
|
|
||
|
These ioctls deal with the detailed digital video timings that define
|
||
|
each video format. This includes parameters such as the active video
|
||
|
width and height, signal polarities, frontporches, backporches, sync
|
||
|
widths etc. The ``linux/v4l2-dv-timings.h`` header can be used to get
|
||
|
the timings of the formats in the :ref:`cea861` and :ref:`vesadmt`
|
||
|
standards.
|
||
|
|
||
|
To enumerate and query the attributes of the DV timings supported by a
|
||
|
device applications use the
|
||
|
:ref:`VIDIOC_ENUM_DV_TIMINGS` and
|
||
|
:ref:`VIDIOC_DV_TIMINGS_CAP` ioctls. To set
|
||
|
DV timings for the device applications use the
|
||
|
:ref:`VIDIOC_S_DV_TIMINGS <VIDIOC_G_DV_TIMINGS>` ioctl and to get
|
||
|
current DV timings they use the
|
||
|
:ref:`VIDIOC_G_DV_TIMINGS <VIDIOC_G_DV_TIMINGS>` ioctl. To detect
|
||
|
the DV timings as seen by the video receiver applications use the
|
||
|
:ref:`VIDIOC_QUERY_DV_TIMINGS` ioctl.
|
||
|
|
||
|
Applications can make use of the :ref:`input-capabilities` and
|
||
|
:ref:`output-capabilities` flags to determine whether the digital
|
||
|
video ioctls can be used with the given input or output.
|