Commit | Line | Data |
---|---|---|
5377d91f MH |
1 | .. -*- coding: utf-8; mode: rst -*- |
2 | ||
3 | .. _querycap: | |
4 | ||
5 | ********************* | |
6 | Querying Capabilities | |
7 | ********************* | |
8 | ||
9 | Because V4L2 covers a wide variety of devices not all aspects of the API | |
10 | are equally applicable to all types of devices. Furthermore devices of | |
11 | the same type have different capabilities and this specification permits | |
12 | the omission of a few complicated and less important parts of the API. | |
13 | ||
14 | The :ref:`VIDIOC_QUERYCAP <vidioc-querycap>` ioctl is available to | |
15 | check if the kernel device is compatible with this specification, and to | |
16 | query the :ref:`functions <devices>` and :ref:`I/O methods <io>` | |
17 | supported by the device. | |
18 | ||
19 | Starting with kernel version 3.1, VIDIOC-QUERYCAP will return the V4L2 | |
20 | API version used by the driver, with generally matches the Kernel | |
21 | version. There's no need of using | |
22 | :ref:`VIDIOC_QUERYCAP <vidioc-querycap>` to check if a specific ioctl | |
23 | is supported, the V4L2 core now returns ENOTTY if a driver doesn't | |
24 | provide support for an ioctl. | |
25 | ||
26 | Other features can be queried by calling the respective ioctl, for | |
27 | example :ref:`VIDIOC_ENUMINPUT <vidioc-enuminput>` to learn about the | |
28 | number, types and names of video connectors on the device. Although | |
29 | abstraction is a major objective of this API, the | |
30 | :ref:`VIDIOC_QUERYCAP <vidioc-querycap>` ioctl also allows driver | |
31 | specific applications to reliably identify the driver. | |
32 | ||
33 | All V4L2 drivers must support ``VIDIOC_QUERYCAP``. Applications should | |
34 | always call this ioctl after opening the device. | |
35 | ||
36 | ||
37 | .. ------------------------------------------------------------------------------ | |
38 | .. This file was automatically converted from DocBook-XML with the dbxml | |
39 | .. library (https://github.com/return42/sphkerneldoc). The origin XML comes | |
40 | .. from the linux kernel, refer to: | |
41 | .. | |
42 | .. * https://github.com/torvalds/linux/tree/master/Documentation/DocBook | |
43 | .. ------------------------------------------------------------------------------ |