7.38. ioctl VIDIOC_G_PRIORITY, VIDIOC_S_PRIORITY¶
7.38.1. 名称¶
VIDIOC_G_PRIORITY - VIDIOC_S_PRIORITY - 查询或请求与文件描述符关联的访问优先级
7.38.2. 概要¶
-
VIDIOC_G_PRIORITY¶
int ioctl(int fd, VIDIOC_G_PRIORITY, enum v4l2_priority *argp)
-
VIDIOC_S_PRIORITY¶
int ioctl(int fd, VIDIOC_S_PRIORITY, const enum v4l2_priority *argp)
7.38.3. 参数¶
fd
由
open()
返回的文件描述符。argp
指向 enum
v4l2_priority
类型的指针。
7.38.4. 描述¶
要查询当前的访问优先级,应用程序调用 VIDIOC_G_PRIORITY ioctl,并使用指向 enum v4l2_priority
变量的指针,驱动程序将当前优先级存储在该变量中。
要请求访问优先级,应用程序将所需的优先级存储在 enum v4l2_priority
变量中,并调用 VIDIOC_S_PRIORITY ioctl,并使用指向此变量的指针。
-
type v4l2_priority¶
|
0 |
|
|
1 |
最低优先级,通常是在后台运行的应用程序,例如监视VBI传输。 如果多个应用程序想要以该优先级从设备读取数据,则需要在用户空间中运行代理应用程序。 |
|
2 |
|
|
2 |
中等优先级,通常是由用户启动和交互控制的应用程序。 例如,电视观看器,图文电视浏览器,或仅是用于更改频道或视频控制的“面板”应用程序。 除非应用程序请求其他优先级,否则这是默认优先级。 |
|
3 |
最高优先级。 只有一个文件描述符可以具有此优先级,它会阻止任何其他fd更改设备属性。 通常是必须不能中断的应用程序,例如视频录制。 |
7.38.5. 返回值¶
成功时返回0,出错时返回-1,并且会适当地设置 errno
变量。 通用错误代码在 通用错误代码 章节中进行了描述。
- EINVAL
请求的优先级值无效。
- EBUSY
另一个应用程序已经请求了更高的优先级。