UAC规范(USB音频)
+ -

UAC 标准音频控制接口描述符

2021-02-03 5448 22

音频控制接口描述符以下的描述符信息包含了音频控制的功能特征信息,音频的各控制功能均是通过音频控制接口描述符之下的各实例,终端进行控制的。

音频控制接口描述符:Standard AC Interface Descriptor。
音频控制接口描述符的定义如下:

typedef struct _USB_INTERFACE_DESCRIPTOR {
    UCHAR   bLength;
    UCHAR   bDescriptorType;
    UCHAR   bInterfaceNumber;
    UCHAR   bAlternateSetting;
    UCHAR   bNumEndpoints;
    UCHAR   bInterfaceClass;
    UCHAR   bInterfaceSubClass;
    UCHAR   bInterfaceProtocol;
    UCHAR   iInterface;
} USB_INTERFACE_DESCRIPTOR, *PUSB_INTERFACE_DESCRIPTOR;
  • bLength:描述符的字节长度,固定为9字节。
  • bDescriptorType:描述符类型,为接口描述符,固定为4.
  • bInterfaceNumber:接品描述符的编号。从0开始编号。
  • bNumEndpoints:该接口下含有端点数。如果没有数据端点则为0.
  • bAlternateSetting:接口的转换接口号。
  • bInterfaceClass:接口的类型:0x01=AUDIO,表示音频类。
  • bInterfaceSubClass:接口子类型:音频控制类型 AUDIOCONTROL=0x01
  • bInterfaceProtocol:接口协议号。
    • 如果为UAC2.0,则值应为IP_VERSION_02_00 = 0x20
    • 如果为UAC1.0,此值未用,必须设置为0.
  • iInterface:接口的字符串索引.

UAC2.0音频控制接口描述符的初始化为:

   pVCInterfaceDesc->bLength = 0x09;
   pVCInterfaceDesc->bDescriptorType = 0x04;
   pVCInterfaceDesc->bInterfaceNumber = 0x00;
   pVCInterfaceDesc->bAlternateSetting = 0x00;
   pVCInterfaceDesc->bNumEndpoints = 0x00;
   pVCInterfaceDesc->bInterfaceClass = 0x0E;
   pVCInterfaceDesc->bInterfaceSubClass = 0x01; 
   pVCInterfaceDesc->bInterfaceProtocol = 0x20; //uac1.0=0x00 uac2.0=0x20
   pVCInterfaceDesc->iInterface = 0x02;
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 篇笔记 写笔记

UAC 标准音频控制接口描述符
音频控制接口描述符以下的描述符信息包含了音频控制的功能特征信息,音频的各控制功能均是通过音频控制接口描述符之下的各实例,终端进行控制的。音频控制接口描述符:Standard AC Interface Descriptor。音频控制接口描述符的定义如下:typedef struct _USB_INTE......
关注公众号
取消
感谢您的支持,我会继续努力的!
扫码支持
扫码打赏,你说多少就多少

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

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