- Main Page
- Related Pages
- Modules
- Data Structures
- Files

- File List
- Globals

# usb_commun_audio.h

Go to the documentation of this file.

    00001 /*This file is prepared for Doxygen automatic documentation generation.*/
    00015
    00016 /* Copyright (c) 2009 Atmel Corporation. All rights reserved.
    00017  *
    00018  * Redistribution and use in source and binary forms, with or without
    00019  * modification, are permitted provided that the following conditions are met:
    00020  *
    00021  * 1. Redistributions of source code must retain the above copyright notice,
    00022  * this list of conditions and the following disclaimer.
    00023  *
    00024  * 2. Redistributions in binary form must reproduce the above copyright notice,
    00025  * this list of conditions and the following disclaimer in the documentation
    00026  * and/or other materials provided with the distribution.
    00027  *
    00028  * 3. The name of Atmel may not be used to endorse or promote products derived
    00029  * from this software without specific prior written permission.
    00030  *
    00031  * 4. This software may only be redistributed and used in connection with an Atmel
    00032  * AVR product.
    00033  *
    00034  * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED
    00035  * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
    00036  * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE EXPRESSLY AND
    00037  * SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR ANY DIRECT,
    00038  * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
    00039  * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
    00040  * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
    00041  * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
    00042  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
    00043  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
    00044  */
    00045
    00046 #ifndef _USB_COMMUN_AUDIO_H_
    00047 #define _USB_COMMUN_AUDIO_H_
    00048
    00049 #define  AUDIO_CLASS_REVISION                   0x0100  //!< Revision of class specification - 1.0
    00050
    00053 #define  AUDIO_CLASS                            0x01
    00054 #define  AUDIO_SUB_CLASS_CONTROL                0x01    //!< Audio control sub class
    00055 #define  AUDIO_SUB_CLASS_STREAMING              0x02    //!< Audio stream sub class
    00056 #define  AUDIO_SUB_CLASS_MIDISTREAMING          0x03    //!< Audio midi stream sub class
    00057
    00058
    00059
    00064 #define  DESCRIPTOR_AUDIO_UNDEFINED             0x20
    00065 #define  DESCRIPTOR_AUDIO_DEVICE                0x21
    00066 #define  DESCRIPTOR_AUDIO_CONFIGURATION         0x22
    00067 #define  DESCRIPTOR_AUDIO_STRING                0x23
    00068 #define  DESCRIPTOR_AUDIO_INTERFACE             0x24
    00069 #define  DESCRIPTOR_AUDIO_ENDPOINT              0x25
    00070
    00071
    00074 #define  DESCRIPTOR_SUBTYPE_AUDIO_AC_UNDEFINED              0x00
    00075 #define  DESCRIPTOR_SUBTYPE_AUDIO_AC_HEADER                 0x01
    00076 #define  DESCRIPTOR_SUBTYPE_AUDIO_AC_INPUT_TERMINAL         0x02
    00077 #define  DESCRIPTOR_SUBTYPE_AUDIO_AC_OUTPUT_TERMINAL        0x03
    00078 #define  DESCRIPTOR_SUBTYPE_AUDIO_AC_MIXER_UNIT             0x04
    00079 #define  DESCRIPTOR_SUBTYPE_AUDIO_AC_SELECTOR_UNIT          0x05
    00080 #define  DESCRIPTOR_SUBTYPE_AUDIO_AC_FEATURE_UNIT           0x06
    00081 #define  DESCRIPTOR_SUBTYPE_AUDIO_AC_PROCESSING_UNIT        0x07
    00082 #define  DESCRIPTOR_SUBTYPE_AUDIO_AC_EXTENSION_UNIT         0x08
    00083
    00084
    00087 #define  DESCRIPTOR_SUBTYPE_AUDIO_AS_UNDEFINED              0x00
    00088 #define  DESCRIPTOR_SUBTYPE_AUDIO_AS_GENERAL                0x01
    00089 #define  DESCRIPTOR_SUBTYPE_AUDIO_AS_FORMAT_TYPE            0x02
    00090 #define  DESCRIPTOR_SUBTYPE_AUDIO_AS_FORMAT_SPECIFIC        0x03
    00091
    00092
    00095 #define  DESCRIPTOR_SUBTYPE_AUDIO_ENDP_UNDEFINED            0x00
    00096 #define  DESCRIPTOR_SUBTYPE_AUDIO_ENDP_GENERAL              0x01
    00097
    00098
    00101 #define  AUDIO_PROCESSING_UNIT_UNDEFINED                    0x00
    00102 #define  AUDIO_PROCESSING_UNIT_UPDOWNMIX                    0x01
    00103 #define  AUDIO_PROCESSING_UNIT_DOLBY_PROLOGIC               0x02
    00104 #define  AUDIO_PROCESSING_UNIT_3D_STEREO_EXTENDER           0x03
    00105 #define  AUDIO_PROCESSING_UNIT_REVERBERATION                0x04
    00106 #define  AUDIO_PROCESSING_UNIT_CHORUS                       0x05
    00107 #define  AUDIO_PROCESSING_UNIT_DYN_RANGE_COMP               0x06
    00108
    00109
    00110
    00111
    00115 #define  AUDIO_CHANNEL_NO_POSITION                          0x0000  // non-predefined spatial positions
    00116 #define  AUDIO_CHANNEL_L                                    0x0001  // Left Front (L)
    00117 #define  AUDIO_CHANNEL_R                                    0x0002  // Right Front (R)
    00118 #define  AUDIO_CHANNEL_C                                    0x0004  // Center Front (C)
    00119 #define  AUDIO_CHANNEL_LFE                                  0x0008  // Low Frequency Enhancement (LFE) [Super woofer]
    00120 #define  AUDIO_CHANNEL_LS                                   0x0010  // Left Surround (LS)
    00121 #define  AUDIO_CHANNEL_RS                                   0x0020  // Right Surround (RS)
    00122 #define  AUDIO_CHANNEL_LC                                   0x0040  // Left of Center (LC) [in front]
    00123 #define  AUDIO_CHANNEL_RC                                   0x0080  // Right of Center (RC) [in front]
    00124 #define  AUDIO_CHANNEL_S                                    0x0100  // Surround (S) [rear]
    00125 #define  AUDIO_CHANNEL_SL                                   0x0200  // Side Left (SL) [left wall]
    00126 #define  AUDIO_CHANNEL_SR                                   0x0400  // Side Right (SR) [right wall]
    00127 #define  AUDIO_CHANNEL_T                                    0x0800  // Top (T) [overhead]
    00128
    00129
    00130
    00131
    00136 #define  AUDIO_TE_TYPE_USB_UNDEFINE                         0x0100  // I/O USB Terminal, undefined Type.
    00137 #define  AUDIO_TE_TYPE_USB_STREAMING                        0x0101  // I/O A Terminal dealing with a signal carried over an endpoint in an AudioStreaming interface. The AudioStreaming interface descriptor points to the associated Terminal through the bTerminalLink field.
    00138 #define  AUDIO_TE_TYPE_USB_VENDOR_SPECIFIC                  0x01FF  // I/O A Terminal dealing with a signal carried over a vendor-specific interface. The vendor-specific interface descriptor must contain a field that references the Terminal
    00139
    00140
    00141
    00142 #define  AUDIO_TE_TYPE_INPUT_UNDEFINED                      0x0200  // I Input Terminal, undefined Type.
    00143 #define  AUDIO_TE_TYPE_INPUT_MICROPHONE                     0x0201  // I A generic microphone that does not fit under any of the other classifications.
    00144 #define  AUDIO_TE_TYPE_INPUT_DESKTOP_MICROPHONE             0x0202  // I A microphone normally placed on the desktop or integrated into the monitor.
    00145 #define  AUDIO_TE_TYPE_INPUT_PERSONAL_MICROPHONE            0x0203  // I A head-mounted or clip-on microphone.
    00146 #define  AUDIO_TE_TYPE_INPUT_OMNI_DIRECTIONAL_MICROPHONE    0x0204  // I A microphone designed to pick up voice from more than one speaker at relatively long ranges.
    00147 #define  AUDIO_TE_TYPE_INPUT_MICROPHONE_ARRAY               0x0205  // I An array of microphones designed for directional processing using host-based signal processing algorithms.
    00148 #define  AUDIO_TE_TYPE_INPUT_PROCESSING_MICROPHONE_ARRAY    0x0206  // I An array of microphones with an embedded signal processor.
    00149
    00150
    00151
    00152 #define  AUDIO_TE_TYPE_OUTPUT_UNDEFINED                     0x0300  // O Output Terminal, undefined Type.
    00153 #define  AUDIO_TE_TYPE_OUTPUT_SPEAKER                       0x0301  // O A generic speaker or set of speakers that does not fit under any of the other classifications.
    00154 #define  AUDIO_TE_TYPE_OUTPUT_HEADPHONES                    0x0302  // O A head-mounted audio output device.
    00155 #define  AUDIO_TE_TYPE_OUTPUT_HEAD_MOUNTED DISPLAY AUDIO    0x0303  // O The audio part of a VR head mounted display. The Associated Interfaces descriptor can be used to reference the HID interface used to report the position and orientation of the HMD.
    00156 #define  AUDIO_TE_TYPE_OUTPUT_DESKTOP_SPEAKER               0x0304  // O Relatively small speaker or set of speakers normally placed on the desktop or integrated into the monitor. These speakers are close to the user and have limited stereo separation.
    00157 #define  AUDIO_TE_TYPE_OUTPUT_ROOM_SPEAKER                  0x0305  // O Larger speaker or set of speakers that are heard well anywhere in the room.
    00158 #define  AUDIO_TE_TYPE_OUTPUT_COMMUNICATION_SPEAKER         0x0306  // O Speaker or set of speakers designed for voice communication.
    00159 #define  AUDIO_TE_TYPE_OUTPUT_LOW_FREQUENCY_EFFECTS_SPEAKER 0x0307  // O Speaker designed for low frequencies (subwoofer). Not capable of reproducing speech or music.
    00160
    00161
    00162
    00163 #define  AUDIO_TE_TYPE_BI_UNDEFINED                         0x0400  // I/O Bi-directional Terminal, undefined Type.
    00164 #define  AUDIO_TE_TYPE_BI_HANDSET                           0x0401  // I/O Hand-held bi-directional audio device.
    00165 #define  AUDIO_TE_TYPE_BI_HEADSET                           0x0402  // I/O Head-mounted bi-directional audio device.
    00166 #define  AUDIO_TE_TYPE_BI_SPEAKERPHONE_NO_ECHO_REDUCTION    0x0403  // I/O A hands-free audio device designed for host-based echo cancellation.
    00167 #define  AUDIO_TE_TYPE_BI_ECHO_SUPPRESSING_SPEAKERPHONE     0x0404  // I/O A hands-free audio device with echo suppression capable of half-duplex operation.
    00168 #define  AUDIO_TE_TYPE_BI_ECHO_CANCELING_SPEAKERPHONE       0x0405  // I/O A hands-free audio device with echo cancellation capable of full-duplex operation.
    00169
    00170
    00171
    00172 #define  AUDIO_TE_TYPE_TELEPHONY_UNDEFINED                  0x0500  // I/O Telephony Terminal, undefined Type.
    00173 #define  AUDIO_TE_TYPE_TELEPHONY_PHONE_LINE                 0x0501  // I/O May be an analog telephone line jack, an ISDN line, a proprietary PBX interface, or a wireless link.
    00174 #define  AUDIO_TE_TYPE_TELEPHONY_TELEPHONE                  0x0502  // I/O Device can be used as a telephone. When not in use as a telephone, handset is used as a bi-directional audio device.
    00175 #define  AUDIO_TE_TYPE_TELEPHONY_DOWN_LINE_PHONE            0x0503  // I/O A standard telephone set connected to the device. When not in use as a telephone, it can be used as a bidirectional audio device.
    00176
    00177
    00178
    00179 #define  AUDIO_TE_TYPE_EXTERNAL_UNDEFINED                   0x0600  // I/O External Terminal, undefined Type.
    00180 #define  AUDIO_TE_TYPE_EXTERNAL_ANALOG_CONNECTOR            0x0601  // I/O A generic analog connector.
    00181 #define  AUDIO_TE_TYPE_EXTERNAL_DIGITAL_AUDIO_INTERFACE     0x0602  // I/O A generic digital audio interface.
    00182 #define  AUDIO_TE_TYPE_EXTERNAL_LINE_CONNECTOR              0x0603  // I/O An analog connector at standard line levels. Usually uses 3.5mm.
    00183 #define  AUDIO_TE_TYPE_EXTERNAL_LEGACY_AUDIO_CONNECTOR      0x0604  // I/O An input connector assumed to be connected to the lineout of the legacy audio system of the host computer. Used for backward compatibility.
    00184 #define  AUDIO_TE_TYPE_EXTERNAL_S_PDIF_INTERFACE            0x0605  // I/O An S/PDIF digital audio interface. The Associated Interface descriptor can be used to reference an interface used for controlling special functions of this interface.
    00185 #define  AUDIO_TE_TYPE_EXTERNAL_1394_DA_STREAM              0x0606  // I/O An interface to audio streams on a 1394 bus.
    00186 #define  AUDIO_TE_TYPE_EXTERNAL_1394_DV_STREAM_SOUNDTRACK   0x0607  // I/O An interface to soundtrack of A/V stream on a 1394 bus.
    00187
    00188
    00189
    00190 #define  AUDIO_TE_TYPE_EMBEDDED_UNDEFINED                   0x0700  // I/O Embedded Terminal, undefined Type.
    00191 #define  AUDIO_TE_TYPE_EMBEDDED_LEVEL_CALIBRATION_NOISE_SRC 0x0701  // O Internal Noise source for level calibration (MPEG decoding, Dolby PrologicÔ, AC-3 etc.)
    00192 #define  AUDIO_TE_TYPE_EMBEDDED_EQUALIZATION NOISE          0x0702  // O Internal Noise source for measurements.
    00193 #define  AUDIO_TE_TYPE_EMBEDDED_CD_PLAYER                   0x0703  // I Audio compact disc player or CD-ROM capable of audio playback.
    00194 #define  AUDIO_TE_TYPE_EMBEDDED_DAT                         0x0704  // I/O Digital Audio Tape.
    00195 #define  AUDIO_TE_TYPE_EMBEDDED_DCC                         0x0705  // I/O Digital Compact Cassette.
    00196 #define  AUDIO_TE_TYPE_EMBEDDED_MINIDISK                    0x0706  // I/O Minidisk player.
    00197 #define  AUDIO_TE_TYPE_EMBEDDED_ANALOG_TAPE                 0x0707  // I/O Analog Audio Tape.
    00198 #define  AUDIO_TE_TYPE_EMBEDDED_PHONOGRAPH                  0x0708  // I Analog vinyl record player.
    00199 #define  AUDIO_TE_TYPE_EMBEDDED_VCR_AUDIO                   0x0709  // I Audio track of VCR.
    00200 #define  AUDIO_TE_TYPE_EMBEDDED_VIDEO_DISC_AUDIO            0x070A  // I Audio track of VideoDisc player.
    00201 #define  AUDIO_TE_TYPE_EMBEDDED_DVD_AUDIO                   0x070B  // I Audio track of DVD player.
    00202 #define  AUDIO_TE_TYPE_EMBEDDED_TV_TUNER_AUDIO              0x070C  // I Audio track of TV tuner.
    00203 #define  AUDIO_TE_TYPE_EMBEDDED_SATELLITE_RECEIVER_AUDIO    0x070D  // I Audio track of satellite receiver.
    00204 #define  AUDIO_TE_TYPE_EMBEDDED_CABLE_TUNER_AUDIO           0x070E  // I Audio track of cable tuner.
    00205 #define  AUDIO_TE_TYPE_EMBEDDED_DSS_AUDIO                   0x070F  // I Audio track of DSS receiver.
    00206 #define  AUDIO_TE_TYPE_EMBEDDED_RADIO_RECEIVER              0x0710  // I AM/FM radio receiver.
    00207 #define  AUDIO_TE_TYPE_EMBEDDED_RADIO_TRANSMITTER           0x0711  // O AM/FM radio transmitter.
    00208 #define  AUDIO_TE_TYPE_EMBEDDED_MULTI_TRACK_RECORDER        0x0712  // I/O A multi-track recording system.
    00209 #define  AUDIO_TE_TYPE_EMBEDDED_SYNTHESIZER                 0x0713  // I Synthesizer.
    00210
    00211
    00212
    00213
    00216
    00219 #define  AUDIO_FORMAT_TYPE_UNDEFINED                        0x00
    00220 #define  AUDIO_FORMAT_TYPE_I                                0x01
    00221 #define  AUDIO_FORMAT_TYPE_II                               0x02
    00222 #define  AUDIO_FORMAT_TYPE_III                              0x03
    00223
    00224
    00229 #define  AUDIO_FORMAT_TI_UNDEFINE                           0x0000
    00230 #define  AUDIO_FORMAT_TI_PCM                                0x0001
    00231 #define  AUDIO_FORMAT_TI_PCM8                               0x0002
    00232 #define  AUDIO_FORMAT_TI_IEEE_FLOAT                         0x0003
    00233 #define  AUDIO_FORMAT_TI_ALAW                               0x0004
    00234 #define  AUDIO_FORMAT_TI_MULAW                              0x0005
    00235
    00236
    00237
    00238 #define  AUDIO_FORMAT_TII_UNDEFINED                         0x1000
    00239 #define  AUDIO_FORMAT_TII_MPEG                              0x1001
    00240 #define  AUDIO_FORMAT_TII_AC_3                              0x1002
    00241
    00242
    00243
    00244 #define  AUDIO_FORMAT_TIII_UNDEFINED                        0x2000
    00245 #define  AUDIO_FORMAT_TIII_IEC1937_AC_3                     0x2001
    00246 #define  AUDIO_FORMAT_TIII_IEC1937_MPEG1_L1                 0x2002
    00247 #define  AUDIO_FORMAT_TIII_IEC1937_MPEG1_L2_3_OR_MP_2_NOEXT 0x2003
    00248 #define  AUDIO_FORMAT_TIII_IEC1937_MPEG2_EXT                0x2004
    00249 #define  AUDIO_FORMAT_TIII_IEC1937_MPEG2_L1_LS              0x2005
    00250 #define  AUDIO_FORMAT_TIII_IEC1937_MPEG2_L2_L3_LS           0x2006
    00251
    00252
    00253
    00258 #define  AUDIO_FORMAT_CS_MP_UNDEFINED                       0x00
    00259 #define  AUDIO_FORMAT_CS_MP_DUAL_CHANNEL                    0x01
    00260 #define  AUDIO_FORMAT_CS_MP_SECOND_STEREO                   0x02
    00261 #define  AUDIO_FORMAT_CS_MP_MULTILINGUAL                    0x03
    00262 #define  AUDIO_FORMAT_CS_MP_DYN_RANGE                       0x04
    00263 #define  AUDIO_FORMAT_CS_MP_SCALING                         0x05
    00264 #define  AUDIO_FORMAT_CS_MP_HILO_SCALING                    0x06
    00265
    00266
    00267
    00268 #define  AUDIO_FORMAT_CS_AC_CONTROL_UNDEFINED               0x00
    00269 #define  AUDIO_FORMAT_CS_AC_MODE                            0x01
    00270 #define  AUDIO_FORMAT_CS_AC_DYN_RANGE                       0x02
    00271 #define  AUDIO_FORMAT_CS_AC_SCALING                         0x03
    00272 #define  AUDIO_FORMAT_CS_AC_HILO_SCALING                    0x04
    00273
    00274
    00275
    00276
    00277
    00278
    00283
    00295 #define  SETUP_AUDIO_SET_CUR                    0x01
    00296 #define  SETUP_AUDIO_SET_MIN                    0x02
    00297 #define  SETUP_AUDIO_SET_MAX                    0x03
    00298 #define  SETUP_AUDIO_SET_RES                    0x04
    00299 #define  SETUP_AUDIO_GET_CUR                    0x81
    00300 #define  SETUP_AUDIO_GET_MIN                    0x82
    00301 #define  SETUP_AUDIO_GET_MAX                    0x83
    00302 #define  SETUP_AUDIO_GET_RES                    0x84
    00303
    00304
    00305
    00306
    00307
    00308 #define  SETUP_AUDIO_SET_MEM                    0x05
    00309 #define  SETUP_AUDIO_GET_MEM                    0x85
    00310 #define  SETUP_AUDIO_GET_STAT                   0xFF
    00311
    00312
    00313
    00320 #define  AUDIO_TE_CONTROL_CS_UNDEFINED                      0x00
    00321 #define  AUDIO_TE_CONTROL_CS_COPY_PROTECT                   0x01
    00322
    00323
    00324
    00325 #define  AUDIO_TE_CONTROL_CS_COPY_PROTECT_ATT_CPL0          0x00  // Copying is permitted without restriction. The material is either not copyrighted, or the copyright is not asserted
    00326 #define  AUDIO_TE_CONTROL_CS_COPY_PROTECT_ATT_CPL1          0x01  // One generation of copies may be made. The material is copyright protected and is the original.
    00327 #define  AUDIO_TE_CONTROL_CS_COPY_PROTECT_ATT_CPL2          0x02  // The material is copyright protected and no digital copying is permitted.
    00328
    00329
    00330
    00331
    00338 #define  AUDIO_MIXER_CONTROL_IOCN_ALL_PROGRAM               0xFFFF   // To get or set all programmable Mixer Controls
    00339 #define  AUDIO_MIXER_CONTROL_IOCN_ALL                       0x0000   // To get all Mixer Controls
    00340
    00341
    00342
    00343
    00352
    00353
    00360 #define  AUDIO_FU_CONTROL_CS_UNDEFINED                      0x00
    00361 #define  AUDIO_FU_CONTROL_CS_MUTE                           0x01
    00362 #define  AUDIO_FU_CONTROL_CS_VOLUME                         0x02
    00363 #define  AUDIO_FU_CONTROL_CS_BASS                           0x03
    00364 #define  AUDIO_FU_CONTROL_CS_MID                            0x04
    00365 #define  AUDIO_FU_CONTROL_CS_TREBLE                         0x05
    00366 #define  AUDIO_FU_CONTROL_CS_GRAPHIC_EQUALIZER              0x06
    00367 #define  AUDIO_FU_CONTROL_CS_AUTOMATIC_GAIN                 0x07
    00368 #define  AUDIO_FU_CONTROL_CS_DELAY                          0x08
    00369 #define  AUDIO_FU_CONTROL_CS_BASS_BOOST                     0x09
    00370 #define  AUDIO_FU_CONTROL_CS_LOUDNESS                       0x0A
    00371
    00372
    00373
    00374 #define  AUDIO_FU_CONTROL_CN_ALL                            0xFF   // To get or set all available Controls
    00375
    00376
    00379 #define  AUDIO_FU_CONTROL_BAND_EQ_25Hz          0x00000001  // band 14
    00380 #define  AUDIO_FU_CONTROL_BAND_EQ_31_5Hz        0x00000002  // band 15*
    00381 #define  AUDIO_FU_CONTROL_BAND_EQ_40Hz          0x00000004  // band 16
    00382 #define  AUDIO_FU_CONTROL_BAND_EQ_50Hz          0x00000008  // band 17
    00383 #define  AUDIO_FU_CONTROL_BAND_EQ_63Hz          0x00000010  // band 18*
    00384 #define  AUDIO_FU_CONTROL_BAND_EQ_80Hz          0x00000020  // band 19
    00385 #define  AUDIO_FU_CONTROL_BAND_EQ_100Hz         0x00000040  // band 20
    00386 #define  AUDIO_FU_CONTROL_BAND_EQ_125Hz         0x00000080  // band 21*
    00387 #define  AUDIO_FU_CONTROL_BAND_EQ_160Hz         0x00000100  // band 22
    00388 #define  AUDIO_FU_CONTROL_BAND_EQ_200Hz         0x00000200  // band 23
    00389 #define  AUDIO_FU_CONTROL_BAND_EQ_250Hz         0x00000400  // band 24*
    00390 #define  AUDIO_FU_CONTROL_BAND_EQ_315Hz         0x00000800  // band 25
    00391 #define  AUDIO_FU_CONTROL_BAND_EQ_400Hz         0x00001000  // band 26
    00392 #define  AUDIO_FU_CONTROL_BAND_EQ_500Hz         0x00002000  // band 27*
    00393 #define  AUDIO_FU_CONTROL_BAND_EQ_630Hz         0x00004000  // band 28
    00394 #define  AUDIO_FU_CONTROL_BAND_EQ_800Hz         0x00008000  // band 29
    00395 #define  AUDIO_FU_CONTROL_BAND_EQ_1000Hz        0x00010000  // band 30*
    00396 #define  AUDIO_FU_CONTROL_BAND_EQ_1250Hz        0x00020000  // band 31
    00397 #define  AUDIO_FU_CONTROL_BAND_EQ_1600Hz        0x00040000  // band 32
    00398 #define  AUDIO_FU_CONTROL_BAND_EQ_2000Hz        0x00080000  // band 33*
    00399 #define  AUDIO_FU_CONTROL_BAND_EQ_2500Hz        0x00100000  // band 34
    00400 #define  AUDIO_FU_CONTROL_BAND_EQ_3150Hz        0x00200000  // band 35
    00401 #define  AUDIO_FU_CONTROL_BAND_EQ_4000Hz        0x00400000  // band 36*
    00402 #define  AUDIO_FU_CONTROL_BAND_EQ_5000Hz        0x00800000  // band 37
    00403 #define  AUDIO_FU_CONTROL_BAND_EQ_6300Hz        0x01000000  // band 38
    00404 #define  AUDIO_FU_CONTROL_BAND_EQ_8000Hz        0x02000000  // band 39*
    00405 #define  AUDIO_FU_CONTROL_BAND_EQ_10000Hz       0x04000000  // band 40
    00406 #define  AUDIO_FU_CONTROL_BAND_EQ_12500Hz       0x08000000  // band 41
    00407 #define  AUDIO_FU_CONTROL_BAND_EQ_16000Hz       0x10000000  // band 42*
    00408 #define  AUDIO_FU_CONTROL_BAND_EQ_20000Hz       0x20000000  // band 43
    00409
    00410
    00411
    00412
    00413 #define  AUDIO_FU_CONTROL_DELAY_0MS             0x0000      // 0 ms
    00414 #define  AUDIO_FU_CONTROL_DELAY_1MS             0x0040      // 1 ms
    00415 #define  AUDIO_FU_CONTROL_DELAY_MAX             0xFFFF      // 1023.9844 ms
    00416
    00417
    00418
    00419
    00426 #define  AUDIO_PU_CONTROL_CS_UD_UNDEFINED                   0x00
    00427 #define  AUDIO_PU_CONTROL_CS_UD_ENABLE                      0x01
    00428 #define  AUDIO_PU_CONTROL_CS_UD_MODE_SELECT                 0x02
    00429
    00430
    00431
    00432 #define  AUDIO_PU_CONTROL_CS_DP_UNDEFINED                   0x00
    00433 #define  AUDIO_PU_CONTROL_CS_DP_ENABLE                      0x01
    00434 #define  AUDIO_PU_CONTROL_CS_DP_MODE_SELECT                 0x02
    00435
    00436
    00437
    00438 #define  AUDIO_PU_CONTROL_CS_3D_UNDEFINED                   0x00
    00439 #define  AUDIO_PU_CONTROL_CS_3D_ENABLE                      0x01
    00440 #define  AUDIO_PU_CONTROL_CS_3D_SPACIOUSNESS                0x03
    00441
    00442
    00443
    00444 #define  AUDIO_PU_CONTROL_CS_RV_UNDEFINED                   0x00
    00445 #define  AUDIO_PU_CONTROL_CS_RV_ENABLE                      0x01
    00446 #define  AUDIO_PU_CONTROL_CS_RV_LEVEL                       0x02
    00447 #define  AUDIO_PU_CONTROL_CS_RV_TIME                        0x03
    00448 #define  AUDIO_PU_CONTROL_CS_RV_FEEDBACK                    0x04
    00449
    00450
    00451
    00452 #define  AUDIO_PU_CONTROL_CS_CH_UNDEFINED                   0x00
    00453 #define  AUDIO_PU_CONTROL_CS_CH_ENABLE                      0x01
    00454 #define  AUDIO_PU_CONTROL_CS_CH_LEVEL                       0x02
    00455 #define  AUDIO_PU_CONTROL_CS_CH_RATE                        0x03
    00456 #define  AUDIO_PU_CONTROL_CS_CH_DEPTH                       0x04
    00457
    00458
    00459
    00460 #define  AUDIO_PU_CONTROL_CS_DR_UNDEFINED                   0x00
    00461 #define  AUDIO_PU_CONTROL_CS_DR_ENABLE                      0x01
    00462 #define  AUDIO_PU_CONTROL_CS_DR_COMPRESSION_RATE            0x02
    00463 #define  AUDIO_PU_CONTROL_CS_DR_MAXAMPL                     0x03
    00464 #define  AUDIO_PU_CONTROL_CS_DR_THRESHOLD                   0x04
    00465 #define  AUDIO_PU_CONTROL_CS_DR_ATTACK_TIME                 0x05
    00466 #define  AUDIO_PU_CONTROL_CS_DR_RELEASE_TIME                0x06
    00467
    00468
    00469
    00470 #define  AUDIO_PU_CONTROL_CS_RV_TYPE_ROOM1                  0     // simulates the reverberation of a small room.
    00471 #define  AUDIO_PU_CONTROL_CS_RV_TYPE_ROOM2                  1     // simulates the reverberation of a medium room.
    00472 #define  AUDIO_PU_CONTROL_CS_RV_TYPE_ROOM3                  2     // simulates the reverberation of a large room.
    00473 #define  AUDIO_PU_CONTROL_CS_RV_TYPE_HALL1                  3     // simulates the reverberation of a medium concert hall.
    00474 #define  AUDIO_PU_CONTROL_CS_RV_TYPE_HALL2                  4     // simulates the reverberation of a large concert hall.
    00475 #define  AUDIO_PU_CONTROL_CS_RV_TYPE_PLATE                  5     // simulates a plate reverberation (a studio device using a metal plate).
    00476 #define  AUDIO_PU_CONTROL_CS_RV_TYPE_DELAY                  6     // conventional delay that produces echo effects.
    00477 #define  AUDIO_PU_CONTROL_CS_RV_TYPE_PANNING_DELAY          7     // special delay in which the delayed sounds move left and right.
    00478
    00479
    00480
    00481
    00482 #define  AUDIO_PU_CONTROL_CS_DR_RELEASE_TIME_DELAY_0MS             0x0000      // 0 ms
    00483 #define  AUDIO_PU_CONTROL_CS_DR_RELEASE_TIME_DELAY_MAX             0xFFFF      // 255.9961 ms
    00484
    00485
    00486
    00487
    00494 #define  AUDIO_XU_CONTROL_CS_UNDEFINED                     0x00
    00495 #define  AUDIO_XU_CONTROL_CS_ENABLE                        0x01
    00496
    00497
    00498
    00505 #define  AUDIO_EP_CONTROL_CS_UNDEFINED                      0x00
    00506 #define  AUDIO_EP_CONTROL_CS_SAMPLING_FREQ                  0x01
    00507 #define  AUDIO_EP_CONTROL_CS_PITCH                          0x02
    00508
    00509
    00510
    00511
    00518
    00519
    00526
    00527
    00540 #define  AUDIO_CONTROL_LEVEL16_DB_STEP                      (1L/256) //  1/256 dB
    00541 #define  AUDIO_CONTROL_LEVEL16_MAX                          0x7FFF   //  127.9961 dB
    00542 #define  AUDIO_CONTROL_LEVEL16_1DB                          0x0100   //         1 dB
    00543 #define  AUDIO_CONTROL_LEVEL16_0DB                          0x0000   //         0 dB
    00544 #define  AUDIO_CONTROL_LEVEL16_M1DB                         0xFE00   //        -1 dB
    00545 #define  AUDIO_CONTROL_LEVEL16_MIN                          0x8001   // -127.9961 dB
    00546 #define  AUDIO_CONTROL_LEVEL16_MUTE                         0x8000   // -infinit dB (CUR attribute only)
    00547
    00548
    00549
    00550
    00551
    00552
    00553
    00554
    00555 #define  AUDIO_CONTROL_LEVEL8_MAX                           0x7F     // +31.75 dB
    00556 #define  AUDIO_CONTROL_LEVEL8_0DB                           0x00     //      0 dB
    00557 #define  AUDIO_CONTROL_LEVEL8_MIN                           0x80    //  -32.00 dB
    00558
    00559
    00560
    00562
    00563 #endif   // _USB_COMMUN_AUDIO_H_
    00564