XAUDIO2FX_REVERB_PARAMETERS-Struktur (xaudio2fx.h)
Beschreibt Parameter für die Verwendung im Hall-APO.
Syntax
typedef struct XAUDIO2FX_REVERB_PARAMETERS {
float WetDryMix;
UINT32 ReflectionsDelay;
BYTE ReverbDelay;
BYTE RearDelay;
BYTE SideDelay;
BYTE PositionLeft;
BYTE PositionRight;
BYTE PositionMatrixLeft;
BYTE PositionMatrixRight;
BYTE EarlyDiffusion;
BYTE LateDiffusion;
BYTE LowEQGain;
BYTE LowEQCutoff;
BYTE HighEQGain;
BYTE HighEQCutoff;
float RoomFilterFreq;
float RoomFilterMain;
float RoomFilterHF;
float ReflectionsGain;
float ReverbGain;
float DecayTime;
float Density;
float RoomSize;
BOOL DisableLateField;
} XAUDIO2FX_REVERB_PARAMETERS;
Member
WetDryMix
Prozentsatz der Ausgabe, die reverb wird. Zulässige Werte liegen zwischen 0 und 100.
ReflectionsDelay
Die Verzögerungszeit der ersten Reflexion relativ zum direkten Pfad. Der zulässige Bereich liegt zwischen 0 und 300 Millisekunden.
ReverbDelay
Verzögerung des Halls relativ zur ersten Reflexion. Der zulässige Bereich liegt zwischen 0 und 85 Millisekunden.
RearDelay
Verzögerung für den linken hinteren Ausgang und den rechten hinteren Ausgang. Der zulässige Bereich liegt zwischen 0 und 5 Millisekunden.
SideDelay
Verzögerung für die linke und rechte Ausgabe. Der zulässige Bereich liegt zwischen 0 und 5 Millisekunden.
PositionLeft
Position der linken Eingabe im simulierten Raum relativ zum Listener. Wenn PositionLeft auf den Minimalwert festgelegt ist, wird die linke Eingabe in der Nähe des Listeners platziert. In dieser Position sind frühe Reflektionen dominant, und der Hallzerfall wird im Schallfeld zurückgesetzt und in der Amplitude reduziert. Wenn PositionLeft auf den Maximalwert festgelegt ist, wird die linke Eingabe in einem maximalen Abstand vom Listener innerhalb des simulierten Raums platziert. PositionLeft wirkt sich nicht auf die Reverb-Verfallszeit (Liveness des Raums) aus, nur auf die scheinbare Position der Quelle relativ zum Listener. Zulässiger Bereich ist von 0 bis 30 (keine Einheiten).
PositionRight
Identisch mit PositionLeft, wirkt sich jedoch nur auf die richtige Eingabe aus. Zulässiger Bereich ist von 0 bis 30 (keine Einheiten).
PositionMatrixLeft
Gibt einen größeren oder kleineren Eindruck der Entfernung von der Quelle zum Listener. Zulässiger Bereich ist von 0 bis 30 (keine Einheiten).
PositionMatrixRight
Gibt einen größeren oder kleineren Eindruck der Entfernung von der Quelle zum Listener. Zulässiger Bereich ist von 0 bis 30 (keine Einheiten).
EarlyDiffusion
Steuert den Charakter der einzelnen Wandreflektionen. Legen Sie den Minimalwert fest, um eine harte flache Oberfläche zu simulieren, und auf den Maximalwert, um eine diffuse Oberfläche zu simulieren. Zulässiger Bereich ist von 0 bis 15 (keine Einheiten).
LateDiffusion
Steuert den Charakter der einzelnen Wand hallen. Legen Sie den Minimalwert fest, um eine harte flache Oberfläche zu simulieren, und auf den Maximalwert, um eine diffuse Oberfläche zu simulieren. Zulässiger Bereich ist von 0 bis 15 (keine Einheiten).
LowEQGain
Passt die Verfallszeit niedriger Frequenzen relativ zur Verfallszeit bei 1 kHz an. Die Werte entsprechen dB der Verstärkung wie folgt:
Wert | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Gain (dB) | -8 | -7 | –6 | -5 | –4 | -3 | -2 | -1 | 0 | +1 | +2 | +3 | +4 |
LowEQCutoff
Legt die Eckhäufigkeit des Tiefpassfilters fest, der vom LowEQGain-Parameter gesteuert wird. Die Werte entsprechen der Frequenz in Hz wie folgt:
Wert | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
---|---|---|---|---|---|---|---|---|---|---|
Frequenz (Hz) | 50 | 100 | 150 | 200 | 250 | 300 | 350 | 400 | 450 | 500 |
Zulässiger Bereich zwischen 0 und 9 (keine Einheiten).
HighEQGain
Passt die Verfallszeit hoher Frequenzen relativ zur Verfallszeit bei 1 kHz an. Wenn sie auf null festgelegt sind, verfallen hohe Frequenzen mit der gleichen Rate wie 1 kHz. Wenn sie auf den Maximalwert festgelegt sind, verfallen hohe Frequenzen mit einer viel schnelleren Rate als 1 kHz.
Wert | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
---|---|---|---|---|---|---|---|---|---|
Gain (dB) | -8 | -7 | –6 | -5 | –4 | -3 | -2 | -1 | 0 |
Zulässiger Bereich zwischen 0 und 8 (keine Einheiten).
HighEQCutoff
Legt die Eckhäufigkeit des Hochpassfilters fest, der vom HighEQGain-Parameter gesteuert wird. Die Werte entsprechen der Frequenz in kHz wie folgt:
Wert | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Frequenz (kHz) | 1 | 1.5 | 2 | 2.5 | 3 | 3,5 | 4 | 4.5 | 5 | 5.5 | 6 | 6,5 | 7 | 7,5 | 8 |
Zulässiger Bereich zwischen 0 und 14 (keine Einheiten).
RoomFilterFreq
Legt die Eckhäufigkeit des Tiefpassfilters für den Raumeffekt fest. Der zulässige Bereich liegt zwischen 20 und 20.000 Hz.
RoomFilterMain
Legt die Intensität des Passbands des Tiefpassfilters sowohl für die frühen Reflektionen als auch für den nachgestellten Feldhall fest. Der zulässige Bereich liegt zwischen -100 und 0 dB.
RoomFilterHF
Legt die Intensität des Tiefpassfilters sowohl für die frühen Reflektionen als auch für den späten Feldhall bei der Eckfrequenz (RoomFilterFreq) fest. Der zulässige Bereich liegt zwischen -100 und 0 dB.
ReflectionsGain
Passt die Intensität der frühen Reflexionen an. Der zulässige Bereich liegt zwischen -100 und 20 dB.
ReverbGain
Passt die Intensität der Hallen an. Der zulässige Bereich liegt zwischen -100 und 20 dB.
DecayTime
Hallzerfallzeit bei 1 kHz. Dies ist die Zeit, in der ein vollständiges Eingangssignal um 60 dB zerfällt. Der zulässige Bereich liegt zwischen 0,1 und unendlichen Sekunden.
Density
Steuert die modale Dichte im nachgestellten Nachhall des Felds. Für farblose Leerzeichen sollte Die Dichte auf den maximalen Wert (100) festgelegt werden. Wenn die Dichte verringert wird, wird der Schall hohl (Kamm gefiltert). Dies ist ein Effekt, der nützlich sein kann, wenn Sie versuchen, ein Silo zu modellieren. Zulässiger Bereich als Prozentsatz liegt zwischen 0 und 100.
RoomSize
Die scheinbare Größe des Akustikraums. Zulässiger Bereich ist von 1 bis 100 Fuß.
DisableLateField
Wenn dieser Wert auf TRUE festgelegt ist, werden Berechnungen für die späte Feldreflektion deaktiviert. Das Deaktivieren von Berechnungen für späte Feldreflektionen führt zu einer erheblichen CPU-Zeitersparnis.
Hinweise
Alle Parameter im Zusammenhang mit der Samplingrate oder -zeit sind relativ zu einer 48-kHz-Stimme und müssen für die Verwendung mit anderen Samplingraten skaliert werden. Wenn Sie beispielsweise ReflectionsDelay auf 300 ms festlegen, ergibt sich eine echte Verzögerung von 300 ms, wenn der Hall in einer 48-kHz-Stimme gehostet wird, aber zu einer Verzögerung von 150 ms, wenn sie in einer 24-kHz-Stimme gehostet wird.
Plattformanforderungen
Windows 10 (XAudio2.9); Windows 8, Windows Phone 8 (XAudio 2.8); DirectX SDK (XAudio 2.7)Anforderungen
Anforderung | Wert |
---|---|
Header | xaudio2fx.h |
Weitere Informationen
So wird's gemacht: Erstellen einer Effektkette