7.45. ioctl VIDIOC_PREPARE_BUF¶
7.45.1. 名稱¶
VIDIOC_PREPARE_BUF - 準備用於 I/O 的緩衝區
7.45.2. 概要¶
-
VIDIOC_PREPARE_BUF¶
int ioctl(int fd, VIDIOC_PREPARE_BUF, struct v4l2_buffer *argp)
7.45.3. 引數¶
fd由
open()返回的檔案描述符。argp指向 struct
v4l2_buffer的指標。
7.45.4. 描述¶
應用程式可以選擇呼叫 ioctl VIDIOC_PREPARE_BUF ioctl,以便在使用 VIDIOC_QBUF ioctl 實際排隊緩衝區之前,將緩衝區的所有權傳遞給驅動程式,併為將來的 I/O 準備它。 這種準備可能包括快取失效或清理。 提前執行它們可以節省實際 I/O 期間的時間。
struct v4l2_buffer 結構在 緩衝區 中指定。
7.45.5. 返回值¶
成功時返回 0,出錯時返回 -1,並適當設定 errno 變數。 通用錯誤程式碼在 通用錯誤程式碼 章節中描述。
- EBUSY
檔案 I/O 正在進行中。
- EINVAL
不支援緩衝區
type,或者index超出範圍,或者尚未分配任何緩衝區,或者userptr或length無效。