Open FFBoard
Open source force feedback firmware
Loading...
Searching...
No Matches
audio.h
Go to the documentation of this file.
1/*
2 * The MIT License (MIT)
3 *
4 * Copyright (c) 2019 Ha Thach (tinyusb.org)
5 * Copyright (c) 2020 Reinhard Panhuber
6 *
7 * Permission is hereby granted, free of charge, to any person obtaining a copy
8 * of this software and associated documentation files (the "Software"), to deal
9 * in the Software without restriction, including without limitation the rights
10 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
11 * copies of the Software, and to permit persons to whom the Software is
12 * furnished to do so, subject to the following conditions:
13 *
14 * The above copyright notice and this permission notice shall be included in
15 * all copies or substantial portions of the Software.
16 *
17 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
18 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
20 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
21 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
22 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
23 * THE SOFTWARE.
24 *
25 * This file is part of the TinyUSB stack.
26 */
27
32
33#ifndef _TUSB_AUDIO_H__
34#define _TUSB_AUDIO_H__
35
36#include "common/tusb_common.h"
37
38#ifdef __cplusplus
39extern "C" {
40#endif
41
43
49
56
65
72
91
110
120
130
139
146
155
157
165
172
180
193
204
212
234
236
249
266
281
296
298
310
322
333
344
353
374
376
391
404
413
422
431
433
441
453
466
468
470
483
484// A.2.1 - Audio Class-Audio Data Format Type I UAC2
485typedef enum
486{
487 AUDIO_DATA_FORMAT_TYPE_I_PCM = (uint32_t) (1 << 0),
488 AUDIO_DATA_FORMAT_TYPE_I_PCM8 = (uint32_t) (1 << 1),
490 AUDIO_DATA_FORMAT_TYPE_I_ALAW = (uint32_t) (1 << 3),
491 AUDIO_DATA_FORMAT_TYPE_I_MULAW = (uint32_t) (1 << 4),
494
496
498typedef enum
499{
504
510
517
524
532
540
550
557
563
570
581
591
611
613typedef enum
614{
645
652
654typedef struct TU_ATTR_PACKED
655{
656 uint8_t bLength ;
660 uint8_t bCategory ;
662 uint8_t bmControls ;
664
666typedef struct TU_ATTR_PACKED
667{
668 uint8_t bLength ;
669 uint8_t bDescriptorType ;
670 uint8_t bDescriptorSubType ;
671 uint8_t bClockID ;
672 uint8_t bmAttributes ;
673 uint8_t bmControls ;
674 uint8_t bAssocTerminal ;
675 uint8_t iClockSource ;
677
679typedef struct TU_ATTR_PACKED
680{
681 uint8_t bLength ;
682 uint8_t bDescriptorType ;
683 uint8_t bDescriptorSubType ;
684 uint8_t bClockID ;
685 uint8_t bNrInPins ;
686 uint8_t baCSourceID ;
687 uint8_t bmControls ;
688 uint8_t iClockSource ;
690
692#define audio_desc_clock_selector_n_t(source_num) \
693 struct TU_ATTR_PACKED { \
694 uint8_t bLength ; \
695 uint8_t bDescriptorType ; \
696 uint8_t bDescriptorSubType ; \
697 uint8_t bClockID ; \
698 uint8_t bNrInPins ; \
699 struct TU_ATTR_PACKED { \
700 uint8_t baSourceID ; \
701 } sourceID[source_num] ; \
702 uint8_t bmControls ; \
703 uint8_t iClockSource ; \
704}
705
707typedef struct TU_ATTR_PACKED
708{
709 uint8_t bLength ;
710 uint8_t bDescriptorType ;
711 uint8_t bDescriptorSubType ;
712 uint8_t bClockID ;
713 uint8_t bCSourceID ;
714 uint8_t bmControls ;
715 uint8_t iClockSource ;
717
719typedef struct TU_ATTR_PACKED
720{
721 uint8_t bLength ;
722 uint8_t bDescriptorType ;
723 uint8_t bDescriptorSubType ;
724 uint8_t bTerminalID ;
726 uint8_t bAssocTerminal ;
727 uint8_t bCSourceID ;
728 uint8_t bNrChannels ;
729 uint32_t bmChannelConfig ;
730 uint8_t iChannelNames ;
732 uint8_t iTerminal ;
734
736typedef struct TU_ATTR_PACKED
737{
738 uint8_t bLength ;
739 uint8_t bDescriptorType ;
740 uint8_t bDescriptorSubType ;
741 uint8_t bTerminalID ;
743 uint8_t bAssocTerminal ;
744 uint8_t bSourceID ;
745 uint8_t bCSourceID ;
747 uint8_t iTerminal ;
749
751typedef struct TU_ATTR_PACKED
752{
753 uint8_t bLength ;
754 uint8_t bDescriptorType ;
755 uint8_t bDescriptorSubType ;
756 uint8_t bUnitID ;
757 uint8_t bSourceID ;
759 uint32_t bmaControls ;
760 } controls[2] ;
761 uint8_t iTerminal ;
763
765#define audio_desc_feature_unit_n_t(ch_num)\
766 struct TU_ATTR_PACKED { \
767 uint8_t bLength ; /* 6+(ch_num+1)*4 */\
768 uint8_t bDescriptorType ; \
769 uint8_t bDescriptorSubType ; \
770 uint8_t bUnitID ; \
771 uint8_t bSourceID ; \
772 struct TU_ATTR_PACKED { \
773 uint32_t bmaControls ; \
774 } controls[ch_num+1] ; \
775 uint8_t iTerminal ; \
776}
777
779typedef struct TU_ATTR_PACKED
780{
781 uint8_t bLength ;
782 uint8_t bDescriptorType ;
783 uint8_t bDescriptorSubType ;
784 uint8_t bTerminalLink ;
785 uint8_t bmControls ;
786 uint8_t bFormatType ;
787 uint32_t bmFormats ;
788 uint8_t bNrChannels ;
789 uint32_t bmChannelConfig ;
790 uint8_t iChannelNames ;
792
794typedef struct TU_ATTR_PACKED
795{
796 uint8_t bLength ;
797 uint8_t bDescriptorType ;
798 uint8_t bDescriptorSubType ;
799 uint8_t bFormatType ;
800 uint8_t bSubslotSize ;
801 uint8_t bBitResolution ;
803
805typedef struct TU_ATTR_PACKED
806{
807 uint8_t bLength ;
808 uint8_t bDescriptorType ;
809 uint8_t bDescriptorSubType ;
810 uint8_t bmAttributes ;
811 uint8_t bmControls ;
815
816// 5.2.2 Control Request Layout
817typedef struct TU_ATTR_PACKED
818{
819 union
820 {
821 struct TU_ATTR_PACKED
822 {
823 uint8_t recipient : 5;
824 uint8_t type : 2;
825 uint8_t direction : 1;
827
829 };
830
831 uint8_t bRequest;
834 union
835 {
836 uint8_t bInterface;
837 uint8_t bEndpoint;
838 };
839 uint8_t bEntityID;
842
844
845// 5.2.3.1 1-byte Control CUR Parameter Block
846typedef struct TU_ATTR_PACKED
847{
848 int8_t bCur ;
850
851// 5.2.3.2 2-byte Control CUR Parameter Block
852typedef struct TU_ATTR_PACKED
853{
854 int16_t bCur ;
856
857// 5.2.3.3 4-byte Control CUR Parameter Block
858typedef struct TU_ATTR_PACKED
859{
860 int32_t bCur ;
862
863// Use the following ONLY for RECEIVED data - compiler does not know how many subranges are defined! Use the one below for predefined lengths - or if you know what you are doing do what you like
864// 5.2.3.1 1-byte Control RANGE Parameter Block
865typedef struct TU_ATTR_PACKED {
867 struct TU_ATTR_PACKED {
868 int8_t bMin ; /*The setting for the MIN attribute of the nth subrange of the addressed Control*/
869 int8_t bMax ; /*The setting for the MAX attribute of the nth subrange of the addressed Control*/
870 uint8_t bRes ; /*The setting for the RES attribute of the nth subrange of the addressed Control*/
873
874// 5.2.3.2 2-byte Control RANGE Parameter Block
875typedef struct TU_ATTR_PACKED {
877 struct TU_ATTR_PACKED {
878 int16_t bMin ; /*The setting for the MIN attribute of the nth subrange of the addressed Control*/
879 int16_t bMax ; /*The setting for the MAX attribute of the nth subrange of the addressed Control*/
880 uint16_t bRes ; /*The setting for the RES attribute of the nth subrange of the addressed Control*/
881 } subrange[] ;
883
884// 5.2.3.3 4-byte Control RANGE Parameter Block
885typedef struct TU_ATTR_PACKED {
887 struct TU_ATTR_PACKED {
888 int32_t bMin ; /*The setting for the MIN attribute of the nth subrange of the addressed Control*/
889 int32_t bMax ; /*The setting for the MAX attribute of the nth subrange of the addressed Control*/
890 uint32_t bRes ; /*The setting for the RES attribute of the nth subrange of the addressed Control*/
891 } subrange[] ;
893
894// 5.2.3.1 1-byte Control RANGE Parameter Block
895#define audio_control_range_1_n_t(numSubRanges) \
896 struct TU_ATTR_PACKED { \
897 uint16_t wNumSubRanges; \
898 struct TU_ATTR_PACKED { \
899 int8_t bMin ; /*The setting for the MIN attribute of the nth subrange of the addressed Control*/\
900 int8_t bMax ; /*The setting for the MAX attribute of the nth subrange of the addressed Control*/\
901 uint8_t bRes ; /*The setting for the RES attribute of the nth subrange of the addressed Control*/\
902 } subrange[numSubRanges] ; \
903}
904
906#define audio_control_range_2_n_t(numSubRanges) \
907 struct TU_ATTR_PACKED { \
908 uint16_t wNumSubRanges; \
909 struct TU_ATTR_PACKED { \
910 int16_t bMin ; /*The setting for the MIN attribute of the nth subrange of the addressed Control*/\
911 int16_t bMax ; /*The setting for the MAX attribute of the nth subrange of the addressed Control*/\
912 uint16_t bRes ; /*The setting for the RES attribute of the nth subrange of the addressed Control*/\
913 } subrange[numSubRanges]; \
914}
915
916// 5.2.3.3 4-byte Control RANGE Parameter Block
917#define audio_control_range_4_n_t(numSubRanges) \
918 struct TU_ATTR_PACKED { \
919 uint16_t wNumSubRanges; \
920 struct TU_ATTR_PACKED { \
921 int32_t bMin ; /*The setting for the MIN attribute of the nth subrange of the addressed Control*/\
922 int32_t bMax ; /*The setting for the MAX attribute of the nth subrange of the addressed Control*/\
923 uint32_t bRes ; /*The setting for the RES attribute of the nth subrange of the addressed Control*/\
924 } subrange[numSubRanges]; \
925}
926
927// 6.1 Interrupt Data Message Format
928typedef struct TU_ATTR_PACKED
929{
930 uint8_t bInfo;
931 uint8_t bAttribute;
932 union
933 {
935 struct
936 {
938 uint8_t wValue_cs;
939 };
940 };
941 union
942 {
944 struct
945 {
948 };
949 };
951
953
954#ifdef __cplusplus
955}
956#endif
957
958#endif
959
struct TU_ATTR_PACKED audio_desc_clock_multiplier_t
AUDIO Clock Multiplier Descriptor (4.7.2.3)
audio_clock_source_attribute_t
Audio Class-Clock Source Attributes UAC2.
Definition audio.h:543
audio_cs_as_interface_subtype_t
A.10 - Audio Class-Specific AS Interface Descriptor Subtypes UAC2.
Definition audio.h:113
struct TU_ATTR_PACKED audio_desc_type_I_format_t
AUDIO Type I Format Type Descriptor(2.3.1.6 - Audio Formats)
audio_cs_ac_interface_subtype_t
A.9 - Audio Class-Specific AC Interface Descriptor Subtypes UAC2.
Definition audio.h:94
struct TU_ATTR_PACKED audio_desc_output_terminal_t
AUDIO Output Terminal Descriptor(4.7.2.5)
struct TU_ATTR_PACKED audio_control_range_4_t
audio_DTS_decoder_control_selector_t
A.17.13.4 DTS Decoder Control Selectors.
Definition audio.h:416
audio_AC3_decoder_control_selector_t
A.17.13.2 AC-3 Decoder Control Selectors.
Definition audio.h:394
audio_encoder_control_selector_t
A.17.12 Encoder Control Selectors.
Definition audio.h:356
struct TU_ATTR_PACKED audio_desc_channel_cluster_t
AUDIO Channel Cluster Descriptor (4.1)
audio_modulation_delay_control_selector_t
A.17.8.3 Modulation Delay Effect Unit Control Selectors.
Definition audio.h:269
audio_effect_unit_effect_type_t
A.11 - Effect Unit Effect Types.
Definition audio.h:123
audio_EP_control_selector_t
A.17.14 Endpoint Control Selectors.
Definition audio.h:425
audio_data_format_type_I_t
Definition audio.h:486
struct TU_ATTR_PACKED audio_desc_input_terminal_t
AUDIO Input Terminal Descriptor(4.7.2.4)
audio_terminal_input_type_t
2.2 - Audio Class-Input Terminal Types UAC2
Definition audio.h:444
audio_sel_control_selector_t
A.17.6 - Selector Control Selectors.
Definition audio.h:207
struct TU_ATTR_PACKED audio_control_cur_1_t
audio_clock_source_control_pos_t
Audio Class-Clock Source Controls UAC2.
Definition audio.h:553
struct TU_ATTR_PACKED audio_control_range_2_t
struct TU_ATTR_PACKED audio_interrupt_data_t
audio_clock_selector_control_pos_t
Audio Class-Clock Selector Controls UAC2.
Definition audio.h:560
audio_parametric_equalizer_control_selector_t
A.17.8 Effect Unit Control Selectors.
Definition audio.h:239
struct TU_ATTR_PACKED audio_desc_feature_unit_t
AUDIO Feature Unit Descriptor(4.7.2.8) for ONE channel.
audio_clock_multiplier_control_pos_t
Audio Class-Clock Multiplier Controls UAC2.
Definition audio.h:566
struct TU_ATTR_PACKED audio_desc_clock_source_t
AUDIO Clock Source Descriptor (4.7.2.1)
audio_extension_unit_control_selector_t
A.17.10 Extension Unit Control Selectors.
Definition audio.h:336
audio_clock_src_control_selector_t
A.17 - Control Selector Codes.
Definition audio.h:160
struct TU_ATTR_PACKED audio_control_range_1_t
audio_cs_as_iso_data_ep_lock_delay_unit_t
Audio Class-Specific AS Isochronous Data EP Lock Delay Units UAC2.
Definition audio.h:535
audio_cs_as_iso_data_ep_attribute_t
Audio Class-Specific AS Isochronous Data EP Attributes UAC2.
Definition audio.h:520
struct TU_ATTR_PACKED audio_control_cur_4_t
audio_clock_sel_control_selector_t
A.17.2 - Clock Selector Control Selectors.
Definition audio.h:168
audio_function_subclass_type_t
Audio Device Class Codes.
Definition audio.h:46
audio_stereo_extender_control_selector_t
A.17.9.3 Stereo Extender Processing Unit Control Selectors.
Definition audio.h:325
audio_audiostreaming_interface_control_selector_t
A.17.11 AudioStreaming Interface Control Selectors.
Definition audio.h:347
audio_terminal_control_selector_t
A.17.4 - Terminal Control Selectors.
Definition audio.h:183
struct TU_ATTR_PACKED audio_desc_cs_as_iso_data_ep_t
AUDIO Class-Specific AS Isochronous Audio Data Endpoint Descriptor(4.10.1.2)
audio_subclass_type_t
A.5 - Audio Interface Subclass Codes.
Definition audio.h:59
audio_clock_mul_control_selector_t
A.17.3 - Clock Multiplier Control Selectors.
Definition audio.h:175
audio_cs_ac_interface_control_pos_t
Audio Class-Specific AC Interface Descriptor Controls UAC2.
Definition audio.h:507
audio_dynamic_range_compression_control_selector_t
A.17.8.4 Dynamic Range Compressor Effect Unit Control Selectors.
Definition audio.h:284
audio_terminal_input_control_pos_t
Audio Class-Input Terminal Controls UAC2.
Definition audio.h:573
audio_feature_unit_control_pos_t
Audio Class-Feature Unit Controls UAC2.
Definition audio.h:594
audio_WMA_decoder_control_selector_t
A.17.13.3 WMA Decoder Control Selectors.
Definition audio.h:407
audio_cs_as_iso_data_ep_control_pos_t
Audio Class-Specific AS Isochronous Data EP Controls UAC2.
Definition audio.h:527
audio_cs_req_t
A.14 - Audio Class-Specific Request Codes.
Definition audio.h:149
audio_terminal_type_t
Terminal Types.
Definition audio.h:436
struct TU_ATTR_PACKED audio_desc_clock_selector_t
AUDIO Clock Selector Descriptor (4.7.2.2) for ONE pin.
audio_processing_unit_process_type_t
A.12 - Processing Unit Process Types.
Definition audio.h:133
struct TU_ATTR_PACKED audio_desc_cs_as_interface_t
AUDIO Class-Specific AS Interface Descriptor(4.9.2)
audio_up_down_mix_control_selector_t
A.17.9 Processing Unit Control Selectors.
Definition audio.h:301
audio_control_t
All remaining definitions are taken from the descriptor descriptions in the UAC2 main specification.
Definition audio.h:499
struct TU_ATTR_PACKED audio_desc_cs_ac_interface_t
AUDIO Class-Specific AC Interface Header Descriptor (4.7.2)
audio_cs_as_interface_control_pos_t
Audio Class-Specific AS Interface Descriptor Controls UAC2.
Definition audio.h:513
audio_cs_ep_subtype_t
A.13 - Audio Class-Specific EP Descriptor Subtypes UAC2.
Definition audio.h:142
audio_MPEG_decoder_control_selector_t
A.17.13 Decoder Control Selectors.
Definition audio.h:379
struct TU_ATTR_PACKED audio_control_cur_2_t
audio_interface_protocol_code_t
A.6 - Audio Interface Protocol Codes.
Definition audio.h:68
audio_function_code_t
A.7 - Audio Function Category Codes.
Definition audio.h:75
audio_feature_unit_control_selector_t
A.17.7 - Feature Unit Control Selectors.
Definition audio.h:215
audio_terminal_output_control_pos_t
Audio Class-Output Terminal Controls UAC2.
Definition audio.h:584
audio_format_type_t
Rest is yet to be implemented.
Definition audio.h:473
audio_channel_config_t
Audio Class-Audio Channel Configuration UAC2.
Definition audio.h:614
audio_function_protocol_code_t
A.3 - Audio Function Protocol Codes.
Definition audio.h:52
audio_mixer_control_selector_t
A.17.5 - Mixer Control Selectors.
Definition audio.h:196
struct TU_ATTR_PACKED audio_control_request_t
audio_dolby_prologic_control_selector_t
A.17.9.2 Dolby Prologic â„¢ Processing Unit Control Selectors.
Definition audio.h:313
audio_terminal_output_type_t
2.3 - Audio Class-Output Terminal Types UAC2
Definition audio.h:456
audio_reverberation_effect_control_selector_t
A.17.8.2 Reverberation Effect Unit Control Selectors.
Definition audio.h:252
@ AUDIO_CLOCK_SOURCE_ATT_INT_FIX_CLK
Definition audio.h:545
@ AUDIO_CLOCK_SOURCE_ATT_EXT_CLK
Definition audio.h:544
@ AUDIO_CLOCK_SOURCE_ATT_INT_PRO_CLK
Definition audio.h:547
@ AUDIO_CLOCK_SOURCE_ATT_CLK_SYC_SOF
Definition audio.h:548
@ AUDIO_CLOCK_SOURCE_ATT_INT_VAR_CLK
Definition audio.h:546
@ AUDIO_CS_AS_INTERFACE_FORMAT_TYPE
Definition audio.h:116
@ AUDIO_CS_AS_INTERFACE_ENCODER
Definition audio.h:117
@ AUDIO_CS_AS_INTERFACE_AS_GENERAL
Definition audio.h:115
@ AUDIO_CS_AS_INTERFACE_AS_DESCRIPTOR_UNDEF
Definition audio.h:114
@ AUDIO_CS_AS_INTERFACE_DECODER
Definition audio.h:118
@ AUDIO_CS_AC_INTERFACE_EXTENSION_UNIT
Definition audio.h:104
@ AUDIO_CS_AC_INTERFACE_HEADER
Definition audio.h:96
@ AUDIO_CS_AC_INTERFACE_INPUT_TERMINAL
Definition audio.h:97
@ AUDIO_CS_AC_INTERFACE_CLOCK_SOURCE
Definition audio.h:105
@ AUDIO_CS_AC_INTERFACE_SELECTOR_UNIT
Definition audio.h:100
@ AUDIO_CS_AC_INTERFACE_FEATURE_UNIT
Definition audio.h:101
@ AUDIO_CS_AC_INTERFACE_OUTPUT_TERMINAL
Definition audio.h:98
@ AUDIO_CS_AC_INTERFACE_AC_DESCRIPTOR_UNDEF
Definition audio.h:95
@ AUDIO_CS_AC_INTERFACE_SAMPLE_RATE_CONVERTER
Definition audio.h:108
@ AUDIO_CS_AC_INTERFACE_MIXER_UNIT
Definition audio.h:99
@ AUDIO_CS_AC_INTERFACE_EFFECT_UNIT
Definition audio.h:102
@ AUDIO_CS_AC_INTERFACE_CLOCK_MULTIPLIER
Definition audio.h:107
@ AUDIO_CS_AC_INTERFACE_CLOCK_SELECTOR
Definition audio.h:106
@ AUDIO_CS_AC_INTERFACE_PROCESSING_UNIT
Definition audio.h:103
@ AUDIO_DD_CTRL_DECODER_ERROR
Definition audio.h:420
@ AUDIO_DD_CTRL_OVERFLOW
Definition audio.h:419
@ AUDIO_DD_CTRL_UNDERFLOW
Definition audio.h:418
@ AUDIO_DD_CTRL_UNDEF
Definition audio.h:417
@ AUDIO_AD_CTRL_SCALING
Definition audio.h:398
@ AUDIO_AD_CTRL_HILO_SCALING
Definition audio.h:399
@ AUDIO_AD_CTRL_OVERFLOW
Definition audio.h:401
@ AUDIO_AD_CTRL_UNDEF
Definition audio.h:395
@ AUDIO_AD_CTRL_MODE
Definition audio.h:396
@ AUDIO_AD_CTRL_UNDERFLOW
Definition audio.h:400
@ AUDIO_AD_CTRL_DECODER_ERROR
Definition audio.h:402
@ AUDIO_AD_CTRL_DYN_RANGE
Definition audio.h:397
@ AUDIO_EN_CTRL_TYPE
Definition audio.h:361
@ AUDIO_EN_CTRL_ENCODER_ERROR
Definition audio.h:364
@ AUDIO_EN_CTRL_BIT_RATE
Definition audio.h:358
@ AUDIO_EN_CTRL_VBR
Definition audio.h:360
@ AUDIO_EN_CTRL_PARAM7
Definition audio.h:371
@ AUDIO_EN_CTRL_UNDERFLOW
Definition audio.h:362
@ AUDIO_EN_CTRL_PARAM2
Definition audio.h:366
@ AUDIO_EN_CTRL_PARAM1
Definition audio.h:365
@ AUDIO_EN_CTRL_PARAM3
Definition audio.h:367
@ AUDIO_EN_CTRL_QUALITY
Definition audio.h:359
@ AUDIO_EN_CTRL_OVERFLOW
Definition audio.h:363
@ AUDIO_EN_CTRL_PARAM4
Definition audio.h:368
@ AUDIO_EN_CTRL_UNDEF
Definition audio.h:357
@ AUDIO_EN_CTRL_PARAM5
Definition audio.h:369
@ AUDIO_EN_CTRL_PARAM6
Definition audio.h:370
@ AUDIO_EN_CTRL_PARAM8
Definition audio.h:372
@ AUDIO_MD_CTRL_ENABLE
Definition audio.h:271
@ AUDIO_MD_CTRL_UNDEF
Definition audio.h:270
@ AUDIO_MD_CTRL_RATE
Definition audio.h:273
@ AUDIO_MD_CTRL_OVERFLOW
Definition audio.h:278
@ AUDIO_MD_CTRL_FEEDBACK
Definition audio.h:276
@ AUDIO_MD_CTRL_LATENCY
Definition audio.h:279
@ AUDIO_MD_CTRL_DEPTH
Definition audio.h:274
@ AUDIO_MD_CTRL_TIME
Definition audio.h:275
@ AUDIO_MD_CTRL_BALANCE
Definition audio.h:272
@ AUDIO_MD_CTRL_UNDERFLOW
Definition audio.h:277
@ AUDIO_EFFECT_TYPE_PARAM_EQ_SECTION
Definition audio.h:125
@ AUDIO_EFFECT_TYPE_MOD_DELAY
Definition audio.h:127
@ AUDIO_EFFECT_TYPE_REVERBERATION
Definition audio.h:126
@ AUDIO_EFFECT_TYPE_DYN_RANGE_COMP
Definition audio.h:128
@ AUDIO_EFFECT_TYPE_UNDEF
Definition audio.h:124
@ AUDIO_EP_CTRL_DATA_OVERRUN
Definition audio.h:428
@ AUDIO_EP_CTRL_DATA_UNDERRUN
Definition audio.h:429
@ AUDIO_EP_CTRL_UNDEF
Definition audio.h:426
@ AUDIO_EP_CTRL_PITCH
Definition audio.h:427
@ AUDIO_DATA_FORMAT_TYPE_I_ALAW
Definition audio.h:490
@ AUDIO_DATA_FORMAT_TYPE_I_MULAW
Definition audio.h:491
@ AUDIO_DATA_FORMAT_TYPE_I_IEEE_FLOAT
Definition audio.h:489
@ AUDIO_DATA_FORMAT_TYPE_I_RAW_DATA
Definition audio.h:492
@ AUDIO_DATA_FORMAT_TYPE_I_PCM
Definition audio.h:487
@ AUDIO_DATA_FORMAT_TYPE_I_PCM8
Definition audio.h:488
@ AUDIO_TERM_TYPE_IN_OMNI_MIC
Definition audio.h:449
@ AUDIO_TERM_TYPE_IN_ARRAY_MIC
Definition audio.h:450
@ AUDIO_TERM_TYPE_IN_PROC_ARRAY_MIC
Definition audio.h:451
@ AUDIO_TERM_TYPE_IN_UNDEFINED
Definition audio.h:445
@ AUDIO_TERM_TYPE_IN_DESKTOP_MIC
Definition audio.h:447
@ AUDIO_TERM_TYPE_IN_GENERIC_MIC
Definition audio.h:446
@ AUDIO_TERM_TYPE_IN_PERSONAL_MIC
Definition audio.h:448
@ AUDIO_SU_CTRL_UNDEF
Definition audio.h:208
@ AUDIO_SU_CTRL_SELECTOR
Definition audio.h:209
@ AUDIO_SU_CTRL_LATENCY
Definition audio.h:210
@ AUDIO_CLOCK_SOURCE_CTRL_CLK_FRQ_POS
Definition audio.h:554
@ AUDIO_CLOCK_SOURCE_CTRL_CLK_VAL_POS
Definition audio.h:555
@ AUDIO_CLOCK_SELECTOR_CTRL_POS
Definition audio.h:561
@ AUDIO_PE_CTRL_GAIN
Definition audio.h:244
@ AUDIO_PE_CTRL_ENABLE
Definition audio.h:241
@ AUDIO_PE_CTRL_UNDEF
Definition audio.h:240
@ AUDIO_PE_CTRL_QFACTOR
Definition audio.h:243
@ AUDIO_PE_CTRL_UNDERFLOW
Definition audio.h:245
@ AUDIO_PE_CTRL_CENTERFREQ
Definition audio.h:242
@ AUDIO_PE_CTRL_LATENCY
Definition audio.h:247
@ AUDIO_PE_CTRL_OVERFLOW
Definition audio.h:246
@ AUDIO_CLOCK_MULTIPLIER_CTRL_NUMERATOR_POS
Definition audio.h:567
@ AUDIO_CLOCK_MULTIPLIER_CTRL_DENOMINATOR_POS
Definition audio.h:568
@ AUDIO_XU_CTRL_LATENCY
Definition audio.h:342
@ AUDIO_XU_CTRL_OVERFLOW
Definition audio.h:341
@ AUDIO_XU_CTRL_UNDEF
Definition audio.h:337
@ AUDIO_XU_CTRL_CLUSTER
Definition audio.h:339
@ AUDIO_XU_CTRL_UNDERFLOW
Definition audio.h:340
@ AUDIO_XU_CTRL_ENABLE
Definition audio.h:338
@ AUDIO_CS_CTRL_SAM_FREQ
Definition audio.h:162
@ AUDIO_CS_CTRL_UNDEF
Definition audio.h:161
@ AUDIO_CS_CTRL_CLK_VALID
Definition audio.h:163
@ AUDIO_CS_AS_ISO_DATA_EP_LOCK_DELAY_UNIT_UNDEFINED
Definition audio.h:536
@ AUDIO_CS_AS_ISO_DATA_EP_LOCK_DELAY_UNIT_MILLISEC
Definition audio.h:537
@ AUDIO_CS_AS_ISO_DATA_EP_LOCK_DELAY_UNIT_PCM_SAMPLES
Definition audio.h:538
@ AUDIO_CS_AS_ISO_DATA_EP_ATT_MAX_PACKETS_ONLY
Definition audio.h:521
@ AUDIO_CS_AS_ISO_DATA_EP_ATT_NON_MAX_PACKETS_OK
Definition audio.h:522
@ AUDIO_CX_CTRL_UNDEF
Definition audio.h:169
@ AUDIO_CX_CTRL_CONTROL
Definition audio.h:170
@ AUDIO_FUNCTION_SUBCLASS_UNDEFINED
Definition audio.h:47
@ AUDIO_ST_EXT_CTRL_UNDERFLOW
Definition audio.h:329
@ AUDIO_ST_EXT_CTRL_LATENCY
Definition audio.h:331
@ AUDIO_ST_EXT_CTRL_ENABLE
Definition audio.h:327
@ AUDIO_ST_EXT_CTRL_OVERFLOW
Definition audio.h:330
@ AUDIO_ST_EXT_CTRL_WIDTH
Definition audio.h:328
@ AUDIO_ST_EXT_CTRL_UNDEF
Definition audio.h:326
@ AUDIO_AS_CTRL_UNDEF
Definition audio.h:348
@ AUDIO_AS_CTRL_AUDIO_DATA_FORMAT
Definition audio.h:351
@ AUDIO_AS_CTRL_VAL_ALT_SETTINGS
Definition audio.h:350
@ AUDIO_AS_CTRL_ACT_ALT_SETTING
Definition audio.h:349
@ AUDIO_TE_CTRL_OVERFLOW
Definition audio.h:190
@ AUDIO_TE_CTRL_LATENCY
Definition audio.h:191
@ AUDIO_TE_CTRL_COPY_PROTECT
Definition audio.h:185
@ AUDIO_TE_CTRL_CLUSTER
Definition audio.h:188
@ AUDIO_TE_CTRL_OVERLOAD
Definition audio.h:187
@ AUDIO_TE_CTRL_UNDEF
Definition audio.h:184
@ AUDIO_TE_CTRL_UNDERFLOW
Definition audio.h:189
@ AUDIO_TE_CTRL_CONNECTOR
Definition audio.h:186
@ AUDIO_SUBCLASS_UNDEFINED
Definition audio.h:60
@ AUDIO_SUBCLASS_MIDI_STREAMING
MIDI Streaming.
Definition audio.h:63
@ AUDIO_SUBCLASS_CONTROL
Audio Control.
Definition audio.h:61
@ AUDIO_SUBCLASS_STREAMING
Audio Streaming.
Definition audio.h:62
@ AUDIO_CM_CTRL_UNDEF
Definition audio.h:176
@ AUDIO_CM_CTRL_DENOMINATOR_CONTROL
Definition audio.h:178
@ AUDIO_CM_CTRL_NUMERATOR_CONTROL
Definition audio.h:177
@ AUDIO_CS_AS_INTERFACE_CTRL_LATENCY_POS
Definition audio.h:508
@ AUDIO_DR_CTRL_MAXAMPL
Definition audio.h:288
@ AUDIO_DR_CTRL_UNDEF
Definition audio.h:285
@ AUDIO_DR_CTRL_LATENCY
Definition audio.h:294
@ AUDIO_DR_CTRL_UNDERFLOW
Definition audio.h:292
@ AUDIO_DR_CTRL_RELEASE_TIME
Definition audio.h:291
@ AUDIO_DR_CTRL_ATTACK_TIME
Definition audio.h:290
@ AUDIO_DR_CTRL_COMPRESSION_RATE
Definition audio.h:287
@ AUDIO_DR_CTRL_THRESHOLD
Definition audio.h:289
@ AUDIO_DR_CTRL_OVERFLOW
Definition audio.h:293
@ AUDIO_DR_CTRL_ENABLE
Definition audio.h:286
@ AUDIO_IN_TERM_CTRL_OVERLOAD_POS
Definition audio.h:576
@ AUDIO_IN_TERM_CTRL_UNDERFLOW_POS
Definition audio.h:578
@ AUDIO_IN_TERM_CTRL_CPY_PROT_POS
Definition audio.h:574
@ AUDIO_IN_TERM_CTRL_CLUSTER_POS
Definition audio.h:577
@ AUDIO_IN_TERM_CTRL_CONNECTOR_POS
Definition audio.h:575
@ AUDIO_IN_TERM_CTRL_OVERFLOW_POS
Definition audio.h:579
@ AUDIO_FEATURE_UNIT_CTRL_OVERFLOW_POS
Definition audio.h:609
@ AUDIO_FEATURE_UNIT_CTRL_LOUDNESS_POS
Definition audio.h:604
@ AUDIO_FEATURE_UNIT_CTRL_BASS_BOOST_POS
Definition audio.h:603
@ AUDIO_FEATURE_UNIT_CTRL_MUTE_POS
Definition audio.h:595
@ AUDIO_FEATURE_UNIT_CTRL_TREBLE_POS
Definition audio.h:599
@ AUDIO_FEATURE_UNIT_CTRL_BASS_POS
Definition audio.h:597
@ AUDIO_FEATURE_UNIT_CTRL_VOLUME_POS
Definition audio.h:596
@ AUDIO_FEATURE_UNIT_CTRL_PHASE_INV_POS
Definition audio.h:607
@ AUDIO_FEATURE_UNIT_CTRL_GRAPHIC_EQU_POS
Definition audio.h:600
@ AUDIO_FEATURE_UNIT_CTRL_UNDERFLOW_POS
Definition audio.h:608
@ AUDIO_FEATURE_UNIT_CTRL_INPUT_GAIN_PAD_POS
Definition audio.h:606
@ AUDIO_FEATURE_UNIT_CTRL_DELAY_POS
Definition audio.h:602
@ AUDIO_FEATURE_UNIT_CTRL_MID_POS
Definition audio.h:598
@ AUDIO_FEATURE_UNIT_CTRL_AGC_POS
Definition audio.h:601
@ AUDIO_FEATURE_UNIT_CTRL_INPUT_GAIN_POS
Definition audio.h:605
@ AUDIO_WD_CTRL_DECODER_ERROR
Definition audio.h:411
@ AUDIO_WD_CTRL_OVERFLOW
Definition audio.h:410
@ AUDIO_WD_CTRL_UNDEF
Definition audio.h:408
@ AUDIO_WD_CTRL_UNDERFLOW
Definition audio.h:409
@ AUDIO_CS_AS_ISO_DATA_EP_CTRL_DATA_UNDERRUN_POS
Definition audio.h:530
@ AUDIO_CS_AS_ISO_DATA_EP_CTRL_PITCH_POS
Definition audio.h:528
@ AUDIO_CS_AS_ISO_DATA_EP_CTRL_DATA_OVERRUN_POS
Definition audio.h:529
@ AUDIO_CS_REQ_RANGE
Definition audio.h:152
@ AUDIO_CS_REQ_CUR
Definition audio.h:151
@ AUDIO_CS_REQ_UNDEF
Definition audio.h:150
@ AUDIO_CS_REQ_MEM
Definition audio.h:153
@ AUDIO_TERM_TYPE_USB_VENDOR_SPEC
Definition audio.h:439
@ AUDIO_TERM_TYPE_USB_UNDEFINED
Definition audio.h:437
@ AUDIO_TERM_TYPE_USB_STREAMING
Definition audio.h:438
@ AUDIO_PROCESS_TYPE_UNDEF
Definition audio.h:134
@ AUDIO_PROCESS_TYPE_STEREO_EXTENDER
Definition audio.h:137
@ AUDIO_PROCESS_TYPE_UP_DOWN_MIX
Definition audio.h:135
@ AUDIO_PROCESS_TYPE_DOLBY_PROLOGIC
Definition audio.h:136
@ AUDIO_UD_CTRL_OVERFLOW
Definition audio.h:307
@ AUDIO_UD_CTRL_ENABLE
Definition audio.h:303
@ AUDIO_UD_CTRL_UNDERFLOW
Definition audio.h:306
@ AUDIO_UD_CTRL_MODE_SELECT
Definition audio.h:304
@ AUDIO_UD_CTRL_LATENCY
Definition audio.h:308
@ AUDIO_UD_CTRL_UNDEF
Definition audio.h:302
@ AUDIO_UD_CTRL_CLUSTER
Definition audio.h:305
@ AUDIO_CTRL_NONE
No Host access.
Definition audio.h:500
@ AUDIO_CTRL_R
Host read access only.
Definition audio.h:501
@ AUDIO_CTRL_RW
Host read write access.
Definition audio.h:502
@ AUDIO_CS_AS_INTERFACE_CTRL_ACTIVE_ALT_SET_POS
Definition audio.h:514
@ AUDIO_CS_AS_INTERFACE_CTRL_VALID_ALT_SET_POS
Definition audio.h:515
@ AUDIO_CS_EP_SUBTYPE_UNDEF
Definition audio.h:143
@ AUDIO_CS_EP_SUBTYPE_GENERAL
Definition audio.h:144
@ AUDIO_MPD_CTRL_HILO_SCALING
Definition audio.h:386
@ AUDIO_MPD_CTRL_SCALING
Definition audio.h:385
@ AUDIO_MPD_CTRL_MULTILINGUAL
Definition audio.h:383
@ AUDIO_MPD_CTRL_DUAL_CHANNEL
Definition audio.h:381
@ AUDIO_MPD_CTRL_DECODER_ERROR
Definition audio.h:389
@ AUDIO_MPD_CTRL_UNDERFLOW
Definition audio.h:387
@ AUDIO_MPD_CTRL_DYN_RANGE
Definition audio.h:384
@ AUDIO_MPD_CTRL_OVERFLOW
Definition audio.h:388
@ AUDIO_MPD_CTRL_SECOND_STEREO
Definition audio.h:382
@ AUDIO_MPD_CTRL_UNDEF
Definition audio.h:380
@ AUDIO_INT_PROTOCOL_CODE_UNDEF
Definition audio.h:69
@ AUDIO_INT_PROTOCOL_CODE_V2
Version 2.0.
Definition audio.h:70
@ AUDIO_FUNC_CONVERTER
Definition audio.h:82
@ AUDIO_FUNC_MICROPHONE
Definition audio.h:79
@ AUDIO_FUNC_HEADSET
Definition audio.h:80
@ AUDIO_FUNC_HOME_THEATER
Definition audio.h:78
@ AUDIO_FUNC_CONTROL_PANEL
Definition audio.h:88
@ AUDIO_FUNC_MUSICAL_INSTRUMENT
Definition audio.h:85
@ AUDIO_FUNC_SOUND_RECODER
Definition audio.h:83
@ AUDIO_FUNC_TELEPHONE
Definition audio.h:81
@ AUDIO_FUNC_PRO_AUDIO
Definition audio.h:86
@ AUDIO_FUNC_OTHER
Definition audio.h:89
@ AUDIO_FUNC_AUDIO_VIDEO
Definition audio.h:87
@ AUDIO_FUNC_IO_BOX
Definition audio.h:84
@ AUDIO_FUNC_DESKTOP_SPEAKER
Definition audio.h:77
@ AUDIO_FUNC_UNDEF
Definition audio.h:76
@ AUDIO_FU_CTRL_VOLUME
Definition audio.h:218
@ AUDIO_FU_CTRL_INPUT_GAIN
Definition audio.h:227
@ AUDIO_FU_CTRL_DELAY
Definition audio.h:224
@ AUDIO_FU_CTRL_BASS_BOOST
Definition audio.h:225
@ AUDIO_FU_CTRL_UNDEF
Definition audio.h:216
@ AUDIO_FU_CTRL_LATENCY
Definition audio.h:232
@ AUDIO_FU_CTRL_MUTE
Definition audio.h:217
@ AUDIO_FU_CTRL_INVERTER
Definition audio.h:229
@ AUDIO_FU_CTRL_MID
Definition audio.h:220
@ AUDIO_FU_CTRL_UNDERFLOW
Definition audio.h:230
@ AUDIO_FU_CTRL_OVERVLOW
Definition audio.h:231
@ AUDIO_FU_CTRL_BASS
Definition audio.h:219
@ AUDIO_FU_CTRL_GAIN_PAD
Definition audio.h:228
@ AUDIO_FU_CTRL_LOUDNESS
Definition audio.h:226
@ AUDIO_FU_CTRL_AGC
Definition audio.h:223
@ AUDIO_FU_CTRL_GRAPHIC_EQUALIZER
Definition audio.h:222
@ AUDIO_FU_CTRL_TREBLE
Definition audio.h:221
@ AUDIO_OUT_TERM_CTRL_OVERLOAD_POS
Definition audio.h:587
@ AUDIO_OUT_TERM_CTRL_CPY_PROT_POS
Definition audio.h:585
@ AUDIO_OUT_TERM_CTRL_CONNECTOR_POS
Definition audio.h:586
@ AUDIO_OUT_TERM_CTRL_OVERFLOW_POS
Definition audio.h:589
@ AUDIO_OUT_TERM_CTRL_UNDERFLOW_POS
Definition audio.h:588
@ AUDIO_FORMAT_TYPE_UNDEFINED
Definition audio.h:474
@ AUDIO_EXT_FORMAT_TYPE_II
Definition audio.h:480
@ AUDIO_EXT_FORMAT_TYPE_III
Definition audio.h:481
@ AUDIO_EXT_FORMAT_TYPE_I
Definition audio.h:479
@ AUDIO_FORMAT_TYPE_III
Definition audio.h:477
@ AUDIO_FORMAT_TYPE_II
Definition audio.h:476
@ AUDIO_FORMAT_TYPE_I
Definition audio.h:475
@ AUDIO_FORMAT_TYPE_IV
Definition audio.h:478
@ AUDIO_CHANNEL_CONFIG_RAW_DATA
Definition audio.h:643
@ AUDIO_CHANNEL_CONFIG_TOP_FRONT_LEFT
Definition audio.h:628
@ AUDIO_CHANNEL_CONFIG_TOP_BACK_CENTER
Definition audio.h:632
@ AUDIO_CHANNEL_CONFIG_TOP_FRONT_RIGHT
Definition audio.h:630
@ AUDIO_CHANNEL_CONFIG_BOTTOM_CENTER
Definition audio.h:640
@ AUDIO_CHANNEL_CONFIG_SIDE_LEFT
Definition audio.h:625
@ AUDIO_CHANNEL_CONFIG_TOP_CENTER
Definition audio.h:627
@ AUDIO_CHANNEL_CONFIG_NON_PREDEFINED
Definition audio.h:615
@ AUDIO_CHANNEL_CONFIG_BACK_RIGHT_OF_CENTER
Definition audio.h:642
@ AUDIO_CHANNEL_CONFIG_BACK_LEFT
Definition audio.h:620
@ AUDIO_CHANNEL_CONFIG_FRONT_RIGHT_OF_CENTER
Definition audio.h:623
@ AUDIO_CHANNEL_CONFIG_BACK_RIGHT
Definition audio.h:621
@ AUDIO_CHANNEL_CONFIG_LOW_FRQ_EFFECTS
Definition audio.h:619
@ AUDIO_CHANNEL_CONFIG_RIGHT_LOW_FRQ_EFFECTS
Definition audio.h:637
@ AUDIO_CHANNEL_CONFIG_BACK_LEFT_OF_CENTER
Definition audio.h:641
@ AUDIO_CHANNEL_CONFIG_TOP_BACK_RIGHT
Definition audio.h:633
@ AUDIO_CHANNEL_CONFIG_FRONT_CENTER
Definition audio.h:618
@ AUDIO_CHANNEL_CONFIG_FRONT_RIGHT
Definition audio.h:617
@ AUDIO_CHANNEL_CONFIG_SIDE_RIGHT
Definition audio.h:626
@ AUDIO_CHANNEL_CONFIG_TOP_BACK_LEFT
Definition audio.h:631
@ AUDIO_CHANNEL_CONFIG_TOP_FRONT_CENTER
Definition audio.h:629
@ AUDIO_CHANNEL_CONFIG_BACK_CENTER
Definition audio.h:624
@ AUDIO_CHANNEL_CONFIG_FRONT_LEFT_OF_CENTER
Definition audio.h:622
@ AUDIO_CHANNEL_CONFIG_TOP_FRONT_RIGHT_OF_CENTER
Definition audio.h:635
@ AUDIO_CHANNEL_CONFIG_TOP_SIDE_RIGHT
Definition audio.h:639
@ AUDIO_CHANNEL_CONFIG_TOP_SIDE_LEFT
Definition audio.h:638
@ AUDIO_CHANNEL_CONFIG_TOP_FRONT_LEFT_OF_CENTER
Definition audio.h:634
@ AUDIO_CHANNEL_CONFIG_LEFT_LOW_FRQ_EFFECTS
Definition audio.h:636
@ AUDIO_CHANNEL_CONFIG_FRONT_LEFT
Definition audio.h:616
@ AUDIO_FUNC_PROTOCOL_CODE_V2
Version 2.0.
Definition audio.h:54
@ AUDIO_FUNC_PROTOCOL_CODE_UNDEF
Definition audio.h:53
@ AUDIO_MU_CTRL_CLUSTER
Definition audio.h:199
@ AUDIO_MU_CTRL_UNDEF
Definition audio.h:197
@ AUDIO_MU_CTRL_MIXER
Definition audio.h:198
@ AUDIO_MU_CTRL_LATENCY
Definition audio.h:202
@ AUDIO_MU_CTRL_OVERFLOW
Definition audio.h:201
@ AUDIO_MU_CTRL_UNDERFLOW
Definition audio.h:200
@ AUDIO_DP_CTRL_UNDERFLOW
Definition audio.h:318
@ AUDIO_DP_CTRL_UNDEF
Definition audio.h:314
@ AUDIO_DP_CTRL_MODE_SELECT
Definition audio.h:316
@ AUDIO_DP_CTRL_LATENCY
Definition audio.h:320
@ AUDIO_DP_CTRL_OVERFLOW
Definition audio.h:319
@ AUDIO_DP_CTRL_CLUSTER
Definition audio.h:317
@ AUDIO_DP_CTRL_ENABLE
Definition audio.h:315
@ AUDIO_TERM_TYPE_OUT_ROOM_SPEAKER
Definition audio.h:462
@ AUDIO_TERM_TYPE_OUT_HEAD_MNT_DISP_AUIDO
Definition audio.h:460
@ AUDIO_TERM_TYPE_OUT_DESKTOP_SPEAKER
Definition audio.h:461
@ AUDIO_TERM_TYPE_OUT_LOW_FRQ_EFFECTS_SPEAKER
Definition audio.h:464
@ AUDIO_TERM_TYPE_OUT_UNDEFINED
Definition audio.h:457
@ AUDIO_TERM_TYPE_OUT_COMMUNICATION_SPEAKER
Definition audio.h:463
@ AUDIO_TERM_TYPE_OUT_GENERIC_SPEAKER
Definition audio.h:458
@ AUDIO_TERM_TYPE_OUT_HEADPHONES
Definition audio.h:459
@ AUDIO_RV_CTRL_FEEDBACK
Definition audio.h:258
@ AUDIO_RV_CTRL_TYPE
Definition audio.h:255
@ AUDIO_RV_CTRL_TIME
Definition audio.h:257
@ AUDIO_RV_CTRL_LATENCY
Definition audio.h:264
@ AUDIO_RV_CTRL_HIFREQ_ROLLOFF
Definition audio.h:261
@ AUDIO_RV_CTRL_DENSITY
Definition audio.h:260
@ AUDIO_RV_CTRL_ENABLE
Definition audio.h:254
@ AUDIO_RV_CTRL_UNDERFLOW
Definition audio.h:262
@ AUDIO_RV_CTRL_UNDEF
Definition audio.h:253
@ AUDIO_RV_CTRL_LEVEL
Definition audio.h:256
@ AUDIO_RV_CTRL_OVERFLOW
Definition audio.h:263
@ AUDIO_RV_CTRL_PREDELAY
Definition audio.h:259
uint32_t bmaControls
See: audio_feature_unit_control_pos_t. Controls0 is master channel 0 (always present) and Controls1 i...
Definition audio.h:759
AUDIO Channel Cluster Descriptor (4.1)
Definition audio.h:647
uint8_t wIndex_ep_or_int
Definition audio.h:946
uint8_t bUnitID
Constant uniquely identifying the Unit within the audio function. This value is used in all requests ...
Definition audio.h:756
uint8_t bAssocTerminal
Terminal ID of the Terminal that is associated with this Clock Source.
Definition audio.h:674
uint8_t bCSourceID
ID of the Clock Entity to which the last Clock Input Pin of this Clock Selector Entity is connected.
Definition audio.h:713
uint8_t bmControls
See: audio_cs_ac_interface_control_pos_t.
Definition audio.h:662
struct TU_ATTR_PACKED::TU_ATTR_PACKED subrange[]
uint8_t bControlSelector
Definition audio.h:833
uint8_t baCSourceID
ID of the Clock Entity to which the first Clock Input Pin of this Clock Selector Entity is connected....
Definition audio.h:686
uint8_t bDescriptorSubType
Descriptor SubType. Value: AUDIO_CS_AC_INTERFACE_HEADER.
Definition audio.h:658
uint8_t bBitResolution
The number of effectively used bits from the available bits in an audio subslot.
Definition audio.h:801
uint8_t type
Request type tusb_request_type_t.
Definition audio.h:824
uint16_t wTotalLength
Total number of bytes returned for the class-specific AudioControl interface descriptor....
Definition audio.h:661
uint8_t bTerminalID
Constant uniquely identifying the Terminal within the audio function. This value is used in all reque...
Definition audio.h:724
uint8_t wValue_cs
Definition audio.h:938
uint8_t bSourceID
ID of the Unit or Terminal to which this Terminal is connected.
Definition audio.h:744
uint32_t bmFormats
The Audio Data Format(s) that can be used to communicate with this interface.See: audio_data_format_t...
Definition audio.h:787
uint16_t wTerminalType
Constant characterizing the type of Terminal. See: audio_terminal_type_t for USB streaming and audio_...
Definition audio.h:725
uint16_t wValue
Definition audio.h:934
uint8_t bChannelNumber
Definition audio.h:832
uint8_t bmAttributes
See: audio_clock_source_attribute_t.
Definition audio.h:672
uint8_t bInfo
Definition audio.h:930
uint8_t bAttribute
Definition audio.h:931
uint16_t bcdADC
Audio Device Class Specification Release Number in Binary-Coded Decimal. Value: U16_TO_U8S_LE(0x0200)...
Definition audio.h:659
uint8_t bTerminalLink
The Terminal ID of the Terminal to which this interface is connected.
Definition audio.h:784
struct TU_ATTR_PACKED::TU_ATTR_PACKED controls[2]
uint16_t wLength
Definition audio.h:840
uint8_t bEndpoint
Definition audio.h:837
uint8_t iChannelNames
Index of a string descriptor, describing the name of the first inserted channel with a non-predefined...
Definition audio.h:650
uint8_t bCategory
Constant, indicating the primary use of this audio function, as intended by the manufacturer....
Definition audio.h:660
volatile uint16_t
Definition hcd_rusb2.c:58
uint8_t iTerminal
Index of a string descriptor, describing the Input Terminal.
Definition audio.h:732
uint8_t direction
Direction type. tusb_dir_t.
Definition audio.h:825
uint16_t wNumSubRanges
Definition audio.h:866
uint8_t bInterface
Definition audio.h:836
uint8_t bLockDelayUnits
Indicates the units used for the wLockDelay field. See: audio_cs_as_iso_data_ep_lock_delay_unit_t.
Definition audio.h:812
uint16_t wIndex
Definition audio.h:943
uint8_t wIndex_entity_id
Definition audio.h:947
uint8_t bDescriptorType
Descriptor Type. Value: TUSB_DESC_CS_INTERFACE.
Definition audio.h:657
uint8_t iClockSource
Index of a string descriptor, describing the Clock Source Entity.
Definition audio.h:675
uint8_t bSubslotSize
The number of bytes occupied by one audio subslot. Can be 1, 2, 3 or 4.
Definition audio.h:800
uint8_t bLength
Size of this descriptor in bytes: 9.
Definition audio.h:656
uint8_t bNrInPins
Number of Input Pins of this Unit: p = 1 thus bNrInPins = 1.
Definition audio.h:685
uint16_t wLockDelay
Indicates the time it takes this endpoint to reliably lock its internal clock recovery circuitry....
Definition audio.h:813
int8_t bCur
The setting for the CUR attribute of the addressed Control.
Definition audio.h:848
uint8_t bNrChannels
Number of channels currently connected.
Definition audio.h:648
uint8_t recipient
Recipient type tusb_request_recipient_t.
Definition audio.h:823
uint8_t bmRequestType
Definition audio.h:828
uint8_t bRequest
Request type audio_cs_req_t.
Definition audio.h:831
uint8_t bEntityID
Definition audio.h:839
uint8_t wValue_cn_or_mcn
Definition audio.h:937
audio_channel_config_t bmChannelConfig
Bitmap according to 'audio_channel_config_t' with a 1 set if channel is connected and 0 else....
Definition audio.h:649
uint8_t bClockID
Constant uniquely identifying the Clock Source Entity within the audio function. This value is used i...
Definition audio.h:671
uint8_t bFormatType
Constant identifying the Format Type the AudioStreaming interface is using. See: audio_format_type_t.
Definition audio.h:786
struct TU_ATTR_PACKED::@200101136021202022362361216111323132123100321201::TU_ATTR_PACKED bmRequestType_bit