API-интерфейсы XAudio2
Обзор технологии API XAudio2.
Для разработки API XAudio2 требуются следующие заголовки:
Рекомендации по программированию для этой технологии см. в следующих разделах:
Класс
CXAPOBase Реализация интерфейса IXAPO по умолчанию. |
CXAPOParametersBase Реализация интерфейса IXAPOParameters по умолчанию. |
Перечисления
HrtfDirectivityType Указывает один из нескольких шаблонов направления акций. |
HrtfDistanceDecayType Указывает тип распада на основе расстояния, применяемый к звуку. |
HrtfEnvironment Указывает один из нескольких типов стандартных сред. |
XAPO_BUFFER_FLAGS Описывает содержимое буфера потока. |
XAUDIO2_FILTER_TYPE Указывает тип фильтра. |
Функции
AddRef Добавляет ссылку на объект XAudio2. |
BeginProcess Возвращает текущие параметры процесса. |
CalcInputFrames Возвращает количество входных кадров, необходимых для создания заданного количества выходных кадров. |
CalcOutputFrames Возвращает количество выходных кадров, которые будут созданы на основе заданного количества входных кадров. |
CommitChanges Атомарным образом применяет набор операций, помеченных заданным идентификатором. |
CreateFX Создает экземпляр запрошенного эффекта XAPOFX. |
CreateHrtfApo Создает экземпляр интерфейса IXAPO для обработки функции передачи, связанной с головой (HRTF). |
CreateMasteringVoice Создает и настраивает голос мастера. |
CreateSourceVoice Создает и настраивает исходный голос. |
CreateSubmixVoice Создает и настраивает подмиксный голос. |
CXAPOBase Создает экземпляр класса CXAPOBase. |
CXAPOParametersBase Создает экземпляр класса CXAPOParametersBase. |
DestroyVoice Уничтожает голос. При необходимости останавливает голос и удаляет его из графа XAudio2. |
DisableEffect Отключает эффект в заданной позиции в цепочке эффектов голоса. |
Разрыв Уведомляет голос XAudio2 о том, что после последнего буфера в очереди больше не будет. |
EnableEffect Включает эффект в заданной позиции в цепочке эффектов голоса. |
EndProcess Уведомляет CXAPOParametersBase о том, что XAPO завершил доступ к текущим параметрам процесса. |
ExitLoop Прекращает циклическое выполнение голоса, когда он достигает конца текущей области цикла. |
FlushSourceBuffers Удаляет все ожидающие звуковые буферы из голосовой очереди. |
GetChannelMask Возвращает маску канала для этого голоса. |
GetChannelVolumes Возвращает уровни громкости для голоса на канал. |
GetEffectParameters Возвращает текущие параметры конкретного эффекта в цепочке эффектов голоса. |
GetEffectState Возвращает состояние выполнения эффекта в указанной позиции в цепочке эффектов голоса. |
GetFilterParameters Возвращает параметры фильтра голоса. |
GetFrequencyRatio Возвращает коэффициент регулировки частоты голоса. |
GetOutputFilterParameters Возвращает параметры фильтра из одного из отправлений этого голоса. |
GetOutputMatrix Возвращает уровень громкости каждого канала конечного вывода для голоса. Эти каналы сопоставляются с входными каналами указанного целевого голоса. |
GetParameters Возвращает текущие значения для всех параметров, зависящих от эффекта. |
GetPerformanceData Возвращает сведения об использовании текущего ресурса, например доступной памяти или использования ЦП. |
GetRegistrationProperties Возвращает свойства регистрации XAPO. |
GetRegistrationPropertiesInternal Возвращает указатель на структуру XAPO_REGISTRATION_PROPERTIES, содержащую свойства регистрации, с которыми был создан XAPO. |
GetState Возвращает данные текущего положения курсора голоса. |
GetVoiceDetails Возвращает сведения о флагах создания, каналах ввода и частоте выборки голоса. |
GetVolume Возвращает текущий общий уровень громкости голоса. |
Initialize Выполняет инициализацию, зависят от конкретного эффекта. |
IsInputFormatSupported Запрашивает, поддерживается ли определенный формат входных данных для заданного формата вывода. |
IsLocked Запрашивает блокировку XAPO. |
IsOutputFormatSupported Запрашивает, поддерживается ли определенный формат выходных данных для заданного формата входных данных. |
LockForProcess Вызывается методом XAudio2 для блокировки конфигураций входных и выходных данных XAPO, что позволяет выполнять любую окончательную инициализацию перед вызовом process в потоке в реальном времени. |
OnBufferEnd Вызывается, когда голос завершает обработку буфера. |
OnBufferStart Вызывается, когда голос вот-вот начнет обработку нового звукового буфера. |
OnCriticalError Вызывается при возникновении критической системной ошибки, которая требует закрытия и перезапуска XAudio2. |
OnLoopEnd Вызывается, когда голос достигает конечной позиции цикла. |
OnProcessingPassEnd Вызывается методом XAudio2 сразу после завершения процесса обработки звука. |
OnProcessingPassStart Вызывается методом XAudio2 непосредственно перед началом процесса обработки звука. |
OnSetParameters Вызывается методом IXAPOParameters::SetParameters для проверки определяемых пользователем параметров. |
OnStreamEnd Вызывается, когда голос только что закончил воспроизведение непрерывного аудиопотока. |
OnVoiceError Вызывается при возникновении критической ошибки во время обработки голоса. |
OnVoiceProcessingPassEnd Вызывается сразу после завершения процесса обработки голоса. |
OnVoiceProcessingPassStart Вызывается во время каждого прохода обработки для каждого голоса непосредственно перед тем, как XAudio2 считывает данные из очереди буфера голоса. |
ParametersChanged Указывает, был ли вызван IXAPOParameters::SetParameters с момента последнего прохода обработки. |
Процесс Выполняет код цифровой обработки сигналов (DSP) XAPO в заданных входных и выходных буферах. |
ProcessThru Вызывается реализацией IXAPO::P rocess, когда XAPO отключен для обработки через. |
QueryInterface Запрашивает заданный COM-интерфейс в объекте XAudio2. |
RegisterForCallbacks Добавляет указатель IXAudio2EngineCallback в список обратных вызовов обработчика XAudio2. |
Выпуск Освобождает ссылку на объект XAudio2. |
Сброс Сбрасывает переменные, зависящие от журнала кадров. |
ReverbConvertI3DL2ToNative Встроенная функция, которая преобразует параметры I3DL2 (interactive 3D Audio Rendering Guidelines Level 2.0) в собственные параметры XAudio2. |
SetChannelVolumes Задает уровни громкости для голоса для каждого канала. |
SetDebugConfiguration Изменяет параметры глобального ведения журнала отладки для XAudio2. |
SetEffectChain Заменяет цепочку эффектов голоса. |
SetEffectParameters Задает параметры для заданного эффекта в цепочке эффектов голоса. |
SetEnvironment Выбирает акустическую среду для имитации. |
SetFilterParameters Задает параметры фильтра голоса. |
SetFrequencyRatio Задает коэффициент регулировки частоты голоса. |
SetOutputFilterParameters Задает параметры фильтра для одного из отправлений этого голоса. |
SetOutputMatrix Задает уровень громкости каждого канала окончательного вывода для голоса. Эти каналы сопоставляются с каналами ввода указанного целевого голоса. |
SetOutputVoices Определяет новый набор субмиксных или мастеринговых голосов для получения выходных данных голоса. |
SetParameters Задает параметры, относящиеся к эффекту. |
SetSourceGain Задает настраиваемое значение получения с прямым путем для текущей исходной позиции. Допустимо только для звуков, воспроизводимых с пользовательским типом распада HrtfDistanceDecayType. |
SetSourceOrientation Задайте матрицу поворота для исходной ориентации относительно системы координат прослушивателя. |
SetSourcePosition Задает положение звука относительно прослушивателя. |
SetSourceSampleRate Перенастраивает голос для использования исходных данных с частотой выборки, отличной от частоты, указанной при создании голоса. |
SetVolume Задает общий уровень громкости для голоса. |
Запуск Начинает потребление и обработку звука голосом. Доставляет результат любому подключенному субмикксному или мастер-классному голосу, а также на устройство вывода. |
StartEngine Запускает поток обработки звука. |
Остановить Прекращает потребление звука текущим голосом. |
StopEngine Останавливает поток обработки звука. |
SubmitSourceBuffer Добавляет новый звуковой буфер в очередь голосовых функций. |
UnlockForProcess Освобождает переменные, выделенные с помощью метода LockForProcess. |
Отмена регистрацииForCallbacks Удаляет указатель IXAudio2EngineCallback из списка обратных вызовов обработчика XAudio2. |
ValidateFormatDefault Проверяет, попадает ли аудиоформат в поддерживаемые диапазоны по умолчанию. |
ValidateFormatPair Проверяет, поддерживает ли XAPO конфигурацию пары форматов входных и выходных данных. |
X3DAudioCalculate Вычисляет параметры DSP относительно трехмерных параметров. |
X3DAudioInitialize Задает все глобальные трехмерные звуковые константы. |
XAPOAlloc Макрос выделения памяти, используемый методами IXAPO, которые должны выделять структуры произвольного размера, которые впоследствии возвращаются в приложение. |
XAPOFree Макрос, используемый для освобождения памяти, выделенной с помощью макроса XAPOAlloc. |
XAudio2AmplitudeRatioToDecibels Встроенная функция, которая преобразует значение коэффициента амплитуды в децибеловое значение. |
XAudio2Create Создает новый объект XAudio2 и возвращает указатель на его интерфейс IXAudio2. |
XAudio2CreateReverb Создает новый объект реверберации аудиообъекта (APO) и возвращает указатель на него. |
XAudio2CreateVolumeMeter Создает новый объект обработки звука счетчика громкости (APO) и возвращает указатель на него. |
XAudio2CutoffFrequencyToOnePoleCoefficient Встроенная функция, которая преобразует частоты отсечения фильтра, выраженные в герцах, в коэффициенты фильтра, используемые с элементом Frequency структуры XAUDIO2_FILTER_PARAMETERS. |
XAudio2CutoffFrequencyToRadians Встроенная функция, которая преобразует частоты отсечения фильтра, выраженные в герцах, в значения частоты радиана, используемые в элементе Frequency структуры XAUDIO2_FILTER_PARAMETERS. |
XAudio2DecibelsToAmplitudeRatio Встроенная функция, которая преобразует децибеловое значение в значение коэффициента амплитуды. |
XAudio2FrequencyRatioToSemitones Встроенная функция, преобразующая значение коэффициента частоты в значение полутона. |
XAudio2RadiansToCutoffFrequency Встроенная функция, преобразующая из радиановых частот, используемых в XAUDIO2_FILTER_PARAMETERS обратно в абсолютные частоты в герцах. |
XAudio2SemitonesToFrequencyRatio Встроенная функция, преобразующая значение полутона в значение коэффициента частоты. |
Интерфейсы
IXAPO Интерфейс объекта обработки звука, который используется в цепочке эффектов XAudio2. |
IXAPOHrtfParameters Интерфейс, используемый для задания параметров, управляющих применением функции передачи, связанной с головой (HRTF), к звуку. |
IXAPOParameters Необязательный интерфейс, позволяющий XAPO использовать параметры, зависящие от эффекта. |
IXAudio2 IXAudio2 — это интерфейс для объекта XAudio2, который управляет всеми состояниями обработчика аудио, потоком обработки звука, голосовой графом и т. д. |
IXAudio2EngineCallback Интерфейс IXAudio2EngineCallback содержит методы, которые уведомляют клиента, когда в подсистеме IXAudio2 происходят определенные события. |
IXAudio2MasteringVoice Для представления устройства вывода звука используется голос мастеринга. |
IXAudio2SourceVoice Используйте исходный голос для отправки звуковых данных в конвейер обработки XAudio2. |
IXAudio2SubmixVoice Подмиксный голос используется в основном для повышения производительности и обработки эффектов. |
IXAudio2Voice IXAudio2Voice представляет базовый интерфейс, на основе которого являются производные IXAudio2SourceVoice, IXAudio2SubmixVoice и IXAudio2MasteringVoice. Перечисленные ниже методы являются общими для всех голосовых подклассов. |
IXAudio2VoiceCallback Интерфейс IXAudio2VoiceCallback содержит методы, которые уведомляют клиента, когда в заданном объекте IXAudio2SourceVoice происходят определенные события. |
Структуры
FXECHO_INITDATA Параметры инициализации для использования с XAPOFX FXECHO. |
FXECHO_PARAMETERS Параметры для использования с XAPOFX FXECHO. |
FXEQ_PARAMETERS Параметры для использования с XAPO FXEQ. |
FXMASTERINGLIMITER_PARAMETERS Параметры для использования с XAPO FXMasteringLimiter. |
FXREVERB_PARAMETERS Параметры для использования с XAPO FXReverb. |
HrtfApoInit Задает параметры, используемые для инициализации пространственного звука HRTF. |
HrtfDirectivity Дескриптор базового шаблона направления. Описывает тип направленности, применяемой к звуку. |
HrtfDirectivityCardioid Описывает шаблон направления кардиоид. |
HrtfDirectivityCone Описывает конусную прямолинейность. |
HrtfDistanceDecay Описывает поведение затухания на основе расстояния. |
HrtfOrientation Указывает ориентацию объекта прямой способности HRTF. |
HrtfPosition Представляет позицию в трехмерном пространстве с использованием правой системы координат. |
X3DAUDIO_CONE Задает направление для одноканального излучателя, отличного от LFE, путем масштабирования поведения DSP в соответствии с ориентацией излучателя. |
X3DAUDIO_DISTANCE_CURVE Определяет явную кусковую кривую, составленную из линейных сегментов, напрямую определяющую поведение DSP относительно нормализованного расстояния. |
X3DAUDIO_DISTANCE_CURVE_POINT Определяет параметр DSP на заданном нормализованном расстоянии. |
X3DAUDIO_DSP_SETTINGS Получает результаты из вызова X3DAudioCalculate. |
X3DAUDIO_EMITTER Определяет одноточечный или многоточечный трехмерный источник звука, используемый с произвольным количеством звуковых каналов. |
X3DAUDIO_LISTENER Определяет точку приема трехмерного звука. |
XAPO_LOCKFORPROCESS_PARAMETERS Определяет параметры буфера потока, которые остаются постоянными, пока XAPO заблокирован. Используется с методом IXAPO::LockForProcess. |
XAPO_PROCESS_BUFFER_PARAMETERS Определяет параметры буфера потока, которые могут изменяться от одного вызова к другому. Используется с методом Process. |
XAPO_REGISTRATION_PROPERTIES Описание общих характеристик XAPO. Используется с IXAPO::GetRegistrationProperties, CXAPOParametersBase::CXAPOParametersBase и CXAPOBase::CXAPOBase. |
XAUDIO2_BUFFER Представляет буфер аудиоданных, используемый с IXAudio2SourceVoice::SubmitSourceBuffer. |
XAUDIO2_BUFFER_WMA Используется с IXAudio2SourceVoice::SubmitSourceBuffer при отправке данных xWMA. |
XAUDIO2_DEBUG_CONFIGURATION Содержит новую глобальную конфигурацию отладки для XAudio2. Используется с функцией SetDebugConfiguration. |
XAUDIO2_EFFECT_CHAIN Определяет цепочку эффектов. |
XAUDIO2_EFFECT_DESCRIPTOR Содержит сведения о XAPO для использования в цепочке эффектов. |
XAUDIO2_FILTER_PARAMETERS Определяет параметры фильтра для исходного голоса. |
XAUDIO2_PERFORMANCE_DATA Содержит сведения о производительности. (XAUDIO2_PERFORMANCE_DATA) |
XAUDIO2_SEND_DESCRIPTOR Определяет целевой голос, который является целевым объектом для отправки с другого голоса, и указывает, следует ли использовать фильтр. |
XAUDIO2_VOICE_DETAILS Содержит сведения о флагах создания, каналах ввода и частоте выборки голоса. |
XAUDIO2_VOICE_SENDS Определяет набор голосов для получения данных из одного выходного голоса. |
XAUDIO2_VOICE_STATE Возвращает текущее состояние голоса и данные о положении курсора. |
XAUDIO2FX_REVERB_I3DL2_PARAMETERS Описание параметров I3DL2 (interactive 3D Audio Rendering Guidelines Level 2.0) для использования в функции ReverbConvertI3DL2ToNative. |
XAUDIO2FX_REVERB_PARAMETERS Описание параметров для использования в APO реверберации. |
XAUDIO2FX_VOLUMEMETER_LEVELS Описание параметров для использования с APO счетчика томов. |