7.9. ioctl VIDIOC_DV_TIMINGS_CAP, VIDIOC_SUBDEV_DV_TIMINGS_CAP

7.9.1. 名称

VIDIOC_DV_TIMINGS_CAP - VIDIOC_SUBDEV_DV_TIMINGS_CAP - 数字视频接收器/发送器的功能

7.9.2. 概要

VIDIOC_DV_TIMINGS_CAP

int ioctl(int fd, VIDIOC_DV_TIMINGS_CAP, struct v4l2_dv_timings_cap *argp)

VIDIOC_SUBDEV_DV_TIMINGS_CAP

int ioctl(int fd, VIDIOC_SUBDEV_DV_TIMINGS_CAP, struct v4l2_dv_timings_cap *argp)

7.9.3. 参数

fd

open() 返回的文件描述符。

argp

指向结构体 v4l2_dv_timings_cap 的指针。

7.9.4. 描述

要查询 DV 接收器/发送器的功能,应用程序需将 pad 字段初始化为 0,将结构体 v4l2_dv_timings_cap 的保留数组置零,并在视频节点上调用 VIDIOC_DV_TIMINGS_CAP ioctl,驱动程序将填充该结构体。

注意

在切换视频输入或输出后,驱动程序可能会返回不同的值。

当驱动程序实现时,可以通过直接在子设备节点上调用 VIDIOC_SUBDEV_DV_TIMINGS_CAP ioctl 来查询子设备的 DV 功能。 这些功能特定于输入(对于 DV 接收器)或输出(对于 DV 发送器),应用程序必须在结构体 v4l2_dv_timings_cappad 字段中指定所需的 pad 编号,并将 reserved 数组置零。 尝试查询不支持这些功能的 pad 将返回 EINVAL 错误代码。

type v4l2_bt_timings_cap
结构体 v4l2_bt_timings_cap

__u32

min_width

活动视频的最小宽度(以像素为单位)。

__u32

max_width

活动视频的最大宽度(以像素为单位)。

__u32

min_height

活动视频的最小高度(以行为单位)。

__u32

max_height

活动视频的最大高度(以行为单位)。

__u64

min_pixelclock

最小像素时钟频率(以赫兹为单位)。

__u64

max_pixelclock

最大像素时钟频率(以赫兹为单位)。

__u32

standards

硬件支持的视频标准。 有关标准列表,请参见 DV BT 时序标准

__u32

capabilities

提供有关功能的更多信息的几个标志。 有关标志的描述,请参见 DV BT 时序功能

__u32

reserved[16]

为将来的扩展保留。 驱动程序必须将数组设置为零。

type v4l2_dv_timings_cap
结构体 v4l2_dv_timings_cap

__u32

type

DV 时序类型 中列出的 DV 时序类型。

__u32

pad

媒体控制器 API 报告的 pad 编号。 此字段仅在子设备节点上操作时使用。 当在视频节点上操作时,应用程序必须将此字段设置为零。

__u32

reserved[2]

为将来的扩展保留。

驱动程序和应用程序必须将数组设置为零。

union {

(匿名)

struct v4l2_bt_timings_cap

bt

硬件的 BT.656/1120 时序功能。

__u32

raw_data[32]

}

DV BT 时序功能

标志

描述

V4L2_DV_BT_CAP_INTERLACED

支持隔行扫描格式。

V4L2_DV_BT_CAP_PROGRESSIVE

支持逐行扫描格式。

V4L2_DV_BT_CAP_REDUCED_BLANKING

CVT/GTF 特定:时序可以使用减少的消隐(CVT)或“辅助 GTF”曲线(GTF)。

V4L2_DV_BT_CAP_CUSTOM

可以支持非标准时序,即不属于 standards 字段中设置的标准的时序。

7.9.5. 返回值

成功时返回 0,出错时返回 -1,并且会适当地设置 errno 变量。 通用错误代码在 通用错误代码 章节中描述。