UVC过滤掉不需要的相机格式和分辨率
2025-01-21
28
0
手中的UVC相机支持多种格式和分辨率,为了过滤掉不需要的格式和分辨率,需要对UVC配置描述符进行挂购重置修改,使其满足我们的需求。
在原来的配置描述符上进行修改,确实是一个不错的方法。不过由于UVC配置描述符本身布局复杂,没有一点的熟练度,也很难搞出来。在这个艰难的调试过程中,要么因配置描述符的修改引起设备启动失败,要么引起usbvideo.sys驱动解析配置描述符蓝屏。
所以,其于原设备的一些关键点信息,重构配置描述符是最好的方法。不过为了尽最大公的利用设备的信息处理(如特定类请求,数据传输,选择配置,选择接口等),需要遵照以下几个关键点:
- VC和VS的接口描述符编号必须和固件的一致。
- VC和VS中的端点描述符必须和固件保持一致。
- VC中的拓扑结构中的bTernimalId或UnitId必须和固件保持一致。当然可适当裁剪不需要的
- VS中的bFormatIndex和bFrameIndex必须和固件中保持一致。
只要遵照以上几点,就可以安全的进行挂钩配置描述符,删减不需要的格式和分辨率了。
按照以下的方法,本人成功将具有YUY2,MJPG和H264格式的相机,只留下了YUY2格式的相机。
装完驱动后,在设备管理器中如下:
而原来的分辨率肯有如此之众:
HID人机交互QQ群:564808376
UAC音频QQ群:218581009
UVC相机QQ群:331552032
BOT&UASP大容量存储QQ群:258159197
STC-USB单片机QQ群:315457461
USB技术交流QQ群2:580684376
USB技术交流QQ群:952873936