約 992,541 件
https://w.atwiki.jp/usb_audio/pages/29.html
原文:Audio Device Document 1.0(PDF) USB Device Class Definition for Audio Devices Release 1.0 March 18, 1998 vi 4.4.1 AC Control Endpoint Descriptors.....................................................................57 4.4.2 AC Interrupt Endpoint Descriptors...................................................................58 4.5 AudioStreaming Interface Descriptors....................................................................58 4.5.1 Standard AS Interface Descriptor....................................................................59 4.5.2 Class-Specific AS Interface Descriptor............................................................59 4.5.3 Class-Specific AS Format Type Descriptor .....................................................60 4.5.4 Class-Specific AS Format-Specific Descriptor.................................................60 4.6 AudioStreaming Endpoint Descriptors....................................................................60 4.6.1 AS Isochronous Audio Data Endpoint Descriptors ...........................................61 4.6.2 AS Isochronous Synch Endpoint Descriptor ....................................................63 5 Requests .....................................................................................................................65 5.1 Standard Requests ................................................................................................65 5.2 Class-Specific Requests ........................................................................................65 5.2.1 Request Layout...............................................................................................65 5.2.2 AudioControl Requests ...................................................................................68 5.2.3 AudioStreaming Requests...............................................................................94 5.2.4 Additional Requests ........................................................................................97 Appendix A. Audio Device Class Codes .......................................................................99 A.1 Audio Interface Class Code ...................................................................................99 A.2 Audio Interface Subclass Codes ............................................................................99 A.3 Audio Interface Protocol Codes..............................................................................99 A.4 Audio Class-Specific Descriptor Types...................................................................99 A.5 Audio Class-Specific AC Interface Descriptor Subtypes .......................................100 A.6 Audio Class-Specific AS Interface Descriptor Subtypes .......................................100 A.7 Processing Unit Process Types............................................................................100 A.8 Audio Class-Specific Endpoint Descriptor Subtypes.............................................101 A.9 Audio Class-Specific Request Codes ...................................................................101 A.10 Control Selector Codes........................................................................................102 A.10.1 Terminal Control Selectors ...........................................................................102 A.10.2 Feature Unit Control Selectors ......................................................................102 A.10.3 Processing Unit Control Selectors.................................................................102 A.10.4 Extension Unit Control Selectors...................................................................104 A.10.5 Endpoint Control Selectors ...........................................................................104 Appendix B. Example 1 USB Microphone (Informative)............................................105 B.1 Product Description .............................................................................................105 B.2 Descriptor Hierarchy ............................................................................................105 B.3 Descriptors ..........................................................................................................106 B.3.1 Device Descriptor .........................................................................................106 B.3.2 Configuration Descriptor ...............................................................................107 B.3.3 AudioControl Interface Descriptor .................................................................107 B.3.4 AudioStreaming Interface Descriptor.............................................................109 B.3.5 String Descriptors .........................................................................................112 B.4 Requests .............................................................................................................113 USB Device Class Definition for Audio Devices Release 1.0 March 18, 1998 vii B.4.1 Standard Requests .......................................................................................113 B.4.2 Class-specific Requests................................................................................113 Appendix C. Example 2 USB Telephone (Informative)..............................................114 C.1 Product Description .............................................................................................114 C.2 Descriptor Hierarchy ............................................................................................114 C.3 Descriptors ..........................................................................................................115 C.3.1 Device Descriptor .........................................................................................115 C.3.2 Configuration Descriptor ...............................................................................116 C.3.3 AudioControl Interface Descriptor .................................................................116 C.3.4 AudioStreaming Interface 1 Descriptor..........................................................122 C.3.5 AudioStreaming Interface 2 Descriptor..........................................................125 C.3.6 String Descriptors .........................................................................................128 C.4 Requests .............................................................................................................129 C.4.1 Standard requests.........................................................................................129 C.4.2 Class-specific Requests................................................................................129 USB Device Class Definition for Audio Devices Release 1.0 March 18, 1998 viii List of Tables Table 3-1 Status Word Format.........................................................................................31 Table 3-2 Dolby Prologic Cluster Descriptor ..................................................................34 Table 3-3 Left Group Cluster Descriptor.........................................................................35 Table 4-1 Standard AC Interface Descriptor ...................................................................36 Table 4-2 Class-Specific AC Interface Header Descriptor..............................................37 Table 4-3 Input Terminal Descriptor................................................................................39 Table 4-4 Output Terminal Descriptor.............................................................................40 Table 4-5 Mixer Unit Descriptor .......................................................................................41 Table 4-6 Selector Unit Descriptor ..................................................................................43 Table 4-7 Feature Unit Descriptor....................................................................................43 Table 4-8 Common Part of the Processing Unit Descriptor...........................................45 Table 4-9 Up/Down-mix Processing Unit Descriptor......................................................47 Table 4-10 Dolby Prologic Processing Unit Descriptor..................................................49 Table 4-11 3D-Stereo Extender Processing Unit Descriptor ..........................................50 Table 4-12 Reverberation Processing Unit Descriptor...................................................52 Table 4-13 Chorus Processing Unit Descriptor ..............................................................53 Table 4-14 Dynamic Range Compressor Processing Unit Descriptor...........................54 Table 4-15 Extension Unit Descriptor .............................................................................56 Table 4-16 Associated Interfaces Descriptor ..................................................................57 Table 4-17 Standard AC Interrupt Endpoint Descriptor .................................................58 Table 4-18 Standard AS Interface Descriptor..................................................................59 Table 4-19 Class-Specific AS Interface Descriptor.........................................................60 Table 4-20 Standard AS Isochronous Audio Data Endpoint Descriptor .......................61 Table 4-21 Class-Specific AS Isochronous Audio Data Endpoint Descriptor...............62 Table 4-22 Standard AS Isochronous Synch Endpoint Descriptor ...............................63 Table 5-1 Set Request Values..........................................................................................66 Table 5-2 Get Request Values..........................................................................................67 Table 5-3 Set Terminal Control Request Values.............................................................68 Table 5-4 Get Terminal Control Request Values ............................................................68 Table 5-5 Copy Protect Control Parameter Block...........................................................69 Table 5-6 Set Mixer Unit Control Request Values...........................................................70 Table 5-7 Get Mixer Unit Control Request Values ..........................................................70 Table 5-8 First Form of the Mixer Control Parameter Block ..........................................71 Table 5-9 Second Form of the Mixer Control Parameter Block .....................................72 USB Device Class Definition for Audio Devices Release 1.0 March 18, 1998 ix Table 5-10 Third Form of the Mixer Control Parameter Block .......................................72 Table 5-11 Set Selector Unit Control Request Values....................................................73 Table 5-12 Get Selector Unit Control Request Values....................................................73 Table 5-13 Selector Control Parameter Block.................................................................74 Table 5-14 Set Feature Unit Control Request Values .....................................................74 Table 5-15 Get Feature Unit Control Request Values.....................................................75 Table 5-16 First Form of the Mute Control Parameter Block .........................................75 Table 5-17 Second Form of the Mute Control Parameter Block ....................................76 Table 5-18 First Form of the Volume Control Parameter Block.....................................76 Table 5-19 Second Form of the Volume Control Parameter Block................................77 Table 5-20 First Form of the Bass Control Parameter Block .........................................78 Table 5-21 Second Form of the Bass Control Parameter Block ....................................78 Table 5-22 First Form of the Mid Control Parameter Block............................................79 Table 5-23 Second Form of the Mid Control Parameter Block ......................................79 Table 5-24 First Form of the Treble Control Parameter Block .......................................80 Table 5-25 Second Form of the Treble Control Parameter Block..................................80 Table 5-27 Band Numbers and Center Frequencies (ANSI S1.11-1986 Standard) ........80 Table 5-28 Graphic Equalizer Control Parameter Block.................................................81 Table 5-29 First Form of the Automatic Gain Control Parameter Block........................82 Table 5-30 Second Form of the Automatic Gain Control Parameter Block...................82 Table 5-31 First Form of the Delay Control Parameter Block ........................................83 Table 5-32 Second Form of the Delay Control Parameter Block ...................................83 Table 5-33 First Form of the Bass Boost Control Parameter Block ..............................84 Table 5-34 Second Form of the Bass Boost Control Parameter Block .........................84 Table 5-35 First Form of the Loudness Control Parameter Block .................................85 Table 5-36 Second Form of the Loudness Control Parameter Block............................85 Table 5-37 Set Processing Unit Control Request Values...............................................86 Table 5-38 Get Processing Unit Control Request Values ..............................................86 Table 5-39 Enable Processing Control Parameter Block ...............................................87 Table 5-40 Mode Select Control Parameter Block ..........................................................87 Table 5-41 Spaciousness Control Parameter Block .......................................................88 Table 5-42 Reverb Type Control Parameter Block..........................................................88 Table 5-43 Reverb Level Control Parameter Block.........................................................89 Table 5-44 Spaciousness Control Parameter Block .......................................................89 Table 5-45 Reverb Delay Feedback Control Parameter Block .......................................89 USB Device Class Definition for Audio Devices Release 1.0 March 18, 1998 x Table 5-46 Chorus Level Control Parameter Block ........................................................90 Table 5-47 Chorus Modulation Rate Control Parameter Block......................................90 Table 5-48 Chorus Modulation Depth Control Parameter Block....................................91 Table 5-49 Dynamic Range Compressor Ratio Control Parameter Block .....................91 Table 5-50 Dynamic Range Compressor MaxAmpl Control Parameter Block ..............91 Table 5-51 Dynamic Range Compressor Threshold Control Parameter Block.............92 Table 5-52 Dynamic Range Compressor Attack Time Control Parameter Block ..........92 Table 5-53 Dynamic Range Compressor Release Time Control Parameter Block........93 Table 5-54 Set Extension Unit Control Request Values .................................................93 Table 5-55 Get Extension Unit Control Request Values.................................................94 Table 5-56 Enable Processing Control Parameter Block ...............................................94 Table 5-57 Set Endpoint Control Request Values ..........................................................95 Table 5-58 Get Endpoint Control Request Values..........................................................95 Table 5-59 Sampling Frequency Control Parameter Block ............................................96 Table 5-60 Pitch Control Parameter Block......................................................................96 Table 5-61 Set Memory Request Values..........................................................................97 Table 5-62 Get Memory Request Values .........................................................................97 Table 5-63 Get Status Request Values............................................................................98 Table A-1 Audio Interface Class Code ............................................................................99 Table A-2 Audio Interface Subclass Codes ....................................................................99 Table A-3 Audio Interface Protocol Codes......................................................................99 Table A-4 Audio Class-specific Descriptor Types..........................................................99 Table A-5 Audio Class-Specific AC Interface Descriptor Subtypes.............................100 Table A-6 Audio Class-Specific AS Interface Descriptor Subtypes.............................100 Table A-7 Processing Unit Process Types....................................................................100 Table A-8 Audio Class-Specific Endpoint Descriptor Subtypes..................................101 Table A-9 Audio Class-Specific Request Codes...........................................................101 Table A-10 Terminal Control Selectors .........................................................................102 Table A-11 Feature Unit Control Selectors ...................................................................102 Table A-12 Up/Down-mix Processing Unit Control Selectors......................................102 Table A-13 Dolby Prologic Processing Unit Control Selectors ...................................103 Table A-14 3D Stereo Extender Processing Unit Control Selectors............................103 Table A-15 Reverberation Processing Unit Control Selectors.....................................103 Table A-16 Chorus Processing Unit Control Selectors................................................103 Table A-17 Dynamic Range Compressor Processing Unit Control Selectors ............104 1 - 6 - 11 - 16 - 21 - 26 - 31 - 36 - 41 - 46 - 51 - 56 - 61 - 66 - 71 - 76 - 81 - 86 - 91 - 96 - 101 - 106 - 111 - 116 - 121 - 126 ここを編集
https://w.atwiki.jp/usb_audio/pages/53.html
原文:Audio Device Document 1.0(PDF) USB Device Class Definition for Audio Devices Release 1.0 March 18, 1998 121 Offset Field Size Value Description 1 bDescriptorType 1 0x24 CS_INTERFACE. 2 bDescriptorSubtype 1 0x03 OUTPUT_TERMINAL subtype. 3 bTerminalID 1 0x06 ID of this Terminal. 4 wTerminalType 2 0x0101 Terminal is USB Streaming Out. 6 bAssocTerminal 1 0x03 Associated with USB Streaming In Terminal. 7 bSourceID 1 0x09 From USB Selector Unit. 8 iTerminal 1 0x00 Unused. C.3.3.9 Selector Unit Descriptor (ID7) This descriptor describes the Selector Unit connected to the Phone Line Out Output Terminal. Either Handset In or USB In signals can be selected. Table C-11 USB Telephone Selector Unit Descriptor (ID7) Offset Field Size Value Description 0 bLength 1 0x09 Size of this descriptor, in bytes. 1 bDescriptorType 1 0x24 CS_INTERFACE. 2 bDescriptorSubtype 1 0x05 SELECTOR_UNIT subtype. 3 bUnitD 1 0x07 ID of this Unit. 4 bNrInPins 1 0x02 Number of input pins. 6 baSourceID(1) 1 0x02 From Handset In Terminal. 7 baSourceID(2) 1 0x03 From USB Streaming In Terminal. 8 iSelector 1 0x00 Unused. C.3.3.10 Selector Unit Descriptor (ID8) This descriptor describes the Selector Unit connected to the Handset Out Output Terminal. Either Phone Line In or USB In signals can be selected. Table C-12 USB Telephone Selector Unit Descriptor (ID8) Offset Field Size Value Description 0 bLength 1 0x09 Size of this descriptor, in bytes. 1 bDescriptorType 1 0x24 CS_INTERFACE. USB Device Class Definition for Audio Devices Release 1.0 March 18, 1998 122 Offset Field Size Value Description 2 bDescriptorSubtype 1 0x05 SELECTOR_UNIT subtype. 3 bUnitD 1 0x08 ID of this Unit. 4 bNrInPins 1 0x02 Number of input pins. 6 baSourceID(1) 1 0x01 From Phone Line In Terminal. 7 baSourceID(2) 1 0x03 From USB Streaming In Terminal. 8 iSelector 1 0x00 Unused. C.3.3.11 Selector Unit Descriptor (ID9) This descriptor describes the Selector Unit connected to the USB Streaming Out Output Terminal. Either Phone Line In or Handset In signals can be selected. Table C-13 USB Telephone Selector Unit Descriptor (ID9) Offset Field Size Value Description 0 bLength 1 0x09 Size of this descriptor, in bytes. 1 bDescriptorType 1 0x24 CS_INTERFACE. 2 bDescriptorSubtype 1 0x05 SELECTOR_UNIT subtype. 3 bUnitD 1 0x09 ID of this Unit 4 bNrInPins 1 0x02 Number of input pins. 6 baSourceID(1) 1 0x01 From Phone Line In Terminal. 7 baSourceID(2) 1 0x02 From Handset In Terminal. 8 iSelector 1 0x00 Unused. C.3.4 AudioStreaming Interface 1 Descriptor The AudioStreaming interface 1 is used for streaming audio from the Host to the USB Telephone device. AudioStreaming interface 1 has two alternate settings. The first is the zero bandwidth alternate setting (Alternate Setting 0), used to reclaim USB bandwidth. It is also the default alternate setting. The second alternate setting (1) is the fully operational setting for the Host to Device streaming communication. C.3.4.1 Zero-bandwidth Alternate Setting 0 C.3.4.1.1.1 Standard Interface Descriptor USB Device Class Definition for Audio Devices Release 1.0 March 18, 1998 123 Table C-14 USB Telephone Standard Interface Descriptor (Alt. Set. 0) Offset Field Size Value Description 0 bLength 1 0x09 Size of this descriptor, in bytes. 1 bDescriptorType 1 0x04 INTERFACE descriptor. 2 bInterfaceNumber 1 0x01 Index of this interface. 3 bAlternateSetting 1 0x00 Index of this setting. 4 bNumEndpoints 1 0x00 0 endpoints. 5 bInterfaceClass 1 0x01 AUDIO. 6 bInterfaceSubclass 1 0x02 AUDIO_STREAMING. 7 bInterfaceProtocol 1 0x00 Unused. 8 iInterface 1 0x00 Unused. C.3.4.2 Operational Alternate Setting 1 C.3.4.2.1.1 Standard AS Interface Descriptor Table C-15 USB Telephone Standard AS Interface Descriptor Offset Field Size Value Description 0 bLength 1 0x09 Size of this descriptor, in bytes. 1 bDescriptorType 1 0x04 INTERFACE descriptor. 2 bInterfaceNumber 1 0x01 Index of this interface. 3 bAlternateSetting 1 0x01 Index of this setting. 4 bNumEndpoints 1 0x01 1 endpoint. 5 bInterfaceClass 1 0x01 AUDIO. 6 bInterfaceSubclass 1 0x02 AUDIO_STREAMING. 7 bInterfaceProtocol 1 0x00 Unused. 8 iInterface 1 0x00 Unused. C.3.4.2.1.2 Class-specific AS Interface Descriptor Table C-16 USB Telephone Class-specific AS Interface Descriptor Offset Field Size Value Description USB Device Class Definition for Audio Devices Release 1.0 March 18, 1998 124 Offset Field Size Value Description 0 bLength 1 0x07 Size of this descriptor, in bytes. 1 bDescriptorType 1 0x24 CS_INTERFACE descriptor. 2 bDescriptorSubtype 1 0x01 GENERAL. 3 bTerminalLink 1 0x03 Linked to USB Streaming In Terminal. 4 bDelay 1 0x01 Interface delay. 5 wFormatTag 2 0x0001 PCM format. C.3.4.2.1.3 Type I Format Type Descriptor Table C-17 USB Telephone Type I Format Type Descriptor Offset Field Size Value Description 0 bLength 1 0x0B Size of this descriptor, in bytes. 1 bDescriptorType 1 0x24 CS_INTERFACE. 2 bDescriptorSubtype 1 0x02 FORMAT_TYPE. 3 bFormatType 1 0x01 FORMAT_TYPE_I. 4 bNrChannels 1 0x01 One channel. 5 bSubFrameSize 1 0x02 Two bytes per slot. 6 bBitResolution 1 0x10 16 bits. 7 bSamFreqType 1 0x01 One sampling frequency. 8 tSamFreq 3 0x01F40 8000Hz is the sampling frequency. C.3.4.2.1.4 Standard Endpoint Descriptor Table C-18 USB Telephone Standard Endpoint Descriptor Offset Field Size Value Description 0 bLength 1 0x09 Size of this descriptor, in bytes. 1 bDescriptorType 1 0x05 ENDPOINT descriptor. 2 bEndpointAddress 1 0x01 OUT Endpoint 1. 3 bmAttributes 1 0x0B Isochronous transfer type, synchronous synchronization type. 4 wMaxPacketSize 2 0x0010 16 bytes per packet (8 two-byte USB Device Class Definition for Audio Devices Release 1.0 March 18, 1998 125 Offset Field Size Value Description samples). 6 bInterval 1 0x01 One packet every frame. 7 bRefresh 1 0x00 Unused. 8 bSynchAddress 1 0x00 Unused. C.3.4.2.1.5 Class-specific Isochronous Audio Data Endpoint Descriptor Table C-19 USB Telephone Class-specific Isoc. Audio Data Endpoint Descriptor Offset Field Size Value Description 0 bLength 1 0x07 Size of this descriptor, in bytes. 1 bDescriptorType 1 0x25 CS_ENDPOINT. 2 bDescriptorSubtype 1 0x01 GENERAL. 3 bmAttributes 1 0x00 No sampling frequency control, no pitch control. 4 bLockDelayUnits 1 0x00 Unused. 5 wLockDelay 2 0x0000 Unused. C.3.5 AudioStreaming Interface 2 Descriptor The AudioStreaming interface 2 is used for streaming audio from the USB Telephone device to the Host. AudioStreaming interface 2 has two alternate settings. The first is the zero bandwidth alternate setting (Alternate Setting 0), used to reclaim USB bandwidth. It is also the default alternate setting. The second alternate setting (1) is the fully operational setting for the Device to Host streaming communication. C.3.5.1 Zero-bandwidth Alternate Setting 0 C.3.5.1.1.1 Standard Interface Descriptor Table C-20 USB Telephone Standard Interface Descriptor (Alt. Set. 0) Offset Field Size Value Description 0 bLength 1 0x09 Size of this descriptor, in bytes. 1 bDescriptorType 1 0x04 INTERFACE descriptor. 2 bInterfaceNumber 1 0x01 Index of this interface. 3 bAlternateSetting 1 0x00 Index of this setting. 4 bNumEndpoints 1 0x00 0 endpoints. 1 - 6 - 11 - 16 - 21 - 26 - 31 - 36 - 41 - 46 - 51 - 56 - 61 - 66 - 71 - 76 - 81 - 86 - 91 - 96 - 101 - 106 - 111 - 116 - 121 - 126 ここを編集
https://w.atwiki.jp/usb_audio/pages/45.html
原文:Audio Device Document 1.0(PDF) USB Device Class Definition for Audio Devices Release 1.0 March 18, 1998 81 Band Nr. Center Freq. Band Nr. Center Freq. Band Nr. Center Freq. 16 40Hz 26 400Hz 36* 4000Hz 17 50Hz 27* 500Hz 37 5000Hz 18* 63Hz 28 630Hz 38 6300Hz 19 80Hz 29 800Hz 39* 8000Hz 20 100Hz 30* 1000Hz 40 10000Hz 21* 125Hz 31 1250Hz 41 12500Hz 22 160Hz 32 1600Hz 42* 16000Hz 23 200Hz 33* 2000Hz 43 20000Hz Note Bands marked with an asterisk (*) are those present in an octave equalizer. A Feature Unit that supports the Graphic Equalizer Control is not required to implement the full set of filters. A subset (for example, octave bands) may be implemented. During a Get Control request, the bmBandsPresent field in the parameter block is a bitmap indicating which bands are effectively implemented and thus reported back in the returned parameter block. Consequently, the number of bits set in this field determines the total length of the returned parameter block. During a Set Control request, a bit set in the bmBandsPresent field indicates there is a new setting for that band in the parameter block that follows. The new values must be in ascending order. If the number of bits set in the bmBandsPresent field does not match the number of parameters specified in the following block, the control pipe must indicate a stall. A Graphic Equalizer Control can support all possible Control attributes (CUR, MIN, MAX, and RES). However, if a certain attribute is supported, it must do so for all individual bands. The settings for the CUR, MIN, and MAX attributes can range from +31.75 dB (0x7F) down to –32.00 dB (0x80) in steps of 0.25 dB (0x01). The settings for the RES attribute can only take positive values and range from 0.25 dB (0x01) to +31.75 dB (0x7F). The Graphic Equalizer Control honors the request to the best of its abilities. It may round the bBandxx attribute values to their closest available settings. It will report these settings when queried during a Get Control request. Only the first form of the Feature Unit Control request for Graphic Equalizer Control is supported. A particular Graphic Equalizer Control within a Feature Unit is addressed through the Unit ID and Channel Number fields of the Set/Get Feature Unit Control request. The valid range for the Channel Number field is from zero (the ‘master’ channel) up to the number of logical channels in the audio channel cluster. Table 5-27 Graphic Equalizer Control Parameter Block Control Selector GRAPHIC_EQUALIZER_CONTROL wLength 4+(number of bits set in bmBandsPresent NrBits) USB Device Class Definition for Audio Devices Release 1.0 March 18, 1998 82 Offset Field Size Value Description 0 bmBandsPresent 4 Bit Map A bit set indicates the band is present D0 Band 14 is present D1 Band 15 is present … D29 Band 43 is present D30 Reserved D31 Reserved 4 bBand(Lowest) 1 Number The setting for the attribute of the lowest band present 0x7F +31.75 dB 0x7E +31.50 dB … 0x00 0.00 dB … 0x82 -31.50 dB 0x81 -31.75 dB 0x80 -32.00 dB … … … … … 4+(NrBits-1) bBand(Highest) 1 Number The setting for the attribute of the highest band present. 5.2.2.4.3.7 Automatic Gain Control The Automatic Gain Control (AGC) is one of the building blocks of a Feature Unit. An Automatic Gain Control can have only the current setting attribute (CUR). The position of an Automatic Gain Control CUR attribute can be either TRUE or FALSE. In the first form of the request, a particular Automatic Gain Control within a Feature Unit is addressed through the Unit ID and Channel Number fields of the Set/Get Feature Unit Control request. The valid range for the Channel Number field is from zero (the ‘master’ channel) up to the number of logical channels in the audio channel cluster. Table 5-28 First Form of the Automatic Gain Control Parameter Block Control Selector AUTOMATIC_GAIN_CONTROL wLength 1 Offset Field Size Value Description 0 bAGC 1 Bool The setting for the attribute of the addressed Automatic Gain Control. On when TRUE, off when FALSE. In the second form, the Channel Number field is set to 0xFF. The parameter block contains a list of settings for all available AGC Controls in the Feature Unit. Table 5-29 Second Form of the Automatic Gain Control Parameter Block Control Selector AUTOMATIC_GAIN_CONTROL USB Device Class Definition for Audio Devices Release 1.0 March 18, 1998 83 wLength Number of available Controls NrAv Offset Field Size Value Description 0 bAGC(1) 1 Bool The setting for the attribute of the first Automatic Gain Control. … … … … … NrAv-1 bAGC(NrAv) 1 Bool The setting for the attribute of the last Automatic Gain Control. 5.2.2.4.3.8 Delay Control The Delay Control is one of the building blocks of a Feature Unit. A Delay Control can support all possible Control attributes (CUR, MIN, MAX, and RES). The settings for the CUR, MIN, MAX, and RES attributes can range from zero (0x0000) to 1023.9844ms (0xFFFF) in steps of 1/64 ms or 0.015625 ms (0x0001). The Delay Control honors the request to the best of its abilities. It may round the wDelay attribute value to its closest available setting. It will report this rounded setting when queried during a Get Control request. In the first form of the request, a particular Delay Control within a Feature Unit is addressed through the Unit ID and Channel Number fields of the Set/Get Feature Unit Control request. The valid range for the Channel Number field is from zero (the ‘master’ channel) up to the number of logical channels in the audio channel cluster. Table 5-30 First Form of the Delay Control Parameter Block Control Selector DELAY_CONTROL wLength 2 Offset Field Size Value Description 0 wDelay 2 Number The setting for the attribute of the addressed Delay Control 0x0000 0.0000 ms 0x0001 0.0156 ms 0x0002 0.0312 ms … 0x0040 1.0000 ms … 0xFFFD 1023.9531 ms 0xFFFE 1023.9687 ms 0xFFFF 1023.9844 ms In the second form, the Channel Number field is set to 0xFF. The parameter block contains a list of settings for all available Delay Controls in the Feature Unit. Table 5-31 Second Form of the Delay Control Parameter Block Control Selector DELAY_CONTROL wLength (Number of available Controls NrAv)*2 USB Device Class Definition for Audio Devices Release 1.0 March 18, 1998 84 Offset Field Size Value Description 0 wDelay(1) 1 Number The setting for the attribute of the first Delay Control. … … … … … (NrAv-1)*2 wDelay(NrAv) 1 Number The setting for the attribute of the last Delay Control. 5.2.2.4.3.9 Bass Boost Control The Bass Boost Control is one of the building blocks of a Feature Unit. A Bass Boost Control can have only the current setting attribute (CUR). The position of a Bass Boost Control CUR attribute can be either TRUE or FALSE. In the first form of the request, a particular Bass Boost Control within a Feature Unit is addressed through the Unit ID and Channel Number fields of the Set/Get Feature Unit Control request. The valid range for the Channel Number field is from zero (the ‘master’ channel) up to the number of logical channels in the audio channel cluster. Table 5-32 First Form of the Bass Boost Control Parameter Block Control Selector BASS_BOOST_CONTROL wLength 1 Offset Field Size Value Description 0 bBassBoost 1 Bool The setting for the addressed Bass Boost Control’s CUR attribute. On when TRUE, off when FALSE. In the second form, the Channel Number field is set to 0xFF. The parameter block contains a list of settings for the CUR attribute for all available Bass Boost Controls in the Feature Unit. Table 5-33 Second Form of the Bass Boost Control Parameter Block Control Selector BASS_BOOST_CONTROL wLength Number of available Controls NrAv Offset Field Size Value Description 0 bBassBoost(1) 1 Bool The setting for the CUR attribute of the first Bass Boost Control. … … … … … NrAv-1 bBassBoost(NrAv) 1 Bool The setting for the CUR attribute of the last Bass Boost Control. 5.2.2.4.3.10 Loudness Control USB Device Class Definition for Audio Devices Release 1.0 March 18, 1998 85 The Loudness Control is one of the building blocks of a Feature Unit. A Loudness Control can have only the current setting attribute (CUR). The position of a Loudness Control CUR attribute can be either TRUE or FALSE. In the first form of the request, a particular Loudness Control within a Feature Unit is addressed through the Unit ID and Channel Number fields of the Set/Get Feature Unit Control request. The valid range for the Channel Number field is from zero (the ‘master’ channel) up to the number of logical channels in the audio channel cluster. Table 5-34 First Form of the Loudness Control Parameter Block Control Selector LOUDNESS_CONTROL wLength 1 Offset Field Size Value Description 0 bLoudness 1 Bool The setting for the addressed Loudness Control’s CUR attribute. On when TRUE, off when FALSE. In the second form, the Channel Number field is set to 0xFF. The parameter block contains a list of settings for the CUR attribute for all available Loudness Controls in the Feature Unit. Table 5-35 Second Form of the Loudness Control Parameter Block Control Selector LOUDNESS_CONTROL wLength Number of available Controls NrAv Offset Field Size Value Description 0 bLoudness(1) 1 Bool The setting for the CUR attribute of the first Loudness Control. … … … … … NrAv-1 bLoudness(NrAv) 1 Bool The setting for the CUR attribute of the last Loudness Control. 5.2.2.5 Processing Unit Control Requests The following sections describe the Set and Get Processing Unit Control requests. They are used to manipulate the audio Controls within a Processing Unit. 1 - 6 - 11 - 16 - 21 - 26 - 31 - 36 - 41 - 46 - 51 - 56 - 61 - 66 - 71 - 76 - 81 - 86 - 91 - 96 - 101 - 106 - 111 - 116 - 121 - 126 ここを編集
https://w.atwiki.jp/usb_audio/pages/43.html
原文:Audio Device Document 1.0(PDF) USB Device Class Definition for Audio Devices Release 1.0 March 18, 1998 71 established in Section 4.3.2.3, “Mixer Unit Descriptor.” (ICN=u, OCN=v) If the request specifies an unknown ICN or OCN to that Unit, the control pipe must indicate a stall. For the Get Mixer Unit request, it is legal to address a non-programmable Mixer Control. A special case arises when the Input Channel Number and Output Channel Number are both set to 0xFF. Then a single Get Mixer Unit Control request can be used to retrieve an attribute setting of all the programmable Mixer Controls within the Unit. The ordering of the parameters in the parameter block obeys the same rules as established for the bit ordering in the bmControls field of the Mixer Unit Descriptor. The previous description is referred to as the second form of the Get Mixer Unit Control request. Another special case arises when the Input Channel Number and Output Channel Number are both set to 0x00. Then a single Get Mixer Unit Control request can be used to retrieve an attribute setting of all the Mixer Controls (both programmable and non-programmable) within the Unit. The ordering of the parameters in the parameter block obeys the same rules as established for the bit ordering in the bmControls field of the Mixer Unit Descriptor. The parameter block now contains a setting for every Mixer in the Mixer Unit. The above description is referred to as the third form of the Get Mixer Unit Control request. For a description of the parameter block for the Get Mixer Unit Control request, see Section 5.2.2.2.3, “Mixer Control.” 5.2.2.2.3 Mixer Control A Mixer Unit consists of a number of Mixer Controls, either programmable or fixed. A Mixer Control can support all possible Control attributes (CUR, MIN, MAX, and RES). The settings for the CUR, MIN, and MAX attributes can range from +127.9961 dB (0x7FFF) down to -127.9961 dB (0x8001) in steps of 1/256 dB or 0.00390625 dB (0x0001). The range for the CUR attribute is extended by code 0x8000, representing silence, i.e., -¥ dB. The settings for the RES attribute can only take positive values and range from 1/256 dB (0x0001) to +127.9961 dB (0x7FFF). The Mixer Control honors the request to the best of its abilities. It may round the wMixer attribute value to its closest available setting. It will report this rounded setting when queried during a Get Mixer Unit Control request. In the first form of the Mixer Unit Control request, a particular Mixer Control within a Mixer Unit is addressed through the Unit ID, Input Channel Number, and Output Channel Number fields of the Set/Get Mixer Unit Control request. Table 5-8 First Form of the Mixer Control Parameter Block wLength 2 USB Device Class Definition for Audio Devices Release 1.0 March 18, 1998 72 Offset Field Size Value Description 0 wMixer 2 Number The setting for the attribute of the addressed Mixer Control 0x7FFF 127.9961 dB … 0x0100 1.0000 dB … 0x0002 0.0078 dB 0x0001 0.0039 dB 0x0000 0.0000 dB 0xFFFF -0.0039 dB 0xFFFE -0.0078 dB … 0xFE00 -1.0000 dB … 0x8002 -127.9922 dB 0x8001 -127.9961 dB 0x8000 -¥ dB (CUR attribute only) In the second form, the Input and Output Channel Number fields are both set to 0xFF. The parameter block contains a list of settings for an attribute of all programmable Mixer Controls in the Mixer Unit. Table 5-9 Second Form of the Mixer Control Parameter Block wLength (Number of programmable Controls NrPr)*2 Offset Field Size Value Description 0 wMixer(1) 2 Number The setting for the attribute of the first programmable Mixer Control. … … … … … (NrPr-1)*2 wMixer(NrPr) 2 Number The setting for the attribute of the last programmable Mixer Control. In the third form, the Input and Output Channel Number fields are both set to 0x00. The parameter block contains a list of settings for an attribute of all the Mixer Controls in the Mixer Unit. Table 5-10 Third Form of the Mixer Control Parameter Block wLength (Number of Controls NrCo)*2 Offset Field Size Value Description 0 wMixer(1) 2 Number The setting for the attribute of the first Mixer Control. … … … … … (NrCo-1)*2 wMixer(NrCo) 2 Number The mixer setting for the attribute of the last Mixer Control. USB Device Class Definition for Audio Devices Release 1.0 March 18, 1998 73 5.2.2.3 Selector Unit Control Requests The following paragraphs describe the Set and Get Selector Unit Control requests. 5.2.2.3.1 Set Selector Unit Control Request This request is used to set an attribute of a Selector Control inside a Selector Unit of the audio function. Table 5-11 Set Selector Unit Control Request Values bmRequest Type bRequest wValue wIndex wLength Data 00100001B SET_CUR SET_MIN SET_MAX SET_RES Zero Selector Unit ID and Interface Length of parameter block Parameter block The bRequest field indicates which attribute the request is manipulating. The MIN, MAX, and RES attributes are usually not supported for the Set request. The wValue field is not used and must be set to zero (Because the Selector Unit only contains a single Control, there is no need for a Control Selector). For a description of the parameter block for the Set Selector Unit Control request, see Section 5.2.2.3.3, “Selector Control.” 5.2.2.3.2 Get Selector Unit Control Request This request returns the attribute setting of the Selector Control inside a Selector Unit of the audio function. Table 5-12 Get Selector Unit Control Request Values bmRequest Type bRequest wValue wIndex wLength Data 10100001B GET_CUR GET_MIN GET_MAX GET_RES Zero Selector Unit ID and Interface Length of parameter block Parameter block The bRequest field indicates which attribute the request is reading. The RES attribute is usually not supported and should return one if implemented. The wValue field is not used and must be set to zero. For a description of the parameter block for the Get Selector Unit Control request, see Section 5.2.2.3.3, “Selector Control.” 5.2.2.3.3 Selector Control A Selector Unit represents a multi-channel source selector, capable of selecting between a number of identically configured audio channel clusters. The valid range for the CUR, MIN, and MAX attributes is from one up to the number of Input Pins of the Selector Unit. This value can be found in the bNrInPins field of the Selector Unit descriptor. The RES attribute can only have a value of one. The Selector Control honors the request to the best of its abilities. It may round the bSelector attribute value to its closest USB Device Class Definition for Audio Devices Release 1.0 March 18, 1998 74 available setting. It will report this rounded setting when queried during a Get Selector Unit Control request. Table 5-13 Selector Control Parameter Block wLength 1 Offset Field Size Value Description 0 bSelector 1 Number The setting for the attribute of the Selector Control. 5.2.2.4 Feature Unit Control Requests The following paragraphs describe the Set and Get Feature Unit Control requests. These Feature Unit Control requests can have two forms. The first form must be supported while the second form can be optionally implemented. 5.2.2.4.1 Set Feature Unit Control Request This request is used to set an attribute of an audio Control inside a Feature Unit of the audio function. Table 5-14 Set Feature Unit Control Request Values bmRequest Type bRequest wValue wIndex wLength Data 00100001B SET_CUR SET_MIN SET_MAX SET_RES CS and CN Feature Unit ID and Interface Length of parameter block Parameter block The bRequest field indicates which attribute the request is manipulating. The MIN, MAX, and RES attributes are usually not supported for the Set request. Further details on which attributes are supported for which Controls can be found in Section 5.2.2.4.3, “Feature Unit Controls.” The wValue field specifies the Control Selector (CS) in the high byte and the Channel Number (CN) in the low byte. The Control Selector indicates which type of Control this request is manipulating. (Volume, Mute, etc.) The Channel Number (CN) indicates which logical channel of the cluster is to be influenced. If the request specifies an unknown or unsupported CS or CN to that Unit, the control pipe must indicate a stall. A special case arises when the Channel Number is set to 0xFF. Then a single Set Feature Unit Control request can be used to set an attribute of all available Controls of a certain type (indicated by the CS) within the Unit. The number of parameters passed in the parameter block must exactly match the number of available Controls in the Unit (as indicated by the number of bits set in the bmaProps() array for a certain Control). If this is not the case, the control pipe must indicate a stall. The first parameter in the parameter block is assigned to the attribute of the first available Control, i.e. the one with the lowest Channel Number (including Channel Number 0, the master channel). The above description is referred to as the second form of the Set Feature Unit Control request. For a description of the parameter blocks for the different Controls that can be addressed through the Set Feature Unit Control request, see Section 5.2.2.4.3, “Feature Unit Controls.” USB Device Class Definition for Audio Devices Release 1.0 March 18, 1998 75 5.2.2.4.2 Get Feature Unit Control Request This request returns the attribute setting of a specific audio Control inside a Feature Unit of the audio function. Table 5-15 Get Feature Unit Control Request Values bmRequest Type bRequest wValue wIndex wLength Data 10100001B GET_CUR GET_MIN GET_MAX GET_RES CS and CN Feature Unit ID and Interface Length of parameter block Parameter block The bRequest field indicates which attribute the request is reading. The wValue field specifies the Control Selector (CS) in the high byte and the Channel Number (CN) in the low byte. The Control Selector indicates which type of Control this request is addressing. (Volume, Mute, etc.) The Channel Number (CN) indicates which logical channel of the cluster is to be addressed. If the request specifies an unknown or unsupported CS or CN to that Unit, the control pipe must indicate a stall. A special case arises when the Channel Number is set to 0xFF. Then a single Get Feature Unit Control request can be used to retrieve the settings of an attribute of all available Controls of a certain type (indicated by the CS) within the Unit. The first parameter returned in the parameter block corresponds to the attribute of the first available Control, i.e. the one with the lowest Channel Number (including Channel Number 0, the master channel). The above description is referred to as the second form of the Get Feature Unit Control request. For a description of the parameter blocks for the different Controls that can be addressed through the Get Feature Unit Control request, see Section 5.2.2.4.3, “Feature Unit Controls.” 5.2.2.4.3 Feature Unit Controls The following paragraphs present a detailed description of all possible Controls a Feature Unit can incorporate. For each Control, the layout of the parameter block together with the appropriate Control Selector is listed for all forms of the Get/Set Feature Unit Control request. The Control Selector codes are defined in Section A.10.2, “Feature Unit Control Selectors.” 5.2.2.4.3.1 Mute Control The Mute Control is one of the building blocks of a Feature Unit. A Mute Control can have only the current setting attribute (CUR). The position of a Mute Control CUR attribute can be either TRUE or FALSE. In the first form of the request, a particular Mute Control within a Feature Unit is addressed through the Unit ID and Channel Number fields of the Set/Get Feature Unit Control request. The valid range for the Channel Number field is from zero (the ‘master’ channel) up to the number of logical channels in the audio channel cluster. Table 5-16 First Form of the Mute Control Parameter Block Control Selector MUTE_CONTROL wLength 1 1 - 6 - 11 - 16 - 21 - 26 - 31 - 36 - 41 - 46 - 51 - 56 - 61 - 66 - 71 - 76 - 81 - 86 - 91 - 96 - 101 - 106 - 111 - 116 - 121 - 126 ここを編集
https://w.atwiki.jp/usb_audio/pages/38.html
原文:Audio Device Document 1.0(PDF) USB Device Class Definition for Audio Devices Release 1.0 March 18, 1998 46 Offset Field Size Value Description 7 baSourceID(1) 1 Number ID of the Unit or Terminal to which the first Input Pin of this Processing Unit is connected. … … … … … 7+(p-1) baSourceID (p) 1 Number ID of the Unit or Terminal to which the last Input Pin of this Processing Unit is connected. 7+p bNrChannels 1 Number Number of logical output channels in the audio channel cluster of the Processing Unit. 7+p+1 wChannelConfig 2 Bitmap Describes the spatial location of the logical channels in the audio channel cluster of the Processing Unit. 7+p+3 iChannelNames 1 Index Index of a string descriptor that describes the name of the first logical channel in the audio channel cluster of the Processing Unit. 11+p bControlSize 1 Number Size in bytes of the bmControls field n 12+p bmControls n Bitmap A bit set to 1 indicates that the mentioned Control is supported D0 Enable Processing.D1..(n*8-1) process-specific allocation. 12+p +n iProcessing 1 Index Index of a string descriptor, describing this Processing Unit. 13+p +n Process-specific x NA A process-specific descriptor is appended to the common descriptor. See the following paragraphs. 4.3.2.6.1 Up/Down-mix Processing Unit Descriptor The wProcessType field of the common Processing Unit descriptor contains the value UP/DOWNMIX_PROCESS. (See Appendix A.7, “Processing Unit Process Types”) The Up/Down-mix Processing Unit has a single Input Pin. Therefore, the bNrInputs field must contain the value 1. The bNrChannels, wChannelConfig, and iChannelNames fields together constitute the output cluster descriptor of the Up/Down-mix Processing Unit. It describes which logical channels are physically present at the output of the Processing Unit. Depending upon the selected operating mode, one or more channels may be unused. The bmControls field is a bitmap, indicating the availability of certain audio Controls in the Up/Downmix Processing Unit. For future expandability, the number of bytes occupied by the bmControls field is indicated in the bControlSize field. Bit D0 of the bmControls field represents the Enable Processing Control. The Mode Select Control (D1) is used to change the behavior of the Processing Unit by selecting different modes of operation. USB Device Class Definition for Audio Devices Release 1.0 March 18, 1998 47 The process-specific descriptor of the Up/Down-mix Processing Unit describes the supported modes of operation of the Processing Unit. Selecting a mode of operation is done by issuing the Set Mode Request. The number of supported modes (m) is contained in the bNrModes field. This field is followed by an array of mode fields, waModes(). The index i into this array is one-based and directly related to the number of the mode described by entry waModes(i). It is the value i that must be used as a parameter for the Set Mode request to select the mode i. The bit allocations in the waModes() fields are very similar to those of the wChannelConfig field in a cluster descriptor (see Section 3.7.2.3, “Audio Channel Cluster Format”) i.e. a bit set in the waModes(i) field indicates that for mode i, the Up/Down-mix Processing Unit produces meaningful audio data for the logical channel that is associated with the position of the set bit. Logical channels that are present in the output cluster but are not used in a certain mode are considered to be inactive and at most produce silence in that mode. Each waModes(i) field can only contain set bits for those logical channels that are present in the output channel cluster. In other words, all waModes() fields can only contain a subset of the wChannelConfig field of the cluster descriptor of the Unit. Furthermore, logical channels that have a non-predefined spatial position can not be marked as active in the waModes() fields. It is therefore assumed by default that they are active. The following table outlines the combination of the common and process-specific Up/Down-mix Processing Unit descriptors. Table 4-9 Up/Down-mix Processing Unit Descriptor Offset Field Size Value Description 0 bLength 1 Number Size of this descriptor, in bytes 15+n+2*m 1 bDescriptorType 1 Constant CS_INTERFACE descriptor type. 2 bDescriptorSubtype 1 Constant PROCESSING_UNIT descriptor subtype. 3 bUnitID 1 Number Constant uniquely identifying the Unit within the audio function. This value is used in all requests to address this Unit. 4 wProcessType 2 Constant UP/DOWNMIX_PROCESS process type. 6 bNrInPins 1 Number Number of Input Pins of this Unit 1 7 bSourceID 1 Number ID of the Unit or Terminal to which the Input Pin of this Processing Unit is connected. 8 bNrChannels 1 Number Number of logical output channels in the output channel cluster of the Processing Unit. 9 wChannelConfig 2 Bitmap Describes the spatial location of the logical channels in the output channel cluster of the Processing Unit. 11 iChannelNames 1 Index Index of a string descriptor, describing the name of the first logical channel in the Processing Unit’s output channel cluster. USB Device Class Definition for Audio Devices Release 1.0 March 18, 1998 48 Offset Field Size Value Description 12 bControlSize 1 Number Size, in bytes, of the bmControls field n 13 bmControls n Bitmap A bit set to 1 indicates that the mentioned Control is supported D0 Enable Processing.D1 Mode Select.D2..(n*8-1) Reserved 13+n iProcessing 1 Index Index of a string descriptor, describing this Processing Unit. 14+n bNrModes 1 Number Number of modes, supported by this Processing Unit m 15+n waModes(1) 2 Bitmap Describes the active logical channels in mode 1. … … … … … 15+n+(m-1)*2 waModes(m) 2 Bitmap Describes active the logical channels in mode m. 4.3.2.6.2 Dolby Prologic Processing Unit Descriptor The wProcessType field of the common Processing Unit descriptor contains the value DOLBY_PROLOGIC_PROCESS. (See Appendix A.7, “Processing Unit Process Types”) The Dolby Prologic Processing Unit has a single Input Pin. Therefore, the bNrInputs field must contain the value 1. The bNrChannels, wChannelConfig, and iChannelNames fields together constitute the output cluster descriptor of the Dolby Prologic Processing Unit. It describes which logical channels are physically present at the output of the Processing Unit. Depending upon the selected operating mode, one or more channels may be unused. Bit D0 of the $b(){bmControls} field represents the Enable Processing Control. The Mode Select Control (D1) is used to change the behavior of the Processing Unit by selecting different modes of operation. Although the input cluster may contain a number of logical channels, the Dolby Prologic Processing Unit only uses Left and Right logical input channels as input for the decoding process. Obviously, these two logical channels must be present in the input cluster for the Unit to operate properly. All other logical channels are discarded. The output cluster may contain logical channels other than Left, Right, Center, and/or Surround (these must be present) to facilitate connectivity within the audio function. Channels that are present in the output cluster but do not participate in the chosen mode of operation must be muted. The process-specific descriptor of the Dolby Prologic Processing Unit describes the supported modes of operation of the Processing Unit. The number of supported modes (m) is contained in the bNrModes field. This field is followed by an array of mode fields, waModes(). The bit allocations in the waModes() fields are very similar to those of the wChannelConfig field in a cluster descriptor (see Section 3.7.2.3, “Audio Channel Cluster Format”) i.e., a bit set in the waModes(i) field indicates that for mode i, the Dolby Prologic Processing Unit produces meaningful audio data for the logical channel that is associated with the position of the set bit. The Dolby Prologic Processing Unit supports, at most, the following three different modes USB Device Class Definition for Audio Devices Release 1.0 March 18, 1998 49 · Left, Right, Center channel decoding waModes() = 0x0007 · Left, Right, Surround channel decoding waModes() = 0x0103 · Left, Right, Center, Surround decoding waModes() = 0x0107 The wChannelConfig field of the cluster descriptor of the Unit must at least contain the union of all bits set for all the supported modes. The following table outlines the combination of the common and process-specific Dolby Prologic Processing Unit descriptors. It is identical to the Up/Down-mix Processing Unit descriptor except for some field values. It is repeated here for clarity. Table 4-10 Dolby Prologic Processing Unit Descriptor Offset Field Size Value Description 0 bLength 1 Number Size of this descriptor, in bytes 15+n+2*m 1 bDescriptorType 1 Constant CS_INTERFACE descriptor type. 2 bDescriptorSubtype 1 Constant PROCESSING_UNIT descriptor subtype. 3 bUnitID 1 Number Constant uniquely identifying the Unit within the audio function. This value is used in all requests to address this Unit. 4 wProcessType 2 Constant DOLBY_PROLOGIC_PROCESS process type. 6 bNrInPins 1 Number Number of Input Pins of this Unit 1 7 bSourceID 1 Number ID of the Unit or Terminal to which the Input Pin of this Processing Unit is connected. 8 bNrChannels 1 Number Number of logical output channels in the output channel cluster of the Processing Unit. 9 wChannelConfig 2 Bitmap Describes the spatial location of the logical channels in the Processing Unit’s output channel cluster. At least Left, Right, Center and/or Surround must be set. 11 iChannelNames 1 Index Index of a string descriptor, describing the name of the first logical channel in the Processing Unit’s output channel cluster. 12 bControlSize 1 Number Size, in bytes, of the bmControls field n 13 bmControls n Bitmap A bit set to 1 indicates that the mentioned Control is supported D0 Enable Processing.D1 Mode Select.D2..(n*8-1) Reserved USB Device Class Definition for Audio Devices Release 1.0 March 18, 1998 50 Offset Field Size Value Description 13+n iProcessing 1 Index Index of a string descriptor, describing this Processing Unit. 14+n bNrModes 1 Number Number of modes, supported by this Processing Unit mA maximum of 3 different modes is possible. 15+n waModes(1) 2 Bitmap Describes the active logical channels in mode 1. … … … … … 15+n+(m-1)*2 waModes(m) 2 Bitmap Describes active the logical channels in mode m. 4.3.2.6.3 3D-Stereo Extender Processing Unit Descriptor The wProcessType field of the common Processing Unit descriptor contains the value 3D-STEREO_EXTENDER_PROCESS. (See Section A.7, “Processing Unit Process Types”) The 3D-Stereo Extender Processing Unit has a single Input Pin. Therefore, the bNrInputs field must contain the value 1. The bNrChannels, wChannelConfig and iChannelNames fields together constitute the output cluster descriptor of the 3D-Stereo Extender Processing Unit. It describes which logical channels are physically present at the output of the Processing Unit. Bit D0 of the bmControls field represents the Enable Processing Control. Bit D1 indicates the availability of the Spaciousness Control. Although the input cluster may contain a number of logical channels, the 3D-Stereo Extender Processing Unit only uses Left and Right logical input channels as input for the extension process. Obviously, these two logical channels must be present in the input cluster for the Unit to operate properly. All other logical channels are discarded by the process. The output cluster may contain logical channels other than Left and Right (these must be present) to facilitate connectivity within the audio function. Channels that are present in the output cluster but not in the input cluster must be muted. Channels other than Left and Right that are present in both input and output cluster can be passed unaltered from input to output. Channels only present in the input cluster are absorbed by the Processing Unit. There is no process-specific descriptor for the 3D-Stereo Extender Processing Unit. The following table outlines the 3D-Stereo Extender Processing Unit descriptor. It is identical to the common Processing Unit descriptor, except for some field values. It is repeated here for clarity. Table 4-11 3D-Stereo Extender Processing Unit Descriptor Offset Field Size Value Description 0 bLength 1 Number Size of this descriptor, in bytes 14+n 1 bDescriptorType 1 Constant CS_INTERFACE descriptor type. 2 bDescriptorSubtype 1 Constant PROCESSING_UNIT descriptor subtype. 1 - 6 - 11 - 16 - 21 - 26 - 31 - 36 - 41 - 46 - 51 - 56 - 61 - 66 - 71 - 76 - 81 - 86 - 91 - 96 - 101 - 106 - 111 - 116 - 121 - 126 ここを編集
https://w.atwiki.jp/usb_audio/pages/54.html
原文:Audio Device Document 1.0(PDF) USB Device Class Definition for Audio Devices Release 1.0 March 18, 1998 126 Offset Field Size Value Description 5 bInterfaceClass 1 0x01 AUDIO. 6 bInterfaceSubclass 1 0x02 AUDIO_STREAMING. 7 bInterfaceProtocol 1 0x00 Unused. 8 iInterface 1 0x00 Unused. C.3.5.2 Operational Alternate Setting 1 C.3.5.2.1.1 Standard AS Interface Descriptor Table C-21 USB Telephone Standard AS Interface Descriptor Offset Field Size Value Description 0 bLength 1 0x09 Size of this descriptor, in bytes. 1 bDescriptorType 1 0x04 INTERFACE descriptor. 2 bInterfaceNumber 1 0x01 Index of this interface. 3 bAlternateSetting 1 0x01 Index of this setting. 4 bNumEndpoints 1 0x01 1 endpoint. 5 bInterfaceClass 1 0x01 AUDIO. 6 bInterfaceSubclass 1 0x02 AUDIO_STREAMING. 7 bInterfaceProtocol 1 0x00 Unused. 8 iInterface 1 0x00 Unused. C.3.5.2.1.2 Class-specific AS Interface Descriptor Table C-22 USB Telephone Class-specific AS Interface Descriptor Offset Field Size Value Description 0 bLength 1 0x07 Size of this descriptor, in bytes. 1 bDescriptorType 1 0x24 CS_INTERFACE descriptor. 2 bDescriptorSubtype 1 0x01 GENERAL. 3 bTerminalLink 1 0x06 USB Streaming Out Terminal 4 bDelay 1 0x01 Interface delay. 5 wFormatTag 2 0x0001 PCM format. USB Device Class Definition for Audio Devices Release 1.0 March 18, 1998 127 C.3.5.2.1.3 Type I format type descriptor Table C-23 USB Telephone Type I format type descriptor Offset Field Size Value Description 0 bLength 1 0x0B Size of this descriptor, in bytes. 1 bDescriptorType 1 0x24 CS_INTERFACE. 2 bDescriptorSubtype 1 0x02 FORMAT_TYPE. 3 bFormatType 1 0x01 FORMAT_TYPE_I. 4 bNrChannels 1 0x01 One channel. 5 bSubFrameSize 1 0x02 Two bytes per slot. 6 bBitResolution 1 0x10 16 bits. 7 bSamFreqType 1 0x01 One sampling frequency. 8 tSamFreq 3 0x01F40 8000Hz is the sampling frequency. C.3.5.2.1.4 Standard Endpoint descriptor Table C-24 USB Telephone Standard Endpoint descriptor Offset Field Size Value Description 0 bLength 1 0x09 Size of this descriptor, in bytes. 1 bDescriptorType 1 0x05 ENDPOINT descriptor. 2 bEndpointAddress 1 0x81 IN Endpoint 1. 3 bmAttributes 1 0x0B Isochronous transfer type, synchronous synchronization type. 4 wMaxPacketSize 2 0x0010 16 bytes (8 two-byte samples). 6 bInterval 1 0x01 One packet every frame. 7 bRefresh 1 0x00 Unused 8 bSynchAddress 1 0x00 Unused. C.3.5.2.1.5 Class-specific Isochronous Audio Data Endpoint Descriptor Table C-25 USB Telephone Class-specific Isoc. Audio Data Endpoint Descriptor Offset Field Size Value Description 0 bLength 1 0x07 Size of this descriptor, in bytes. USB Device Class Definition for Audio Devices Release 1.0 March 18, 1998 128 Offset Field Size Value Description 1 bDescriptorType 1 0x25 CS_ENDPOINT. 2 bDescriptorSubtype 1 0x01 GENERAL. 3 bmAttributes 1 0x00 No sampling frequency control, no pitch control. 4 bLockDelayUnits 1 0x00 Unused. 5 wLockDelay 2 0x0000 Unused. C.3.6 String Descriptors There are two string descriptors available. The first string descriptor contains the Manufacturer information and the second one contains Product related information. The following sections present an example of how these descriptors could look like. C.3.6.1 Manufacturer String Descriptor Table C-26 USB Telephone Manufacturer String Descriptor Offset Field Size Value Description 0 bLength 1 0x18 Size of this descriptor, in bytes. 1 bDescriptorType 1 0x03 STRING descriptor. 2 bString 1 0x0054 0x0048 0x0045 0x0020 0x0043 0x004F 0x004D 0x0050 0x0041 0x004E 0x0059 “THE COMPANY” C.3.6.2 Product String Descriptor Table C-27 USB Telephone Product String Descriptor Offset Field Size Value Description 0 bLength 1 0x16 Size of this descriptor, in bytes. 1 bDescriptorType 1 0x03 STRING descriptor. 2 bString 1 0x0054 0x0065 0x006C 0x0065 “Telephone” USB Device Class Definition for Audio Devices Release 1.0 March 18, 1998 129 Offset Field Size Value Description 0x0070 0x0068 0x006F 0x006E 0x0065 C.4 Requests C.4.1 Standard requests All standard Requests, necessary to operate the device are supported. The next section presents the Set Interface Request as an example. C.4.1.1 Set interface This request selects the alternate setting on interface 1 or 2 to control bandwidth allocation. Table 5-28 Set Interface Request Values Offset Field Size Value Description 0 bmRequestType 1 0x01 D7 0 = Host to Device. D6..5 00 = Standard Request. D4..0 00001 = Recipient is interface. 1 bRequest 1 0x0B SET_INTERFACE. 2 wValue 2 0x0000 or 0x0001 0x00 is zero bandwidth alternate setting. 0x01 is normal isochronous operation. 4 wIndex 2 0x0001 or 0x0002 Interface number of one of the AudioStreaming interfaces. 6 wLength 2 0x0000 No Parameter Block C.4.2 Class-specific Requests The only class-specific Request supported is the Set/Get Selector Control Request. The following sections describe these requests in detail. C.4.2.1 Set Selector Unit Control Request This Request sets the Selector Unit Control to the desired value. Table C-29 Set Selector Unit Control Request Values Offset Field Size Value Description 0 bmRequestType 1 0x21 D7 0 = Host to Device. D6..5 01 = Class Request. USB Device Class Definition for Audio Devices Release 1.0 March 18, 1998 130 Offset Field Size Value Description D4..0 00001 = Recipient is interface. 1 bRequest 1 0x01 SET_CUR. 2 wValue 2 0x0000 Must be zero. 4 wIndex 2 0x0000 Interface number of the AudioControl interface. 6 wLength 2 0x0001 Parameter Block Length The one-byte Parameter Block contains the new bSelector value for the Selector Control. Since all the Selector Units have two Input Pins, the valid range for bSelector is [1,2]. C.4.2.2 Get Selector Unit Control Request This Request retrieves the Selector Unit Control parameter. Table C-30 Get Selector Unit Control Request Values Offset Field Size Value Description 0 bmRequestType 1 0xA1 D7 1 = Device to Host. D6..5 01 = Class Request. D4..0 00001 = Recipient is interface. 1 bRequest 1 0x81 0x82 0x83 0x84 GET_CUR. GET_MIN. GET_MAX. GET_RES. 2 wValue 2 0x0000 Must be zero. 4 wIndex 2 0x0000 Interface number of the AudioControl interface. 6 wLength 2 0x0001 Parameter Block Length The actual setting of the Selector Control is returned in the one-byte Parameter Block. Since all the Selector Units have two Input Pins, the valid range for the returned value is [1,2]. 1 - 6 - 11 - 16 - 21 - 26 - 31 - 36 - 41 - 46 - 51 - 56 - 61 - 66 - 71 - 76 - 81 - 86 - 91 - 96 - 101 - 106 - 111 - 116 - 121 - 126 ここを編集
https://w.atwiki.jp/usb_audio/pages/17.html
原文:Audio Terminal Types 1.0(PDF) USB Device Class Definition for Terminal Types Release 1.0 March 18, 1998 i Universal Serial Bus Device Class Definition for Terminal Types Release 1.0 March 18, 1998 USB Device Class Definition for Terminal Types Release 1.0 March 18, 1998 ii Scope of This Release This document is the 1.0 release of this device class definition. Contributors Gal Ashour IBM Corporation Billy Brackenridge Microsoft Corporation Oren Tirosh Altec Lansing Craig Todd Dolby Laboratories Remy Zimmermann Logitech Geert Knapen Philips ITCL Interleuvenlaan 74-76 B-3001 Leuven-Heverlee BELGIUM Phone +32 16 390 734 Fax +32 16 390 600 E-mail Geert.Knapen(at)innet.be Revision History Revision Date Filename Author Description 0.1 Dec. 1, 96 Termt01.doc Oren Tirosh Initial version 0.2 Jan. 1, 97 Termt02.doc Geert Knapen Corrected typos. Restructured the divisions. 0.3 Mar. 1, 97 Termt03.doc Geert Knapen Adapted template and contents to correspond with core document. 0.9rc Apr. 1, 97 Termt09rc.doc Geert Knapen Minor style adjustments. Added Synthesizer Terminal type. 0.9 May 1, 97 Termt09.doc Geert Knapen No changes. 0.9CE Sep 1, 97 Termt09CE.doc Geert Knapen Copy-edited for publication on the web. 1.0RC Mar 1, 98 Termt10RC.doc Geert Knapen Cleaned up the formatting. 1.0 Mar 18, 98 Termt10.doc Geert Knapen Changed all references to 1.0 USB Device Class Definition for Terminal Types Release 1.0 March 18, 1998 iii Copyright © 1997, USB Implementers ForumAll rights reserved. INTELLECTUAL PROPERTY DISCLAIMER THIS SPECIFICATION IS PROVIDED “AS IS” WITH NO WARRANTIES WHATSOEVER INCLUDING ANY WARRANTY OF MERCHANTABILITY, FITNESS FOR ANY PARTICULAR PURPOSE, OR ANY WARRANTY OTHERWISE ARISING OUT OF ANY PROPOSAL, SPECIFICATION, OR SAMPLE. A LICENSE IS HEREBY GRANTED TO REPRODUCE AND DISTRIBUTE THIS SPECIFICATION FOR INTERNAL USE ONLY. NO OTHER LICENSE, EXPRESS OR IMPLIED, BY ESTOPPEL OR OTHERWISE, TO ANY OTHER INTELLECTUAL PROPERTY RIGHTS IS GRANTED OR INTENDED HEREBY. AUTHORS OF THIS SPECIFICATION DISCLAIM ALL LIABILITY, INCLUDING LIABILITY FOR INFRINGEMENT OF PROPRIETARY RIGHTS, RELATING TO IMPLEMENTATION OF INFORMATION IN THIS SPECIFICATION. AUTHORS OF THIS SPECIFICATION ALSO DO NOT WARRANT OR REPRESENT THAT SUCH IMPLEMENTATION(S) WILL NOT INFRINGE SUCH RIGHTS. Dolby™, AC-3™, Pro Logic™ and Dolby Surround™ are trademarks of Dolby Laboratories, Inc. All other product names are trademarks, registered trademarks, or service marks of their respective owners. Please send comments via electronic mail to techsup(atusb.org) USB Device Class Definition for Terminal Types Release 1.0 March 18, 1998 iv Table of Contents Scope of This Release.........................................................................................................ii Contributors........................................................................................................................ii Revision History ..................................................................................................................ii Table of Contents ...............................................................................................................iv List of Tables .......................................................................................................................v 1 Introduction ..................................................................................................................6 1.1 Scope......................................................................................................................6 1.2 Related Documents .................................................................................................6 1.3 Terms and Abbreviations.........................................................................................6 2 Terminal Types.............................................................................................................7 2.1 USB Terminal Types................................................................................................7 2.2 Input Terminal Types ...............................................................................................7 2.3 Output Terminal Types ............................................................................................8 2.4 Bi-directional Terminal Types ..................................................................................8 2.5 Telephony Terminal Types ......................................................................................9 2.6 External Terminal Types..........................................................................................9 2.7 Embedded Function Terminal Types .....................................................................10 3 Adding New Terminal Types......................................................................................12 USB Device Class Definition for Terminal Types Release 1.0 March 18, 1998 v List of Tables Table 2-1 USB Terminal Types ..........................................................................................7 Table 2-2 Input Terminal Types.........................................................................................7 Table 2-3 Output Terminal Types......................................................................................8 Table 2-4 Bi-directional Terminal Types ...........................................................................9 Table 2-5 Telephony Terminal Types................................................................................9 Table 2-6 External Terminal Types..................................................................................10 Table 2-7 Embedded Terminal Types..............................................................................10 1 - 6 - 11 ここを編集
https://w.atwiki.jp/usb_audio/pages/39.html
原文:Audio Device Document 1.0(PDF) USB Device Class Definition for Audio Devices Release 1.0 March 18, 1998 51 Offset Field Size Value Description 3 bUnitID 1 Number Constant uniquely identifying the Unit within the audio function. This value is used in all requests to address this Unit. 4 wProcessType 2 Constant 3D-STEREO_EXTENDER_PROCESS process type. 6 bNrInPins 1 Number Number of Input Pins of this Unit 1 7 bSourceID 1 Number ID of the Unit or Terminal to which the Input Pin of this Processing Unit is connected. 8 bNrChannels 1 Number Number of logical output channels in the Processing Unit’s output channel cluster. 9 wChannelConfig 2 Bitmap Describes the spatial location of the logical channels in the output channel cluster of the Processing Unit. At least Left and Right must be set. 11 iChannelNames 1 Index Index of a string descriptor, describing the name of the first logical channel in the Processing Unit’s output channel cluster. 12 bControlSize 1 Number Size, in bytes, of the bmControls field n 13 bmControls n Bitmap A bit set to 1 indicates that the mentioned Control is supported D0 Enable Processing. D1 Spaciousness. D2..(n*8-1) Reserved 13+n iProcessing 1 Index Index of a string descriptor, describing this Processing Unit. 4.3.2.6.4 Reverberation Processing Unit Descriptor The wProcessType field of the common Processing Unit descriptor contains the value REVERBERATION_PROCESS. (See Section A.7, “Processing Unit Process Types”) The Reverberation Processing Unit has a single Input Pin. Therefore, the bNrInputs field must contain the value 1. The bNrChannels, wChannelConfig and iChannelNames fields together constitute the output cluster descriptor of the Reverberation Processing Unit. It describes which logical channels are physically present at the output of the Processing Unit. In most cases, this will be identical to the configuration of the input channel cluster. The bmControls field indicates which reverberation-related Controls are effectively implemented in the Reverberation Processing Unit. The following table outlines the Reverberation Processing Unit descriptor. It is identical to the common Processing Unit descriptor, except for some field values. It is repeated here for clarity. USB Device Class Definition for Audio Devices Release 1.0 March 18, 1998 52 Table 4-12 Reverberation Processing Unit Descriptor Offset Field Size Value Description 0 bLength 1 Number Size of this descriptor, in bytes 14+n 1 bDescriptorType 1 Constant CS_INTERFACE descriptor type. 2 bDescriptorSubtype 1 Constant PROCESSING_UNIT descriptor subtype. 3 bUnitID 1 Number Constant uniquely identifying the Unit within the audio function. This value is used in all requests to address this Unit. 4 wProcessType 2 Constant REVERBERATION_PROCESS process type. 6 bNrInPins 1 Number Number of Input Pins of this Unit 1 7 bSourceID 1 Number ID of the Unit or Terminal to which the Input Pin of this Processing Unit is connected. 8 bNrChannels 1 Number Number of logical output channels in the output channel cluster of the Processing Unit. 9 wChannelConfig 2 Bitmap Describes the spatial location of the logical channels in the output channel cluster of the Processing Unit. 11 iChannelNames 1 Index Index of a string descriptor, describing the name of the first logical channel in the output channel cluster Processing Unit. 12 bControlSize 1 Number Size, in bytes, of the bmControls field n 13 bmControls n Bitmap A bit set to 1 indicates that the mentioned Control is supported D0 Enable Processing. D1 Reverb Type. D2 Reverb Level. D3 Reverb Time. D4 Reverb Delay Feedback. D5..(n*8-1) Reserved. 13+n iProcessing 1 Index Index of a string descriptor, describing this Processing Unit. 4.3.2.6.5 Chorus Processing Unit Descriptor The wProcessType field of the common Processing Unit descriptor contains the value CHORUS_PROCESS. (See Section A.7, “Processing Unit Process Types”) The Chorus Processing Unit has a single Input Pin. Therefore, the bNrInputs field must contain the value 1. The bNrChannels, wChannelConfig, and iChannelNames fields together constitute the output cluster USB Device Class Definition for Audio Devices Release 1.0 March 18, 1998 53 descriptor of the Chorus Processing Unit. It describes which logical channels are physically present at the output of the Processing Unit. In most cases, this will be identical to the configuration of the input channel cluster. The bmControls field indicates which chorus-related Controls are effectively implemented in the Chorus Processing Unit. The following table outlines the Chorus Processing Unit descriptor. It is identical to the common Processing Unit descriptor, except for some field values. It is repeated here for clarity. Table 4-13 Chorus Processing Unit Descriptor Offset Field Size Value Description 0 bLength 1 Number Size of this descriptor, in bytes 14+n 1 bDescriptorType 1 Constant CS_INTERFACE descriptor type. 2 bDescriptorSubtype 1 Constant PROCESSING_UNIT descriptor subtype. 3 bUnitID 1 Number Constant uniquely identifying the Unit within the audio function. This value is used in all requests to address this Unit. 4 wProcessType 2 Constant CHORUS_PROCESS process type. 6 bNrInPins 1 Number Number of Input Pins of this Unit 1 7 bSourceID 1 Number ID of the Unit or Terminal to which the Input Pin of this Processing Unit is connected. 8 bNrChannels 1 Number Number of logical output channels in the output channel cluster of the Processing Unit. 9 wChannelConfig 2 Bitmap Describes the spatial location of the logical channels in the output channel cluster of the Processing Unit. 11 iChannelNames 1 Index Index of a string descriptor, describing the name of the first logical channel in the output channel cluster of the Processing Unit. 12 bControlSize 1 Number Size, in bytes, of the bmControls field n 13 bmControls n Bitmap A bit set to 1 indicates that the mentioned Control is supported D0 Enable Processing. D1 Chorus Level. D2 Chorus Modulation Rate. D3 Chorus Modulation Depth. D4..(n*8-1) Reserved USB Device Class Definition for Audio Devices Release 1.0 March 18, 1998 54 Offset Field Size Value Description 13+n iProcessing 1 Index Index of a string descriptor, describing this Processing Unit. 4.3.2.6.6 Dynamic Range Compressor Processing Unit Descriptor The wProcessType field of the common Processing Unit descriptor contains the value DYN_RANGE_COMP_PROCESS. (See Section A.7, “Processing Unit Process Types”) The Dynamic Range Compressor Processing Unit has a single Input Pin. Therefore, the bNrInputs field must contain the value 1. The bNrChannels, wChannelConfig, and iChannelNames fields together constitute the output cluster descriptor of the Dynamic Range Compressor Processing Unit. It describes which logical channels are physically present at the output of the Processing Unit. In most cases, this will be identical to the configuration of the input channel cluster. The bmControls field indicates which Controls are effectively implemented in the Dynamic Range Compressor Processing Unit. The following table outlines the Dynamic Range Compressor Processing Unit descriptor. It is identical to the common Processing Unit descriptor, except for some field values. It is repeated here for clarity. Table 4-14 Dynamic Range Compressor Processing Unit Descriptor Offset Field Size Value Description 0 bLength 1 Number Size of this descriptor, in bytes 14+n 1 bDescriptorType 1 Constant CS_INTERFACE descriptor type. 2 bDescriptorSubtype 1 Constant PROCESSING_UNIT descriptor subtype. 3 bUnitID 1 Number Constant uniquely identifying the Unit within the audio function. This value is used in all requests to address this Unit. 4 wProcessType 2 Constant DYN_RANGE_COMP_PROCESS process type. 6 bNrInPins 1 Number Number of Input Pins of this Unit 1 7 bSourceID 1 Number ID of the Unit or Terminal to which the Input Pin of this Processing Unit is connected. 8 bNrChannels 1 Number Number of logical output channels in the output channel cluster of the Processing Unit. 9 wChannelConfig 2 Bitmap Describes the spatial location of the logical channels in the output channel cluster of the Processing Unit. USB Device Class Definition for Audio Devices Release 1.0 March 18, 1998 55 Offset Field Size Value Description 11 iChannelNames 1 Index Index of a string descriptor, describing the name of the first logical channel in the output channel cluster of the Processing Unit. 12 bControlSize 1 Number Size, in bytes, of the bmControls field n 13 bmControls n Bitmap A bit set to 1 indicates that the mentioned Control is supported D0 Enable Processing. D1 Compression Ratio. D2 MaxAmpl. D3 Threshold. D4 Attack time. D5 Release time. D6..(n*8-1) Reserved 13+n iProcessing 1 Index Index of a string descriptor, describing this Processing Unit. 4.3.2.7 Extension Unit Descriptor The Extension Unit is uniquely identified by the value in the bUnitID field of the Extension Unit descriptor (XUD). No other Unit or Terminal within the same alternate setting of the AudioControl interface may have the same ID. This value must be passed in the UnitID field of each request that is directed to the Extension Unit. The Extension Unit descriptor provides minimal information about the Extension Unit for a generic driver at least to notice the presence of vendor-specific components within the audio function. The wExtensionCode field may contain a vendor-specific code that further identifies the Extension Unit. If it is not used, it should be set to zero. The bNrInPins field contains the number of Input Pins (p) of the Extension Unit. The connectivity of the Input Pins is described via the baSourceID() array that contains p elements. The index i into the array is one-based and directly related to the Input Pin numbers. BaSourceID(i) contains the ID of the Unit or Terminal to which Input Pin i is connected. The cluster descriptors that describe the logical channels that enter the Extension Unit are not repeated here. It is up to the Host software to trace the connections ‘upstream’ to locate the cluster descriptors pertaining to the audio channel clusters. Because an Extension Unit can freely redefine the spatial locations of the logical output channels that are contained in its output cluster, there is a need for an output cluster descriptor. The bNrChannels, wChannelConfig, and iChannelNames fields characterize the cluster that leaves the Extension Unit over its single Output Pin (‘downstream’ connection). For a detailed description of the cluster descriptor, see Section 3.7.2.3, “Audio Channel Cluster Format.” The bmControls field is a bitmap, indicating the availability of certain audio Controls in the Extension Unit. For future expandability, the number of bytes occupied by the bmControls field is indicated in the bControlSize field. In general, all Controls are optional, except for the Enable Processing Control. This Control must be supported by every Extension Unit. The Enable Processing Control is used to bypass the entire functionality of the Extension Unit. This Control is mandatory for it allows a generic driver to operate the audio function without further knowledge of the internals of the Extension Unit. (Of course, the additional functionality provided by the 1 - 6 - 11 - 16 - 21 - 26 - 31 - 36 - 41 - 46 - 51 - 56 - 61 - 66 - 71 - 76 - 81 - 86 - 91 - 96 - 101 - 106 - 111 - 116 - 121 - 126 ここを編集
https://w.atwiki.jp/audi80/
@wikiへようこそ ウィキはみんなで気軽にホームページ編集できるツールです。 このページは自由に編集することができます。 メールで送られてきたパスワードを用いてログインすることで、各種変更(サイト名、トップページ、メンバー管理、サイドページ、デザイン、ページ管理、等)することができます まずはこちらをご覧ください。 @wikiの基本操作 用途別のオススメ機能紹介 @wikiの設定/管理 分からないことは? @wiki ご利用ガイド よくある質問 無料で会員登録できるSNS内の@wiki助け合いコミュニティ @wiki更新情報 @wikiへのお問合せフォーム 等をご活用ください @wiki助け合いコミュニティの掲示板スレッド一覧 #atfb_bbs_list その他お勧めサービスについて 大容量1G、PHP/CGI、MySQL、FTPが使える無料ホームページは@PAGES 無料ブログ作成は@WORDをご利用ください 2ch型の無料掲示板は@chsをご利用ください フォーラム型の無料掲示板は@bbをご利用ください お絵かき掲示板は@paintをご利用ください その他の無料掲示板は@bbsをご利用ください 無料ソーシャルプロフィールサービス @flabo(アットフラボ) おすすめ機能 気になるニュースをチェック 関連するブログ一覧を表示 その他にもいろいろな機能満載!! @wikiプラグイン @wiki便利ツール @wiki構文 @wikiプラグイン一覧 まとめサイト作成支援ツール バグ・不具合を見つけたら? 要望がある場合は? お手数ですが、メールでお問い合わせください。
https://w.atwiki.jp/usb_audio/pages/44.html
原文:Audio Device Document 1.0(PDF) USB Device Class Definition for Audio Devices Release 1.0 March 18, 1998 76 Offset Field Size Value Description 0 bMute 1 Bool The setting for the addressed Mute Control’s CUR attribute. Muted when TRUE, not muted when FALSE. In the second form, the Channel Number field is set to 0xFF. The parameter block contains a list of settings for the CUR attribute for all available Mute Controls in the Feature Unit. Table 5-17 Second Form of the Mute Control Parameter Block Control Selector MUTE_CONTROL wLength Number of available Controls NrAv Offset Field Size Value Description 0 bMute(1) 1 Bool The setting for the CUR attribute of the first Mute Control. … … … … … NrAv-1 bMute(NrAv) 1 Bool The setting for the CUR attribute of the last Mute Control. 5.2.2.4.3.2 Volume Control The Volume Control is one of the building blocks of a Feature Unit. A Volume Control can support all possible Control attributes (CUR, MIN, MAX, and RES). The settings for the CUR, MIN, and MAX attributes can range from +127.9961 dB (0x7FFF) down to -127.9961 dB (0x8001) in steps of 1/256 dB or 0.00390625 dB (0x0001). The range for the CUR attribute is extended by code 0x8000, representing silence, i.e., -¥ dB. The settings for the RES attribute can only take positive values and range from 1/256 dB (0x0001) to +127.9961 dB (0x7FFF). The Volume Control honors the request to the best of its abilities. It may round the wVolume attribute value to its closest available setting. It will report this rounded setting when queried during a Get Control request. In the first form of the request, a particular Volume Control within a Feature Unit is addressed through the Unit ID and Channel Number fields of the Set/Get Feature Unit Control request. The valid range for the Channel Number field is from zero (the ‘master’ channel) up to the number of logical channels in the audio channel cluster. Table 5-18 First Form of the Volume Control Parameter Block Control Selector VOLUME_CONTROL wLength 2 USB Device Class Definition for Audio Devices Release 1.0 March 18, 1998 77 Offset Field Size Value Description 0 wVolume 2 Number The setting for the attribute of the addressed Volume Control 0x7FFF 127.9961 dB … 0x0100 1.0000 dB … 0x0002 0.0078 dB 0x0001 0.0039 dB 0x0000 0.0000 dB 0xFFFF -0.0039 dB 0xFFFE -0.0078 dB … 0xFE00 -1.0000 dB … 0x8002 -127.9922 dB 0x8001 -127.9961 dB 0x8000 -¥ dB (CUR attribute only) In the second form, the Channel Number field is set to 0xFF. The parameter block contains a list of settings for an attribute of all available Volume Controls in the Feature Unit. Table 5-19 Second Form of the Volume Control Parameter Block Control Selector VOLUME_CONTROL wLength (Number of available Controls NrAv)*2 Offset Field Size Value Description 0 wVolume(1) 1 Number The setting for the attribute of the first Volume Control. … … … … … (NrAv-1)*2 wVolume(NrAv) 1 Number The setting for the attribute for the last Volume Control. 5.2.2.4.3.3 Bass Control The Bass Control is one of the building blocks of a Feature Unit. The Bass Control influences the general Bass behavior of the Feature Unit. A Bass Control can support all possible Control attributes (CUR, MIN, MAX, and RES). The settings for the CUR, MIN, and MAX attributes can range from +31.75 dB (0x7F) down to –32.00 dB (0x80) in steps of 0.25 dB (0x01). The settings for the RES attribute can only take positive values and range from 0.25 dB (0x01) to +31.75 dB (0x7F). The Bass Control honors the request to the best of its abilities. It may round the bBass attribute value to its closest available setting. It will report this setting when queried during a Get Control request. Other parameters that also influence the behavior of the Bass Control, such as cut-off frequency, cannot be altered through this request. In the first form of the request, a particular Bass Control within a Feature Unit is addressed through the Unit ID and Channel Number fields of the Set/Get Feature Unit Control request. The valid range for the Channel Number field is from zero (the ‘master’ channel) up to the number of logical channels in the audio channel cluster. USB Device Class Definition for Audio Devices Release 1.0 March 18, 1998 78 Table 5-20 First Form of the Bass Control Parameter Block Control Selector BASS_CONTROL wLength 1 Offset Field Size Value Description 0 bBass 1 Number The setting for the attribute of the addressed Bass Control 0x7F +31.75 dB 0x7E +31.50 dB … 0x00 0.00 dB … 0x82 -31.50 dB 0x81 -31.75 dB 0x80 -32.00 dB In the second form, the Channel Number field is set to 0xFF. The parameter block contains a list of settings for all available Bass Controls in the Feature Unit. Table 5-21 Second Form of the Bass Control Parameter Block Control Selector BASS_CONTROL wLength Number of available Controls NrAv Offset Field Size Value Description 0 bBass(1) 1 Number The setting for the attribute of the first Bass Control. … … … … … NrAv-1 bBass(NrAv) 1 Number The setting for the attribute of the last Bass Control. 5.2.2.4.3.4 Mid Control The Mid Control is one of the building blocks of a Feature Unit. The Mid Control influences the general Mid behavior of the Feature Unit. A Mid Control can support all possible Control attributes (CUR, MIN, MAX, and RES). The settings for the CUR, MIN, and MAX attributes can range from +31.75 dB (0x7F) down to –32.00 dB (0x80) in steps of 0.25 dB (0x01). The settings for the RES attribute can only take positive values and range from 0.25 dB (0x01) to +31.75 dB (0x7F). The Mid Control honors the request to the best of its abilities. It may round the bMid attribute value to its closest available setting. It will report this setting when queried during a Get Audio Control request. Other parameters that also influence the behavior of the Mid Control, such as cut-off frequency, cannot be altered through this request. In the first form of the request, a particular Mid Control within a Feature Unit is addressed through the Unit ID and Channel Number fields of the Set/Get Feature Unit Control request. The valid range for the Channel Number field is from zero (the ‘master’ channel) up to the number of logical channels in the audio channel cluster. USB Device Class Definition for Audio Devices Release 1.0 March 18, 1998 79 Table 5-22 First Form of the Mid Control Parameter Block Control Selector MID_CONTROL wLength 1 Offset Field Size Value Description 0 bMid 1 Number The setting for the attribute of the addressed Mid Control 0x7F +31.75 dB 0x7E +31.50 dB … 0x00 0.00 dB … 0x82 -31.50 dB 0x81 -31.75 dB 0x80 -32.00 dB In the second form, the Channel Number field is set to 0xFF. The parameter block contains a list of settings for all available Mid Controls in the Feature Unit. Table 5-23 Second Form of the Mid Control Parameter Block Control Selector MID_CONTROL wLength Number of available Controls NrAv Offset Field Size Value Description 0 bMid(1) 1 Number The setting for the attribute of the first Mid Control. … … … … … NrAv-1 bMid(NrAv) 1 Number The setting for the attribute of the last Mid Control. 5.2.2.4.3.5 Treble Control The Treble Control is one of the building blocks of a Feature Unit. The Treble Control influences the general Treble behavior of the Feature Unit. A Treble Control can support all possible Control attributes (CUR, MIN, MAX, and RES). The settings for the CUR, MIN, and MAX attributes can range from 31.75 dB (0x7F) down to –32.00 dB (0x80) in steps of 0.25 dB (0x01). The settings for the RES attribute can only take positive values and range from 0.25 dB (0x01) to +31.75 dB (0x7F). The Treble Control honors the request to the best of its abilities. It may round the bTreble attribute value to its closest available setting. It will report this setting when queried during a Get Control request. Other parameters that also influence the behavior of the Treble Control, such as cut-off frequency, cannot be altered through this request. In the first form of the request, a particular Treble Control within a Feature Unit is addressed through the Unit ID and Channel Number fields of the Set/Get Feature Unit Control request. The valid range for the Channel Number field is from zero (the ‘master’ channel) up to the number of logical channels in the audio channel cluster. USB Device Class Definition for Audio Devices Release 1.0 March 18, 1998 80 Table 5-24 First Form of the Treble Control Parameter Block Control Selector TREBLE_CONTROL wLength 1 Offset Field Size Value Description 0 bTreble 1 Number The setting for the attribute of the addressed Treble Control 0x7F +31.75 dB 0x7E +31.50 dB … 0x00 0.00 dB … 0x82 -31.50 dB 0x81 -31.75 dB 0x80 -32.00 dB In the second form, the Channel Number field is set to 0xFF. The parameter block contains a list of settings for all available Treble Controls in the Feature Unit. Table 5-25 Second Form of the Treble Control Parameter Block Control Selector TREBLE_CONTROL wLength Number of available Controls NrAv Offset Field Size Value Description 0 bTreble(1) 1 Number The setting for the attribute of the first Treble Control. … … … … … NrAv-1 bTreble(NrAv) 1 Number The setting for the attribute of the last Treble Control. 5.2.2.4.3.6 Graphic Equalizer Control The Graphic Equalizer Control is one of the optional building blocks of a Feature Unit. The Audio Device Class definition provides for standard support of a third octave graphic equalizer. The bands are defined according to the ANSI S1.11-1986 standard. Bands are numbered from 14 (center frequency of 25 Hz) up to 43 (center frequency of 20,000 Hz), making a total of 30 possible bands. The following table lists the band numbers and their center frequencies Table 5-26 Band Numbers and Center Frequencies (ANSI S1.11-1986 Standard) Band Nr. Center Freq. Band Nr. Center Freq. Band Nr. Center Freq. 14 25Hz 24* 250Hz 34 2500Hz 15* 31.5Hz 25 315Hz 35 3150Hz 1 - 6 - 11 - 16 - 21 - 26 - 31 - 36 - 41 - 46 - 51 - 56 - 61 - 66 - 71 - 76 - 81 - 86 - 91 - 96 - 101 - 106 - 111 - 116 - 121 - 126 ここを編集