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

指向 struct v4l2_dv_timings_cap 的指標。

7.9.4. 描述

要查詢 DV 接收器/發射器的功能,應用程式將 pad 欄位初始化為 0,將 struct v4l2_dv_timings_cap 的保留陣列歸零,並在影片節點上呼叫 VIDIOC_DV_TIMINGS_CAP ioctl,驅動程式將填充該結構。

注意

在切換影片輸入或輸出後,驅動程式可能會返回不同的值。

當驅動程式實現時,可以透過直接在子裝置節點上呼叫 VIDIOC_SUBDEV_DV_TIMINGS_CAP ioctl 來查詢子裝置的 DV 功能。 這些功能特定於輸入(對於 DV 接收器)或輸出(對於 DV 發射器),應用程式必須在 struct v4l2_dv_timings_cap pad 欄位中指定所需的 pad 編號,並將 reserved 陣列歸零。 嘗試查詢不支援功能的 pad 將返回 EINVAL 錯誤程式碼。

type v4l2_bt_timings_cap
struct v4l2_bt_timings_cap

__u32

min_width

活動影片的最小寬度(以畫素為單位)。

__u32

max_width

活動影片的最大寬度(以畫素為單位)。

__u32

min_height

活動影片的最小高度(以行為單位)。

__u32

max_height

活動影片的最大高度(以行為單位)。

__u64

min_pixelclock

最小畫素時鐘頻率(以 Hz 為單位)。

__u64

max_pixelclock

最大畫素時鐘頻率(以 Hz 為單位)。

__u32

standards

硬體支援的影片標準。 有關標準列表,請參閱 DV BT 時序標準

__u32

capabilities

一些標誌,提供有關功能的更多資訊。 有關標誌的說明,請參閱 DV BT 時序功能

__u32

reserved[16]

保留供將來擴充套件使用。 驅動程式必須將陣列設定為零。

type v4l2_dv_timings_cap
struct 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 時序功能

Flag

描述

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 變數。 泛型錯誤程式碼在 泛型錯誤程式碼 章節中描述。