XAudio2CreateReverb-Funktion (xaudio2fx.h)
Erstellt ein neues Reverb-Audioverarbeitungsobjekt (APO) und gibt einen Zeiger darauf zurück.
Syntax
HRESULT XAudio2CreateReverb(
[in, out] IUnknown **ppApo,
[in] UINT32 Flags DEFAULT
);
Parameter
[in, out] ppApo
Enthält einen Zeiger auf den erstellten Hall-APO.
[in] DEFAULT
Flags, die das Verhalten des APO angeben. Der Wert dieses Parameters muss 0 sein.
Rückgabewert
Wenn diese Funktion erfolgreich ist, gibt sie S_OK zurück. Andernfalls wird ein Fehlercode HRESULT zurückgegeben.
Hinweise
XAudio2CreateReverb erstellt einen Effekt, der Princeton Digital Reverb ausführt. Die XAPO-Effektbibliothek (XAPOFX) enthält einen alternativen Halleffekt. Verwenden Sie CreateFX , um diesen alternativen Effekt zu erstellen.
Für die reverb APO-Unterstützung gelten die folgenden Einschränkungen:
- Audioeingabedaten müssen FLOAT32 werden.
- Die Framerate muss innerhalb XAUDIO2FX_REVERB_MIN_FRAMERATE (20.000 Hz) und XAUDIO2FX_REVERB_MAX_FRAMERATE (48.000 Hz) betragen.
- Die Eingangs- und Ausgabekanäle müssen eine der folgenden Kombinationen sein.
- Mono-Eingang und Mono-Ausgabe
- Mono-Eingang und 5.1-Ausgabe
- Stereoeingang und Stereoausgang
- Stereoeingang und 5.1-Ausgang
Informationen zum Erstellen neuer Effekte für die Verwendung mit XAudio2 finden Sie in der XAPO-Übersicht.
Windows |
---|
Da XAudio2CreateReverbCoCreateInstance unter Windows aufruft, muss die Anwendung die CoInitializeEx-Methode aufgerufen haben, bevor sie XAudio2CreateReverb aufruft. XAudio2Create hat die gleiche Anforderung, was bedeutet, dass CoInitializeEx in der Regel lange aufgerufen wird, bevor XAudio2CreateReverb aufgerufen wird.
Ein typisches Aufrufmuster unter Windows lautet wie folgt:
|
Der xaudio2fx.h-Header definiert die GUID der AudioReverb-Klasse als plattformübergreifendes Audioverarbeitungsobjekt (Cross-Platform Audio Processing Object, XAPO).
class __declspec(uuid("C2633B16-471B-4498-B8C5-4F0959E2EC09")) AudioReverb;
XAudio2CreateReverb gibt dieses Objekt als Zeiger auf einen Zeiger auf IUnknown im ppApo-Parameter zurück. Obwohl Sie die IXAPO - und IXAPOParameters-Schnittstellen von diesem IUnknown abfragen können, verwenden Sie diese Schnittstellen in der Regel nie direkt. Stattdessen verwenden Sie sie, wenn Sie eine Stimme erstellen, um sie als Teil der Effektkette hinzuzufügen.
Der Reverb verwendet die XAUDIO2FX_REVERB_PARAMETERS Parameterstruktur, auf die Sie über IXAudio2Voice::SetEffectParameters zugreifen.
XAUDIO2FX_STDAPI CreateAudioReverb(Outptr IUnknown** ppApo); __inline HRESULT XAudio2CreateReverb(Outptr IUnknown** ppApo, UINT32 /Flags/ DEFAULT(0)) { return CreateAudioReverb(ppApo); }
</div>
<div> </div>
<h3><a id="Platform_Requirements"></a><a id="platform_requirements"></a><a id="PLATFORM_REQUIREMENTS"></a>Platform Requirements</h3>
Windows 10 (XAudio2.9); Windows 8, Windows Phone 8 (XAudio 2.8); DirectX SDK (XAudio 2.7)
## Requirements
| Requirement | Value |
| ---- |:---- |
| **Target Platform** | Windows |
| **Header** | xaudio2fx.h |
| **Library** | Xaudio2.lib |
| **DLL** | Windows.Media.Audio.dll |
## See also
<a href="/windows/desktop/xaudio2/how-to--create-an-effect-chain">How to: Create an Effect Chain</a>
<a href="/windows/desktop/api/xaudio2/nf-xaudio2-ixaudio2voice-seteffectparameters">IXAudio2Voice::SetEffectParameters</a>
<a href="/windows/desktop/api/xaudio2fx/ns-xaudio2fx-xaudio2fx_reverb_parameters">XAUDIO2FX_REVERB_PARAMETERS</a>
<a href="/windows/desktop/xaudio2/functions">XAudio2 Functions</a>