windows上面通过dshow接口访问uvc摄像头扩展单元,只能访问0x01-0x19问题

最近在给客户做一个修改摄像头数据的工具,在通过dshow接口发送扩展命令的时候发现0x01-0x19命令都可以发送成功,0x20及以上定义的命令都发送失败,并且返回错误码0x80070490。

谷歌百度查了很久终于在windows官网文档中找到了答案:

dshow是通过windows通用视频类驱动控制摄像头的,而该驱动把单个扩展单元命令个数限制在31个,即最多支持0x01-0x19命令。

windows上面通过dshow接口访问uvc摄像头扩展单元,只能访问0x01-0x19问题

 所以大家如果私有命令过多,可以多建几个扩展单元。

还有就是这个限制只有windows,在linux上面没有这个限制。

官网文章链接:https://docs.microsoft.com/en-us/windows-hardware/drivers/stream/device-requirements-for-usb-video-class-extension-units

上一篇:0x01信息搜集


下一篇:[ 记录 ]