struct Param
{
u32 m_EarlyReflectionTime;
u32 m_FusedTime;
u32 m_PreDelayTime;
f32 m_Coloration;
f32 m_Damping;
FilterSize * m_pFilterSize;
f32 m_EarlyGain;
f32 m_FusedGain;
bool m_IsEnableSurround;
};
The data structure for reverb parameters.
Reverb can be divided into two large groups: "early reflection" and "subsequent reverb sounds."
"Early reflection" can be adjusted with m_EarlyReflectionTime and m_EarlyGain.
m_EarlyReflectionTime signifies the time until the early reflection returns. Larger values indicate longer times from when the sound reflects until it returns. Units are in msec and must be larger than 5 set in multiples of 5. The initial value is set to 60.
m_EarlyGain signifies the output gain for early reflection. Set a value from 0.0.f to 1.0.f. When set to 0.0f, the early reflection cannot be heard. The initial value is set to 0.6f.
"Subsequent reverb sound" can be adjusted with m_FusedTime, m_FusedGain, m_PreDelayTime, m_Coloration, m_Damping, and m_pFilterSize.
m_FusedTime signifies the time that the subsequent reverb sound continues to play. Larger values can express spaces where sounds are easily reflected. Units are in msec, and the initial value is set to 4000.
m_FusedGain signifies the output gain for subsequent reverb sound. Set a value from 0.0.f to 1.0.f. When set to 0.0f, the subsequent reverb sound cannot be heard. The initial value is set to 0.4f.
m_PreDelayTime is the lag time before the subsequent reverb sound. Larger values cause the subsequent reverb sound to be heard later. Units are in msec and must be larger than 5 set in multiples of 5. The initial value is 100.
m_Coloration signifies the coefficient for the full band pass filter of the subsequent reverb sound. Large values make the subsequent reverb sound more detailed and mix in more complex echoes. Set a value from 0.0.f to 1.0.f. When set to 0.0f, the full band pass filter is passed through. The initial value is 0.5.0f.
m_Damping indicates how the low-pass filter (LPF) is applied to subsequent reverb sound. Set a value from 0.0.f to 1.0.f. The greater this value is made to be, the lower the cutoff frequency. Setting 0.0f results in the LPF not being applied at all. The initial value is 0.4.0f.
See the FilterSize description regarding each member variable of m_pFilterSize.
m_IsEnableSurround signifies whether the reverb process will enable the sound channel. When true, surround components (rear L and R channels) also undergo reverb processing. If false, reverb processing of surround components is skipped. The process load can be reduced by the corresponding amount by setting false. The initial value is false.
The required memory size obtained by GetRequiredMemSize depends on:
・m_EarlyReflectionTime
・m_PreDelayTime
・m_pFilterSize
・m_IsEnableSurround
If following values are changed while an effect is executing, noise may be generated.
・m_EarlyReflectionTime
・m_PreDelayTime
Also, if the following values are changed "continuously", no noise is generated even if an effect is being executed.
・m_FusedTime
・m_Coloration
・m_Damping
・m_EarlyGain
・m_FusedGain
Call SetParam to change parameters while an effect is being executed.
| m_EarlyReflectionTime | u32 | Early reflection time (msec). | |
|---|---|---|---|
| m_FusedTime | u32 | Attenuation time (msec) for subsequent reverb sounds. | |
| m_PreDelayTime | u32 | Subsequent reverb sound pre-delay time (msec). | |
| m_Coloration | f32 | Coefficient for the full band pass filter for subsequent reverb sound. | |
m_Damping
|
f32 | Low-pass filter damping for subsequent reverb sound. | |
| m_pFilterSize | FilterSize * | Filter size. Default values are used to set members of the FilterSize structure if NULL is specified. | |
| m_EarlyGain | f32 | Output gain for early reflection. | |
| m_FusedGain | f32 | Output gain for subsequent reverb sound. | |
| m_IsEnableSurround | bool | Flag indicating whether to enable reverb processing for surround channels. |
| Param | Constructor. |
|---|
CONFIDENTIAL