7.33. ioctl VIDIOC_G_INPUT, VIDIOC_S_INPUT

7.33.1. 名稱

VIDIOC_G_INPUT - VIDIOC_S_INPUT - 查詢或選擇當前影片輸入

7.33.2. 概要

VIDIOC_G_INPUT

int ioctl(int fd, VIDIOC_G_INPUT, int *argp)

VIDIOC_S_INPUT

int ioctl(int fd, VIDIOC_S_INPUT, int *argp)

7.33.3. 引數

fd

open() 返回的檔案描述符。

argp

指向帶有輸入索引的整數的指標。

7.33.4. 描述

要查詢當前影片輸入,應用程式呼叫 VIDIOC_G_INPUT ioctl,並提供指向整數的指標,驅動程式會將輸入編號儲存在該整數中,如 struct v4l2_input index 欄位。 僅當沒有影片輸入時,此 ioctl 才會失敗,並返回 EINVAL

要選擇影片輸入,應用程式將所需輸入的編號儲存在一個整數中,並呼叫 VIDIOC_S_INPUT ioctl,並提供指向此整數的指標。 可能會產生副作用。 例如,輸入可能支援不同的影片標準,因此驅動程式可能會隱式切換當前標準。 由於這些可能的副作用,應用程式必須先選擇輸入,然後才能查詢或協商任何其他引數。

有關影片輸入的資訊可使用 ioctl VIDIOC_ENUMINPUT ioctl 獲得。

7.33.5. 返回值

成功時返回 0,出錯時返回 -1,並且 errno 變數會得到適當設定。 通用錯誤程式碼在 通用錯誤程式碼 章節中描述。

EINVAL

影片輸入的編號超出範圍。