USBTreeView遇到连续的转换接口描述符不解释情况说明
2021-12-01
474
0
今天拿到一个USB摄像头,对其进行数据格式分析,出现了一个令人迷惑的问题…
事情是这样的,我用POTPLAYER打开摄像头,使用BUSHOUND进行抓包,选择的备用接口是0x0c
CTL 01 0b 0c 00 01 00 00 00 SET_INTERFACE
为了查看该端点的数据大小,我使用USBTREEVIEW查看分析的配置描述符,可竟然到了换接口为6时就变成了IAD了,是该复合设备的另一个麦克风了。
竟然没有了该转换接口,那这个是怎么来的?
我记得SET_INTERFACE请求的wValue就是转换接口的ID啊,莫非有特殊的情况?我又翻了一个USB2.0的规范,没有找到问题所在。。。
这个USB标准请求很简单啊,不可能有错的。但通过BUSHOUND又是实实在在的0x0c.
最后自己向上看了一眼配配描述符的原始数据,原来确实有该接口描述符,不过解释完了转换接口6后自动不再解释后续的接口描述符,而是解释音频设备的IAD。
不知道这个是USBTREEVIEW自己设计这样的的,还是它的BUG.
题外话:自己也将USBVIEW弄了一个VS2019的工程,看来是有必要自己弄一个自己的UsbTreeView工具,这样也可以把HID报告描述符等的解析加进去。
HID人机交互QQ群:564808376
UAC音频QQ群:218581009
UVC相机QQ群:331552032
BOT&UASP大容量存储QQ群:258159197
STC-USB单片机QQ群:315457461
USB技术交流QQ群2:580684376
USB技术交流QQ群:952873936