UVC视频控制接口(VideoControl Interface)
2022-03-09
1555
0
UVC视频控制接口(VideoControl Interface)控制视频设备的功能行为。它由USB标准描述符和UVC特定类的描述符来描述。
Standard VC interface descriptor标识接口编号和设备类别,并提供属于该接口的端点数。此接口通过默认端点0使用UVC特定类请求实现UVC设备的控制。另一个可选的状态中断端点的用于向主机发送异步状态通知。该中断端点由两者描述标准和特定于类的端点描述符。
特定于类的 VC 接口描述符描述了视频设备的整个拓扑结构。它包括单元描述符和终端描述符。本示例应用程序不包含任何单元,因此只能在描述符层次结构中找到终端描述符。
类特定描述符以称为 VC 接口头描述符的头开始。这个描述符提到了遵循的 UVC 规范的版本和这个 VideoControl 接口所属的流接口的集合。
输入终端描述符提供有关视频设备输入源的功能方面的信息。 以下代码显示了此描述符的字段:
USB_VC_INPUT_TERMINAL, /* 2 bDescriptorSubType - INPUT TERMINAL */
0x01, /* 3 bTerminalID */
0x01, 0x02, /* 4 wTerminalType - ITT_CAMERA type (CCD Sensor) */
0x00, /* 6 bAssocTerminal - No association */
在上面的代码中,“bTerminalID”是该终端的唯一标识符,“bTerminalType”将相机声明为输入类型。
输出终端描述符显示在以下代码中
USB_VC_OUPUT_TERMINAL, /* 2 bDescriptorSubType - OUTPUT TERMINAL */
0x02, /* 3 bTerminalID */
0x01, 0x01, /* 4 wTerminalType - TT_STREAMING type */
0x00, /* 6 bAssocTerminal - No association */
0x01, /* 7 bSourceID - Source is Input terminal 1 */
0x00, /* 8 iTerminal - Unused */
上面的描述符表明‘bSourceID’被定义为0x01,即输入终端的‘bTerminalID’。 此信息显示单元之间的互连,主机使用它来识别视频设备的拓扑结构。
HID人机交互QQ群:564808376
UAC音频QQ群:218581009
UVC相机QQ群:331552032
BOT&UASP大容量存储QQ群:258159197
STC-USB单片机QQ群:315457461
USB技术交流QQ群2:580684376
USB技术交流QQ群:952873936