UVC规范(USB摄像头)
+ -

UVC 输出终端描述符

2020-09-30 1591 0

输出终端描述符用于向主机报告视频数据输出终端的相关信息。
输出终端描述符使用bTerminalID描述输出端点的ID,且这个ID是惟一的。
输出终端描述符位于视频控制接口中。

输出终端描述符结构体定义如下:

// Output Terminal Descriptor
typedef struct _USB_OT_DESCRIPTOR
{
   UINT8  bLength;
   UINT8  bDescriptorType;
   UINT8  bDescriptorSubtype;
   UINT8  bTerminalID;
   UINT16 wTerminalType;
   UINT8  bAssocTerminal;
   UINT8  bSourceID;
   UINT8  iTerminal;
   UINT8  reserved[0];
} USB_OT_DESCRIPTOR;
  • bLength :输出终端描述符结构体的大小。9 (+ x)
  • bDescriptorType:输输出终端描述符类型。CS_INTERFACE,值为0X24;
  • bDescriptorSubtype:输输出终端描述符子类型。VC_OUTPUT_TERMINA ,值为0x03。
  • bTerminalID:输出终端描述符的ID,非零值。所有请求使用此值来寻址输出端点。
  • wTerminalType:端点类型。见UVC端点类型。
  • bAssocTerminal:此输出终端关联的输入端点,如没有则为0.

    一个例子是摄像机上的磁带单元,它有输入和输出终端,分别接收和发送视频。如果使用bAssocTerminal字段,则两个关联的终端必须属于双向终端类型组。如果不存在关联,则必须将AssocTerminal字段设置为零。

  • bSourceID:此终端所连接的设备或终端的ID。
  • iTerminal:描述此输出端点的字符串描述符索引。
  • reserved:根据端点类型,某些输出端点描述符具有附加字段。

输出终端类型

类型 IO 描述
OTT_VENDOR_SPECIFIC 0x300 O 厂商指定输出端点
OTT_DISPLAY 0x301 O 通用显示(LCD,CRT等)
OTT_MEDIA_TRANSPORT_OUTPUT 0x302 O 序列媒体,仅用于媒体端点描述符
TT_VENDOR_SPECIFIC 0x0100 I/O 一种处理通过供应商特定接口传输的信号的终端。供应商特定的接口描述符必须包含一个引用终端的字段。
TT_STREAMING 0x0101 I/O 一种终端,处理视频流接口中端点上携带的信号。VideoStreaming接口描述符通过bTerminalLink字段指向相关的终端。

输出终端描述符示例

        ------- Video Control Output Terminal Descriptor ------
bLength                  : 0x09 (9 bytes)
bDescriptorType          : 0x24 (Video Control Interface)
bDescriptorSubtype       : 0x03 (Output Terminal)
bTerminalID              : 0x05 (5)
wTerminalType            : 0x0101 (TT_STREAMING)
bAssocTerminal           : 0x00 (Not associated with an Input Terminal)
bSourceID                : 0x04 (4)
iTerminal                : 0x00 (No String Descriptor)
Data (HexDump)           : 09 24 03 05 01 01 00 04 00                        .$.......
HID人机交互QQ群:564808376    UAC音频QQ群:218581009    UVC相机QQ群:331552032    BOT&UASP大容量存储QQ群:258159197    STC-USB单片机QQ群:315457461    USB技术交流QQ群2:580684376    USB技术交流QQ群:952873936   

0 篇笔记 写笔记

UVC 输出终端描述符
输出终端描述符用于向主机报告视频数据输出终端的相关信息。输出终端描述符使用bTerminalID描述输出端点的ID,且这个ID是惟一的。输出终端描述符位于视频控制接口中。输出终端描述符结构体定义如下:// Output Terminal Descriptortypedef struct _US......
关注公众号
取消
感谢您的支持,我会继续努力的!
扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

您的支持,是我们前进的动力!