Audio Device Document 1.0(86-90)


USB Device Class Definition for Audio Devices
Release 1.0 March 18, 1998 86
5.2.2.5.1 Set Processing Unit Control Request
This request is used to set an attribute of an audio Control inside a Processing Unit of the audio function.
Table 5-36: Set Processing Unit Control Request Values
bmRequest
Type
bRequest wValue wIndex wLength Data
00100001B SET_CUR
SET_MIN
SET_MAX
SET_RES
CS Processing 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 specifies the Control Selector (CS) in the high byte and zero in the low byte. The
Control Selector indicates which type of Control this request is manipulating (Enable Processing, Mode
Select, etc.) If the request specifies an unknown or unsupported CS to that Processing Unit, the control
pipe must indicate a stall.
For a description of the parameter block for the Processing Unit Controls, see Section 5.2.2.5.3,
“Processing Unit Controls.”
5.2.2.5.2 Get Processing Unit Control Request
This request returns the attribute setting of a specific audio Control inside a Processing Unit of the audio
function.
Table 5-37: Get Processing Unit Control Request Values
bmRequest
Type
bRequest wValue wIndex wLength Data
10100001B GET_CUR
GET_MIN
GET_MAX
GET_RES
CS 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 zero in the low byte. The
Control Selector indicates which type of Control this request is addressing. (Enable Processing, Mode
Select, etc.) If the request specifies an unknown or unsupported CS to that Unit, the control pipe must
indicate a stall.
For a description of the parameter block for the Processing Unit Controls, see Section 5.2.2.5.3,
“Processing Unit Controls.”
5.2.2.5.3 Processing Unit Controls
Processing Unit Controls are in principle specific to the type of process a Processing Unit implements.
However, instead of specifying all supported Controls on a per process basis, it was considered more
efficient to create a ‘pool’ of possible Controls. In this way, Controls that occur in different Processing
Units need only be specified once. However, the Control Selector Codes and the bit positions in the
bmControls field of the Processing Unit descriptor are assigned on a per-process type basis. Issuing nonsupported
Control Selectors to a Processing Unit leads to a control pipe stall.

USB Device Class Definition for Audio Devices
Release 1.0 March 18, 1998 87
The following paragraphs present a detailed description of all possible Controls a Processing 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 Processing Unit Control request. The Control Selector codes
are defined in Section A.10.3, “Processing Unit Control Selectors.”
5.2.2.5.3.1 Enable Processing Control
The Enable Processing Control is used to either enable the functionality of the Processing Unit or bypass
the Processing Unit entirely. In the latter case, default behavior is assumed. Enable Processing Control
can have only the current setting attribute (CUR). The position of an Enable Processing switch can be
either TRUE or FALSE. The current setting of the Control can be queried using a Get Processing Unit
Control request.
Table 5-38: Enable Processing Control Parameter Block
Control Selector XX_ENABLE_CONTROL
wLength 1
Offset Field Size Value Description
0 bEnable 1 Bool The setting for the Enable Processing
Control CUR attribute. Enabled when
TRUE, disabled when FALSE.
5.2.2.5.3.2 Mode Select Control
The Mode Select Control is used to change the behavior of the Processing Unit. A Mode Select Control
can support all possible Control attributes (CUR, MIN, MAX, and RES).The valid range for the CUR,
MIN, and MAX attributes is from one to the number of modes, supported by the Processing Unit (reported
through the bNrModes field of the Processing Unit descriptor). The RES attribute can only have a value
of one. The Mode Select Control honors the request to the best of its abilities. It may round the bMode
attribute value to its closest available setting. It will report this rounded setting when queried during a Get
Processing Unit Control request.
Table 5-39: Mode Select Control Parameter Block
Control Selector XX_MODE_SELECT_CONTROL
wLength 1
Offset Field Size Value Description
0 bMode 1 Number The setting for the attribute of the Mode
Select Control.
5.2.2.5.3.3 Spaciousness Control
The Spaciousness Control is used to change the spatial appearance of the stereo image, produced by the
3D-Stereo Extender Processing Unit. The Spaciousness Control can support all possible Control attributes
(CUR, MIN, MAX, and RES). The valid range for the CUR, MIN, MAX, and RES attributes is from zero
to 255%. The Spaciousness Control honors the request to the best of its abilities. It may round the
bSpaciousness attribute value to its closest available setting. It will report this rounded setting when
queried during a Get Processing Unit Control request.

USB Device Class Definition for Audio Devices
Release 1.0 March 18, 1998 88
Table 5-40: Spaciousness Control Parameter Block
Control Selector SPACIOUSNESS_CONTROL
wLength 1
Offset Field Size Value Description
0 bSpaciousness 1 Number The setting for the attribute of the
Spaciousness Control.
5.2.2.5.3.4 Reverb Type Control
The Reverb Type Control is a macro parameter that allows global settings of reverb parameters within the
Reverberation Processing Unit. When a certain Reverb Type is selected, each reverb parameter will be set
to the most suitable value. The Reverb Type Control can support all possible Control attributes (CUR,
MIN, MAX, and RES). The valid range for the CUR, MIN, and MAX attributes is from zero to 255. The
RES attribute can only have a value of one.
The CUR attribute subrange from 0 to 7 has predefined behavior:
· 0: Room 1 – simulates the reverberation of a small room.
· 1: Room 2 – simulates the reverberation of a medium room.
· 2: Room 3 – simulates the reverberation of a large room.
· 3: Hall 1 – simulates the reverberation of a medium concert hall.
· 4: Hall 2 – simulates the reverberation of a large concert hall.
· 5: Plate – simulates a plate reverberation (a studio device using a metal plate).
· 6: Delay – conventional delay that produces echo effects.
· 7: Panning Delay – special delay in which the delayed sounds move left and right.
The Reverb Type Control honors the request to the best of its abilities. It may round the bReverbType
attribute value to its closest available setting. It will report this rounded setting when queried during a Get
Processing Unit Control request.
Table 5-41: Reverb Type Control Parameter Block
Control Selector REVERB_TYPE_CONTROL
wLength 1
Offset Field Size Value Description
0 bReverbType 1 Number The setting for the attribute of the Reverb
Type Control.
5.2.2.5.3.5 Reverb Level Control
The Reverb Level Control is used to set the amount of reverberant sound introduced by the Reverberation
Processing Unit. The Reverb Level Control can support all possible Control attributes (CUR, MIN, MAX
,and RES). The valid range for the CUR, MIN, MAX, and RES attributes is from zero to 255%, compared
to the level of the original signal. The Reverb Level Control honors the request to the best of its abilities.
It may round the bReverbLevel attribute value to its closest available setting. It will report this rounded
setting when queried during a Get Processing Unit Control request.

USB Device Class Definition for Audio Devices
Release 1.0 March 18, 1998 89
Table 5-42: Reverb Level Control Parameter Block
Control Selector REVERB_LEVEL_CONTROL
wLength 1
Offset Field Size Value Description
0 bReverbLevel 1 Number The setting for the attribute of the Reverb
Level Control.
5.2.2.5.3.6 Reverb Time Control
The Reverb Time Control is used to set the time over which the reverberation, introduced by the
Reverberation Processing Unit, will continue. The Reverb Time 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 255.9961 s (0xFFFF) in steps of 1/256 s or 0.00390625 s (0x0001). The
Reverb Time Control honors the request to the best of its abilities. It may round the wReverbTime
attribute value to its closest available setting. It will report this rounded setting when queried during a Get
Processing Unit Control request.
Table 5-43: Spaciousness Control Parameter Block
Control Selector REVERB_TIME_CONTROL
wLength 2
Offset Field Size Value Description
0 wReverbTime 2 Number The setting for the attribute of the Reverb
Time Control.
5.2.2.5.3.7 Reverb Delay Feedback Control
The Reverb Delay Feedback Control is used when the Reverb Type is set to Reverb Type 6, Delay or
Reverb Type 7, Panning Delay. It sets the way in which delay repeats. The Reverb Delay Feedback
Control range can support all possible Control attributes (CUR, MIN, MAX, and RES). The valid range
for the CUR, MIN, MAX, and RES attributes is from zero to 255%. Higher values result in more delay
repeats.
Note: In practice, the delay feedback amount should be limited to 75% to avoid unexpected feedback
distortion and continuous delay loop.
The Reverb Delay Feedback Control honors the request to the best of its abilities. It may round the
bReverbFeedback attribute value to its closest available setting. It will report this rounded setting when
queried during a Get Processing Unit Control request.
Table 5-44: Reverb Delay Feedback Control Parameter Block
Control Selector REVERB_FEEDBACK_CONTROL
wLength 1

USB Device Class Definition for Audio Devices
Release 1.0 March 18, 1998 90
Offset Field Size Value Description
0 bReverbFeedback 1 Number The setting for the attribute of the Reverb
Delay Feedback Control.
5.2.2.5.3.8 Chorus Level Control
The Chorus Level Control is used to set the amount of chorus effect sound introduced by the Chorus
Processing Unit. The Chorus Level Control can support all possible Control attributes (CUR, MIN, MAX,
and RES). The valid range for the CUR, MIN, MAX, and RES attributes is from zero to 255%, compared
to the level of the original signal. The Chorus Level Control honors the request to the best of its abilities.
It may round the bChorusLevel attribute value to its closest available setting. It will report this rounded
setting when queried during a Get Processing Unit Control request.
Table 5-45: Chorus Level Control Parameter Block
Control Selector CHORUS_LEVEL_CONTROL
wLength 1
Offset Field Size Value Description
0 bChorusLevel 1 Number The setting for the attribute of the Chorus
Level Control.
5.2.2.5.3.9 Chorus Modulation Rate Control
The Chorus Modulation Rate Control is used to set the speed (frequency) of the modulator of the chorus,
introduced by the Chorus Processing Unit. Higher values result in faster modulation. The Chorus
Modulation Rate 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 255.9961 Hz
(0xFFFF) in steps of 1/256 Hz or 0.00390625 Hz (0x0001). The Chorus Modulation Rate Control honors
the request to the best of its abilities. It may round the wChorusRate attribute value to its closest available
setting. It will report this rounded setting when queried during a Get Processing Unit Control request.
Table 5-46: Chorus Modulation Rate Control Parameter Block
Control Selector CHORUS_RATE_CONTROL
wLength 2
Offset Field Size Value Description
0 wChorusRate 2 Number The setting for the attribute of the Chorus
Modulation Rate Control.
5.2.2.5.3.10 Chorus Modulation Depth Control
The Chorus Modulation Depth Control is used to set the depth at which the chorus sound introduced by
the Chorus Processing Unit, is modulated. Higher values result in deeper modulation. The Chorus
Modulation Depth 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 255.9961 ms
(0xFFFF) in steps of 1/256 ms or 0.00390625 ms (0x0001). The Chorus Modulation Depth Control
honors the request to the best of its abilities. It may round the wChorusDepth attribute value to its closest


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

タグ:

+ タグ編集
  • タグ:
最終更新:2011年05月02日 03:34