Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Создает новый объект обработки звука ревербации (APO) и возвращает указатель на него.
Синтаксис
HRESULT XAudio2CreateReverb(
[in, out] IUnknown **ppApo,
[in] UINT32 Flags DEFAULT
);
Параметры
[in, out] ppApo
Содержит указатель на созданный объект APO ревербации.
[in] DEFAULT
Флаги, указывающие поведение APO. Значение этого параметра должно быть равно 0.
Возвращаемое значение
Если эта функция выполнена успешно, она возвращает S_OK. В противном случае возвращается код ошибки HRESULT.
Замечания
XAudio2CreateReverb создает эффект, выполняющий Принстон Цифровой Реверб. Библиотека эффектов XAPO (XAPOFX) включает альтернативный эффект ревербации. Используйте CreateFX для создания этого альтернативного эффекта.
Реверб APO поддерживает следующие ограничения:
- Входные звуковые данные должны быть FLOAT32.
- Частота кадров должна находиться в пределах XAUDIO2FX_REVERB_MIN_FRAMERATE (20 000 Гц) и XAUDIO2FX_REVERB_MAX_FRAMERATE (48 000 Гц).
- Входные и выходные каналы должны быть одним из следующих сочетаний.
- Выходные данные mono и mono
- Выходные данные Mono и 5.1
- Выходные данные стерео и стерео
- Выходные данные стерео и 5.1
Сведения о создании новых эффектов для использования с XAudio2 см. в обзоре XAPO.
Виндоус |
---|
Так как XAudio2CreateReverb вызывает CoCreateInstance в Windows, приложение должно вызвать метод CoInitializeEx перед вызовом XAudio2CreateReverb.
XAudio2Create имеет то же требование, что означает , что CoInitializeEx обычно будет вызываться до вызова XAudio2CreateReverb .
Типичный шаблон вызова в Windows будет следующим образом:
|
Заголовок xaudio2fx.h определяет GUID класса AudioReverb как кроссплатформенный объект обработки звука (XAPO).
class __declspec(uuid("C2633B16-471B-4498-B8C5-4F0959E2EC09")) AudioReverb;
XAudio2CreateReverb возвращает этот объект в качестве указателя на указатель на IUnknown в параметре ppApo . Хотя вы можете запросить интерфейсы IXAPO и IXAPOParameters из этого IUnknown, обычно эти интерфейсы не используются напрямую. Вместо этого вы используете их при создании голоса, чтобы добавить их в цепочку эффектов.
Реверверб использует структуру параметров XAUDIO2FX_REVERB_PARAMETERS , доступ к которым осуществляется через IXAudio2Voice::SetEffectParameters.
Замечание
XAudio2CreateReverb — это встроенная функция в xaudio2fx.h, которая вызывает CreateAudioReverb , как показано в следующем примере кода.
XAUDIO2FX_STDAPI CreateAudioReverb(_Outptr_ IUnknown** ppApo);
__inline HRESULT XAudio2CreateReverb(_Outptr_ IUnknown** ppApo, UINT32 /*Flags*/ DEFAULT(0))
{
return CreateAudioReverb(ppApo);
}
требования к платформе
Windows 10 (XAudio2.9); Windows 8, Windows Phone 8 (XAudio 2.8); Пакет SDK DirectX (XAudio 2.7)Требования
Требование | Ценность |
---|---|
целевая платформа | Виндоус |
Заголовок | xaudio2fx.h |
Библиотека | Xaudio2.lib |
DLL | Windows.Media.Audio.dll |
См. также
Практическое руководство. Создание цепочки эффектов