Platform: ROCKCHIP
操作系统:安卓6.0
Kernel: 3.10.92
UVC协议官方文档:
33558 www.USB.org/developers/docs/dev class _ docs /
USB_Video_Example 1.5.pdf
和
UVC 1.5 Class specification.pdf
每个视频功能都有一个视频控制(VC )接口和几个视频流(vs )接口。
VC用于设备控制,VS用于数据流传输。 同一视频捕获(视频采集卡可以有多个) ) )
VC和VS称为视频接口连接(vic ),在协议中使用接口描述符(IAD )进行描述。
视频功能相当于USB协议的接口级别,有两种接口subclass :
视频控制接口
视频流接口
UVC中的另一个接口是接口关联描述符,其subclass是
视频接口收集。
为了细化管理视频功能,内部分为多个实体,有:两种
Units和终端
其中主要有以下模块:
it (输入终端)、ot (输出终端)、su (选择单元) )。
处理单元(pu ),欧盟)编码单元)。
代码将读取与每个entities对应的描述符,并检索相应的信息。
这些实体的关系可以从下图中理解,摘自USB_Video_Example 1.5.pdf
VS包含不同的设置。 在这里,settings应该了解某种配置的不同模式。
举个例子,例如手机有手机模式,有铃声,振动,静音。 这就是settings。
VS有setting 0和setting 1。 下图为接口0和接口1的描述符
继承表例:
如果理解以上部分,则UVC协议基本上可以理解,其他部分是记述各描述符中的各字段的含义的部分,
相遇后可以仔细看。