24 #ifndef __USBAUDIO_H__ 25 #define __USBAUDIO_H__ 33 #define USB_AI_UNDEFINED 0 34 #define USB_AI_HEADER 1 35 #define USB_AI_INPUT_TERMINAL 2 36 #define USB_AI_OUTPUT_TERMINAL 3 37 #define USB_AI_MIXER_UNIT 4 38 #define USB_AI_SELECTOR_UNIT 5 39 #define USB_AI_FEATURE_UNIT 6 40 #define USB_AI_PROCESSING_UNIT 7 41 #define USB_AI_EXTENSION_UNIT 8 48 #define USB_AS_UNDEFINED 0 49 #define USB_AS_GENERAL 1 50 #define USB_AS_FORMAT_TYPE 2 51 #define USB_AS_FORMAT_SPECIFIC 3 60 #define USB_TTYPE_UNDEFINED 0x0100 61 #define USB_TTYPE_STREAMING 0x0101 62 #define USB_TTYPE_VENDOR 0x01ff 64 #define USB_TTYPE_OUT_UNDEF 0x0300 65 #define USB_TTYPE_OUT_SPEAKER 0x0301 66 #define USB_TTYPE_OUT_HEADPHONE 0x0302 67 #define USB_TTYPE_OUT_DESK_SPKR 0x0304 68 #define USB_TTYPE_OUT_ROOM_SPKR 0x0305 69 #define USB_TTYPE_OUT_COMM_SPKR 0x0306 70 #define USB_TTYPE_OUT_LFE 0x0307 72 #define USB_TTYPE_EXT_UNDEF 0x0600 73 #define USB_TTYPE_EXT_ANALOG 0x0601 74 #define USB_TTYPE_EXT_DIGITAL 0x0602 75 #define USB_TTYPE_EXT_LINE 0x0603 76 #define USB_TTYPE_EXT_LEGACY 0x0604 77 #define USB_TTYPE_EXT_SPDIF 0x0605 78 #define USB_TTYPE_EXT_1394_DA 0x0606 79 #define USB_TTYPE_EXT_1394_DV 0x0607 86 #define USB_ASC_UNDEFINED 0x00 87 #define USB_ASC_AUDIO_CONTROL 0x01 88 #define USB_ASC_AUDIO_STREAMING 0x02 89 #define USB_ASC_MIDI_STREAMING 0x03 97 #define USB_ACSDT_UNDEFINED 0x20 98 #define USB_ACSDT_DEVICE 0x21 99 #define USB_ACSDT_CONFIGURATION 0x22 100 #define USB_ACSDT_STRING 0x23 101 #define USB_ACSDT_INTERFACE 0x24 102 #define USB_ACSDT_ENDPOINT 0x25 110 #define USB_ACDSTYPE_UNDEFINED 0x00 111 #define USB_ACDSTYPE_HEADER 0x01 112 #define USB_ACDSTYPE_IN_TERMINAL 0x02 113 #define USB_ACDSTYPE_OUT_TERMINAL 0x03 114 #define USB_ACDSTYPE_MIXER_UNIT 0x04 115 #define USB_ACDSTYPE_SELECTOR_UNIT 0x05 116 #define USB_ACDSTYPE_FEATURE_UNIT 0x06 117 #define USB_ACDSTYPE_PROCESSING_UNIT 0x07 118 #define USB_ACDSTYPE_EXTENSION_UNIT 0x08 126 #define USB_ASDSTYPE_UNDEFINED 0x00 127 #define USB_ASDSTYPE_GENERAL 0x01 128 #define USB_ASDSTYPE_FORMAT_TYPE 0x02 129 #define USB_ASDSTYPE_FORMAT_SPECIFIC 0x03 136 #define USB_ADF_UNDEFINED 0x0000 137 #define USB_ADF_PCM 0x0001 138 #define USB_ADF_PCM8 0x0002 139 #define USB_ADF_IEEE_FLOAT 0x0003 140 #define USB_ADF_ALAW 0x0004 141 #define USB_ADF_MULAW 0x0005 148 #define USB_AF_TYPE_UNDEFINED 0x00 149 #define USB_AF_TYPE_TYPE_I 0x01 150 #define USB_AF_TYPE_TYPE_II 0x02 151 #define USB_AF_TYPE_TYPE_III 0x03 158 #define USB_ACONTROL_MUTE 0x0001 // Mute 159 #define USB_ACONTROL_VOLUME 0x0002 // Volume 160 #define USB_ACONTROL_BASS 0x0004 // Bass 161 #define USB_ACONTROL_MID 0x0008 // Mid 162 #define USB_ACONTROL_TREBLE 0x0010 // Treble 163 #define USB_ACONTROL_EQ 0x0020 // Graphic Equalizer 164 #define USB_ACONTROL_AGC 0x0040 // Automatic Gain 165 #define USB_ACONTROL_DELAY 0x0080 // Delay 166 #define USB_ACONTROL_BASS_BOOST 0x0100 // Bass Boost 167 #define USB_ACONTROL_LOUD 0x0200 // Loudness 174 #define USB_ATTYPE_UNDEFINED 0x0300 // Output Terminal, undefined Type. 175 #define USB_ATTYPE_SPEAKER 0x0301 // A generic speaker. 176 #define USB_ATTYPE_HEADPHONES 0x0302 // A head-mounted audio output device. 177 #define USB_ATTYPE_HMD 0x0303 // The audio part of a VR head mounted 179 #define USB_ATTYPE_SPEAKER_DT 0x0304 // Desktop or Monitor speaker(s). 180 #define USB_ATTYPE_SPEAKER_RM 0x0305 // Larger room speaker(s). 181 #define USB_ATTYPE_SPEAKER_COM 0x0306 // Communications Speaker (phone). 182 #define USB_ATTYPE_SPEAKER_LFE 0x0307 // Speaker designed for low 192 #define USB_CHANNEL_L 0x0001 // Left Front (L) 193 #define USB_CHANNEL_R 0x0002 // Right Front (R) 194 #define USB_CHANNEL_C 0x0004 // Center Front (C) 195 #define USB_CHANNEL_LFE 0x0008 // Low Frequency Enhancement (LFE) 196 #define USB_CHANNEL_LS 0x0010 // Left Surround (LS) 197 #define USB_CHANNEL_RS 0x0020 // Right Surround (RS) 198 #define USB_CHANNEL_LC 0x0040 // Left of Center (LC) 199 #define USB_CHANNEL_RC 0x0080 // Right of Center (RC) 200 #define USB_CHANNEL_S 0x0100 // Surround (S) 201 #define USB_CHANNEL_SL 0x0200 // Side Left (SL) 202 #define USB_CHANNEL_SR 0x0400 // Side Right (SR) 203 #define USB_CHANNEL_T 0x0800 // Top (T) 210 #define USB_EP_ATTR_ACG_SAMPLING 0x01 // Sampling Frequency 211 #define USB_EP_ATTR_ACG_PITCH 0x02 // Pitch 212 #define USB_EP_ATTR_ACG_MAXPACKET 0x80 // MaxPacketsOnly 220 #define USB_EP_LOCKDELAY_UNDEF 0x00 // Undefined 221 #define USB_EP_LOCKDELAY_MS 0x01 // Milliseconds 222 #define USB_EP_LOCKDELAY_PCM 0x02 // Decoded PCM samples 229 #define USB_AC_SET_CUR 0x01 230 #define USB_AC_SET_MIN 0x02 231 #define USB_AC_SET_MAX 0x03 232 #define USB_AC_SET_RES 0x04 233 #define USB_AC_SET_MEM 0x05 234 #define USB_AC_GET_CUR 0x81 235 #define USB_AC_GET_MIN 0x82 236 #define USB_AC_GET_MAX 0x83 237 #define USB_AC_GET_RES 0x84 238 #define USB_AC_GET_MEM 0x85 239 #define USB_AC_GET_STAT 0xff 241 #define USB_CS_CONTROL_M 0xff00 242 #define USB_CS_CHANNEL_M 0x00ff 249 #define EP_CONTROL_UNDEFINED 0x0000 250 #define SAMPLING_FREQ_CONTROL 0x0100 251 #define PITCH_CONTROL 0x0200 258 #define FU_CONTROL_UNDEFINED 0x0000 259 #define MUTE_CONTROL 0x0100 260 #define VOLUME_CONTROL 0x0200 261 #define BASS_CONTROL 0x0300 262 #define MID_CONTROL 0x0400 263 #define TREBLE_CONTROL 0x0500 264 #define EQUALIZER_CONTROL 0x0600 265 #define AUTOMATIC_GAIN_CONTROL 0x0700 266 #define DELAY_CONTROL 0x0800 267 #define BASS_BOOST_CONTROL 0x0900 268 #define LOUDNESS_CONTROL 0x0A00 339 #define USB_AC_CC_LEFT 0x0001 340 #define USB_AC_CC_RIGHT 0x0002 341 #define USB_AC_CC_CENTER 0x0004 342 #define USB_AC_CC_LFE 0x0008 343 #define USB_AC_CC_LEFTSURROUND 0x0010 344 #define USB_AC_CC_RIGHTSURROUND 0x0020 345 #define USB_AC_CC_LEFT_CENTER 0x0040 346 #define USB_AC_CC_RIGHT_CENTER 0x0080 347 #define USB_AC_CC_SURROUND 0x0100 348 #define USB_AC_CC_SIDE_LEFT 0x0200 349 #define USB_AC_CC_SIDE_RIGHT 0x0400 350 #define USB_AC_CC_TOP 0x0800 369 uint8_t bDescriptorType;
374 uint8_t bDescriptorSubtype;
419 uint8_t bDescriptorType;
424 uint8_t bDescriptorSubtype;
473 uint8_t bDescriptorType;
478 uint8_t bDescriptorSubtype;
490 uint16_t wTerminalType;
496 uint8_t bAssocTerminal;
539 uint8_t bDescriptorType;
544 uint8_t bDescriptorSubtype;
582 uint8_t bDescriptorType;
587 uint8_t bDescriptorSubtype;
625 uint8_t bDescriptorType;
630 uint8_t bDescriptorSubtype;
668 uint8_t bDescriptorType;
673 uint8_t bDescriptorSubtype;
uint8_t bAssocTerminal
Definition: usbaudio.h:442
uint8_t bDelay
Delay introduced by the data path. Expressed in number of frames.
Definition: usbaudio.h:641
uint8_t bBitResolution
Number of bits per sample.
Definition: usbaudio.h:693
uint8_t baInterfaceNr
Definition: usbaudio.h:329
uint8_t bDescriptorSubtype
This will be USB_DSUBTYPE_HEADER for the header.
Definition: usbaudio.h:304
uint8_t bSubFrameSize
Number of bytes per audio sub-frame or channel.
Definition: usbaudio.h:688
uint16_t bmaControls
Definition: usbaudio.h:398
uint8_t bTerminalLink
Definition: usbaudio.h:636
uint8_t bDescriptorType
Definition: usbaudio.h:299
uint16_t bcdADC
Definition: usbaudio.h:310
uint8_t bTerminalID
Definition: usbaudio.h:430
uint8_t bSamFreqType
Number of sample rates that are supported.
Definition: usbaudio.h:698
uint8_t bLength
The length of this descriptor in bytes.
Definition: usbaudio.h:293
uint16_t wFormatTag
Definition: usbaudio.h:647
uint8_t iChannelNames
Definition: usbaudio.h:513
uint16_t wChannelConfig
Describes the spatial location of the logical channels.
Definition: usbaudio.h:507
uint16_t wTerminalType
Definition: usbaudio.h:436
uint8_t bUnitID
Definition: usbaudio.h:380
uint8_t iTerminal
Index of a string descriptor, describing the Output Terminal.
Definition: usbaudio.h:452
uint8_t tSamFreq
Number of bits per sample.
Definition: usbaudio.h:703
uint8_t bSourceID
ID of the Unit or Terminal to which this Feature Unit is connected.
Definition: usbaudio.h:385
uint8_t baSourceID
Definition: usbaudio.h:561
uint8_t bControlSize
ID of the Output Terminal to which this Input Terminal is associated.
Definition: usbaudio.h:390
uint8_t bInCollection
Definition: usbaudio.h:323
uint8_t bNrInPins
Number of Input Pins of this Unit.
Definition: usbaudio.h:555
uint16_t wTotai32Length
Definition: usbaudio.h:317
uint8_t bNrChannels
Number of channels on this streaming interface.
Definition: usbaudio.h:502
uint8_t bFormatType
This will be USB_AS_FORMAT_TYPE_I.
Definition: usbaudio.h:678
USB_CDC_GET/SET_LINE_CODING request-specific data.
Definition: usbaudio.h:288