Función XAudio2CreateReverb (xaudio2fx.h)
Crea un nuevo objeto de procesamiento de audio reverberación (APO) y devuelve un puntero a él.
Sintaxis
HRESULT XAudio2CreateReverb(
[in, out] IUnknown **ppApo,
[in] UINT32 Flags DEFAULT
);
Parámetros
[in, out] ppApo
Contiene un puntero al APO de reverberación que se crea.
[in] DEFAULT
Marcas que especifican el comportamiento del APO. El valor de este parámetro debe ser 0.
Valor devuelto
Si esta función se realiza correctamente, devuelve S_OK. De lo contrario, devuelve un código de error de HRESULT.
Observaciones
XAudio2CreateReverb crea un efecto que realiza Princeton Digital Reverb. La biblioteca de efectos XAPO (XAPOFX) incluye un efecto de reverberación alternativo. Use CreateFX para crear este efecto alternativo.
El APO de reverberación admite tiene las siguientes restricciones:
- Los datos de audio de entrada deben ser FLOAT32.
- La velocidad de fotogramas debe estar dentro de XAUDIO2FX_REVERB_MIN_FRAMERATE (20 000 Hz) y XAUDIO2FX_REVERB_MAX_FRAMERATE (48 000 Hz).
- Los canales de entrada y salida deben ser una de las siguientes combinaciones.
- Entrada mono y salida mono
- Entrada mono y salida 5.1
- Entrada estéreo y salida estéreo
- Entrada estéreo y salida 5.1
Para obtener información sobre cómo crear nuevos efectos para su uso con XAudio2, consulte la información general de XAPO.
Windows |
---|
Dado que XAudio2CreateReverb llama a CoCreateInstance en Windows, la aplicación debe haber llamado al método CoInitializeEx antes de llamar a XAudio2CreateReverb. XAudio2Create tiene el mismo requisito, lo que significa que se suele llamar a CoInitializeEx mucho antes de llamar a XAudio2CreateReverb .
Un patrón de llamada típico en Windows sería el siguiente:
|
El encabezado xaudio2fx.h define el GUID de la clase AudioReverb como un objeto de procesamiento de audio multiplataforma (XAPO).
class __declspec(uuid("C2633B16-471B-4498-B8C5-4F0959E2EC09")) AudioReverb;
XAudio2CreateReverb devuelve este objeto como puntero a un puntero a IUnknown en el parámetro ppApo . Aunque puede consultar las interfaces IXAPO e IXAPOParameters desde este IUnknown, normalmente nunca se usan directamente estas interfaces. En su lugar, los usa al crear una voz para agregarlos como parte de la cadena de efectos.
La reverberación usa la estructura de parámetros XAUDIO2FX_REVERB_PARAMETERS a la que se accede a través de IXAudio2Voice::SetEffectParameters.
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>