Compartilhar via


APIs XAudio2

Visão geral da tecnologia de APIs XAudio2.

Para desenvolver APIs XAudio2, você precisa desses cabeçalhos:

Para obter diretrizes de programação para essa tecnologia, consulte:

Classe

 
CXAPOBase

Implementação padrão da interface IXAPO.
CXAPOParametersBase

Implementação padrão da interface IXAPOParameters.

Enumerações

 
HrtfDirectivityType

Indica um dos vários padrões de directividade de estoque.
HrtfDistanceDecayType

Indica um tipo de decaimento baseado em distância aplicado a um som.
HrtfEnvironment

Indica um dos vários tipos de ambiente de estoque.
XAPO_BUFFER_FLAGS

Descreve o conteúdo de um buffer de fluxo.
XAUDIO2_FILTER_TYPE

Indica o tipo de filtro.

Funções

 
AddRef

Adiciona uma referência ao objeto XAudio2.
BeginProcess

Retorna os parâmetros de processo atuais.
CalcInputFrames

Retorna o número de quadros de entrada necessários para gerar o número determinado de quadros de saída.
CalcOutputFrames

Retorna o número de quadros de saída que serão gerados de um determinado número de quadros de entrada.
Commitchanges

Aplica atomicamente um conjunto de operações que são marcadas com um determinado identificador.
CreateFX

Cria uma instância do efeito XAPOFX solicitado.
CreateHrtfApo

Cria uma instância da interface IXAPO para processamento de HRTF (função de transferência relacionada à cabeça).
CreateMasteringVoice

Cria e configura uma voz de domínio.
CreateSourceVoice

Cria e configura uma voz de origem.
CreateSubmixVoice

Cria e configura uma voz de submixagem.
CXAPOBase

Cria uma instância da classe CXAPOBase.
CXAPOParametersBase

Cria uma instância da classe CXAPOParametersBase.
DestroyVoice

Destrói a voz. Se necessário, interrompe a voz e a remove do grafo XAudio2.
DisableEffect

Desabilita o efeito em uma determinada posição na cadeia de efeito da voz.
Descontinuidade

Notifica uma voz XAudio2 de que não há mais buffers vindo após o último que está atualmente em sua fila.
EnableEffect

Habilita o efeito em uma determinada posição na cadeia de efeito da voz.
EndProcess

Notifica CXAPOParametersBase de que o XAPO terminou de acessar os parâmetros atuais do processo.
ExitLoop

Interrompe o loop da voz quando ela atinge o final da região do loop atual.
FlushSourceBuffers

Remove todos os buffers de áudio pendentes da fila de voz.
GetChannelMask

Retorna a máscara de canal para essa voz.
GetChannelVolumes

Retorna os níveis de volume para a voz, por canal.
GetEffectParameters

Retorna os parâmetros específicos do efeito atual de um determinado efeito na cadeia de efeitos da voz.
GetEffectState

Retorna o estado em execução do efeito em uma posição especificada na cadeia de efeitos da voz.
GetFilterParameters

Obtém os parâmetros de filtro da voz.
GetFrequencyRatio

Retorna a taxa de ajuste de frequência da voz.
GetOutputFilterParameters

Retorna os parâmetros de filtro de um dos envios dessa voz.
GetOutputMatrix

Obtém o nível de volume de cada canal da saída final para a voz. Esses canais são mapeados para os canais de entrada de uma voz de destino especificada.
Getparameters

Obtém os valores atuais para quaisquer parâmetros específicos do efeito.
GetPerformanceData

Retorna os detalhes atuais de uso do recurso, como memória disponível ou uso da CPU.
GetRegistrationProperties

Retorna as propriedades de registro de um XAPO.
GetRegistrationPropertiesInternal

Retorna um ponteiro para a estrutura XAPO_REGISTRATION_PROPERTIES que contém as propriedades de registro com as qual o XAPO foi criado.
GetState

Retorna os dados de posição do cursor atual da voz.
GetVoiceDetails

Retorna informações sobre os sinalizadores de criação, os canais de entrada e a taxa de exemplo de uma voz.
GetVolume

Obtém o nível de volume geral atual da voz.
Initialize

Executa qualquer inicialização específica do efeito.
IsInputFormatSupported

Consulta se há suporte para um formato de entrada específico para um determinado formato de saída.
IsLocked

Consulta se o XAPO está bloqueado.
IsOutputFormatSupported

Consulta se há suporte para um formato de saída específico para um determinado formato de entrada.
LockForProcess

Chamado por XAudio2 para bloquear as configurações de entrada e saída de um XAPO, permitindo que ele faça qualquer inicialização final antes que Process seja chamado no thread em tempo real.
OnBufferEnd

Chamado quando a voz termina de processar um buffer.
OnBufferStart

Chamado quando a voz está prestes a começar a processar um novo buffer de áudio.
OnCriticalError

Chamado se ocorrer um erro crítico do sistema que exige que XAudio2 seja fechado e reiniciado.
OnLoopEnd

Chamado quando a voz atinge a posição final de um loop.
OnProcessingPassEnd

Chamado por XAudio2 logo após o término de um passe de processamento de áudio.
OnProcessingPassStart

Chamado por XAudio2 pouco antes de uma passagem de processamento de áudio começar.
OnSetParameters

Chamado por IXAPOParameters::SetParameters para permitir a validação de parâmetro definida pelo usuário.
OnStreamEnd

Chamado quando a voz acaba de reproduzir um fluxo de áudio contíguo.
OnVoiceError

Chamado quando ocorre um erro crítico durante o processamento de voz.
OnVoiceProcessingPassEnd

Chamado logo após o término da passagem de processamento para a voz.
OnVoiceProcessingPassStart

Chamado durante cada passagem de processamento para cada voz, pouco antes de XAudio2 ler dados da fila de buffers da voz.
Parameterschanged

Indica se IXAPOParameters::SetParameters foi chamado desde a última passagem de processamento.
Processo

Executa o código DSP (processamento de sinal digital) do XAPO nos buffers de entrada e saída fornecidos.
ProcessThru

Chamado por uma implementação de IXAPO::P rocess quando um XAPO é desabilitado para processamento por meio do processamento.
QueryInterface

Consultas para uma determinada interface COM no objeto XAudio2.
RegisterForCallbacks

Adiciona um ponteiro IXAudio2EngineCallback à lista de retorno de chamada do mecanismo XAudio2.
Versão

Libera uma referência ao objeto XAudio2.
Redefinir

Redefine variáveis dependentes do histórico de quadros.
ReverbConvertI3DL2ToNative

Função embutida que converte parâmetros I3DL2 (Interactive 3D Audio Rendering Guidelines Level 2.0) em parâmetros XAudio2 nativos.
SetChannelVolumes

Define os níveis de volume para a voz, por canal.
SetDebugConfiguration

Altera as opções globais de log de depuração para XAudio2.
SetEffectChain

Substitui a cadeia de efeitos da voz.
SetEffectParameters

Define parâmetros para um determinado efeito na cadeia de efeitos da voz.
SetEnvironment

Seleciona o ambiente acústico a ser simulado.
SetFilterParameters

Define os parâmetros de filtro da voz.
SetFrequencyRatio

Define a taxa de ajuste de frequência da voz.
SetOutputFilterParameters

Define os parâmetros de filtro em um dos envios dessa voz.
SetOutputMatrix

Define o nível de volume de cada canal da saída final para a voz. Esses canais são mapeados para os canais de entrada de uma voz de destino especificada.
SetOutputVoices

Designa um novo conjunto de vozes submix ou mastering para receber a saída da voz.
Setparameters

Define parâmetros específicos do efeito.
SetSourceGain

Define o valor de ganho de caminho direto personalizado para a posição de origem atual. Válido somente para sons reproduzidos com o tipo de decaimento personalizado HrtfDistanceDecayType.
SetSourceOrientation

Defina a matriz de rotação para a orientação de origem, em relação ao sistema de coordenadas do ouvinte.
SetSourcePosition

Define a posição do som em relação ao ouvinte.
SetSourceSampleRate

Reconfigura a voz para consumir dados de origem em uma taxa de exemplo diferente da taxa especificada quando a voz foi criada.
Setvolume

Define o nível de volume geral para a voz.
Iniciar

Inicia o consumo e o processamento de áudio pela voz. Fornece o resultado para qualquer submix conectado ou vozes de masterização ou para o dispositivo de saída.
StartEngine

Inicia o thread de processamento de áudio.
Parar

Interrompe o consumo de áudio pela voz atual.
StopEngine

Interrompe o thread de processamento de áudio.
SubmitSourceBuffer

Adiciona um novo buffer de áudio à fila de voz.
UnlockForProcess

Desaloca variáveis que foram alocadas com o método LockForProcess.
UnregisterForCallbacks

Remove um ponteiro IXAudio2EngineCallback da lista de retorno de chamada do mecanismo XAudio2.
ValidateFormatDefault

Verifica se um formato de áudio está dentro dos intervalos padrão com suporte.
ValidateFormatPair

Verifica se há suporte para uma configuração de par de formato de entrada e saída pelo XAPO.
X3DAudioCalculate

Calcula as configurações de DSP em relação aos parâmetros 3D.
X3DAudioInitialize

Define todas as constantes de áudio 3D globais.
XAPOAlloc

Macro de alocação de memória usada pelos métodos IXAPO que devem alocar estruturas de tamanho arbitrário que são posteriormente retornadas ao aplicativo.
XAPOFree

Macro usada para liberar memória alocada com a macro XAPOAlloc.
XAudio2AmplitudeRatioToDecibels

Função embutida que converte um valor de taxa de amplitude em um valor de decibéis.
XAudio2Criar

Cria um novo objeto XAudio2 e retorna um ponteiro para sua interface IXAudio2.
XAudio2CreateReverb

Cria um novo objeto de processamento de áudio reverb (APO) e retorna um ponteiro para ele.
XAudio2CreateVolumeMeter

Cria um novo objeto de processamento de áudio do medidor de volume (APO) e retorna um ponteiro para ele.
XAudio2CutoffFrequencyToOnePoleCoefficient

Função embutida que converte de frequências de corte de filtro expressas em hertz para os coeficientes de filtro usados com o membro Frequency da estrutura XAUDIO2_FILTER_PARAMETERS.
XAudio2CutoffFrequencyToRadians

Função embutida que converte de frequências de corte de filtro expressas em hertz para os valores de frequência radiana usados no membro Frequency da estrutura XAUDIO2_FILTER_PARAMETERS.
XAudio2DecibelsToAmplitudeRatio

Função embutida que converte um valor de decibéis em um valor de taxa de amplitude.
XAudio2FrequencyRatioToSemitones

Função embutida que converte um valor de taxa de frequência em um valor semitone.
XAudio2RadiansToCutoffFrequency

Função embutida que converte das frequências radianas usadas em XAUDIO2_FILTER_PARAMETERS de volta para frequências absolutas em hertz.
XAudio2SemitonesToFrequencyRatio

Função embutida que converte um valor de semitone em um valor de taxa de frequência.

Interfaces

 
IXAPO

A interface de um Objeto de Processamento de Áudio que será usado em uma cadeia de efeitos XAudio2.
IXAPOHrtfParameters

A interface usada para definir parâmetros que controlam como a função de transferência relacionada à cabeça (HRTF) é aplicada a um som.
IXAPOParameters

Uma interface opcional que permite que um XAPO use parâmetros específicos do efeito.
IXAudio2

IXAudio2 é a interface do objeto XAudio2 que gerencia todos os estados do mecanismo de áudio, o thread de processamento de áudio, o grafo de voz e assim por diante.
IXAudio2EngineCallback

A interface IXAudio2EngineCallback contém métodos que notificam o cliente quando determinados eventos ocorrem no mecanismo IXAudio2.
IXAudio2MasteringVoice

Uma voz de domínio é usada para representar o dispositivo de saída de áudio.
IXAudio2SourceVoice

Use uma voz de origem para enviar dados de áudio para o pipeline de processamento XAudio2.
IXAudio2SubmixVoice

Uma voz de submixagem é usada principalmente para melhorias de desempenho e processamento de efeitos.
IXAudio2Voice

IXAudio2Voice representa a interface base da qual IXAudio2SourceVoice, IXAudio2SubmixVoice e IXAudio2MasteringVoice são derivados. Os métodos listados abaixo são comuns a todas as subclasses de voz.
IXAudio2VoiceCallback

A interface IXAudio2VoiceCallback contém métodos que notificam o cliente quando determinados eventos ocorrem em um determinado IXAudio2SourceVoice.

Estruturas

 
FXECHO_INITDATA

Parâmetros de inicialização para uso com o FXECHO XAPOFX.
FXECHO_PARAMETERS

Parâmetros para uso com o XAPOFX FXECHO.
FXEQ_PARAMETERS

Parâmetros para uso com o FXEQ XAPO.
FXMASTERINGLIMITER_PARAMETERS

Parâmetros para uso com o FXMasteringLimiter XAPO.
FXREVERB_PARAMETERS

Parâmetros para uso com o FXReverb XAPO.
HrtfApoInit

Especifica os parâmetros usados para inicializar o áudio espacial HRTF.
HrtfDirectivity

Descritor de padrão de directividade base. Descreve o tipo de directividade aplicada a um som.
HrtfDirectivityCardioid

Descreve um padrão de directividade cardioide.
HrtfDirectivityCone

Descreve uma directividade de cone.
HrtfDistanceDecay

Descreve um comportamento de decaimento baseado em distância.
HrtfOrientation

Indica a orientação de um objeto de directivity HRTF.
HrtfPosition

Representa uma posição no espaço 3D, usando um sistema de coordenadas destro.
X3DAUDIO_CONE

Especifica a direcionalidade de um emissor não LFE de canal único escalando o comportamento DSP em relação à orientação do emissor.
X3DAUDIO_DISTANCE_CURVE

Define uma curva explícita em bits composta por segmentos lineares, definindo diretamente o comportamento de DSP em relação à distância normalizada.
X3DAUDIO_DISTANCE_CURVE_POINT

Define uma configuração DSP a uma determinada distância normalizada.
X3DAUDIO_DSP_SETTINGS

Recebe os resultados de uma chamada para X3DAudioCalculate.
X3DAUDIO_EMITTER

Define uma fonte de áudio 3D de ponto único ou de vários pontos que é usada com um número arbitrário de canais de som.
X3DAUDIO_LISTENER

Define um ponto de recepção de áudio 3D.
XAPO_LOCKFORPROCESS_PARAMETERS

Define parâmetros de buffer de fluxo que permanecem constantes enquanto um XAPO está bloqueado. Usado com o método IXAPO::LockForProcess.
XAPO_PROCESS_BUFFER_PARAMETERS

Define parâmetros de buffer de fluxo que podem ser alterados de uma chamada para a próxima. Usado com o método Process.
XAPO_REGISTRATION_PROPERTIES

Descreve as características gerais de um XAPO. Usado com IXAPO::GetRegistrationProperties, CXAPOParametersBase::CXAPOParametersBase e CXAPOBase::CXAPOBase.
XAUDIO2_BUFFER

Representa um buffer de dados de áudio, usado com IXAudio2SourceVoice::SubmitSourceBuffer.
XAUDIO2_BUFFER_WMA

Usado com IXAudio2SourceVoice::SubmitSourceBuffer ao enviar dados xWMA.
XAUDIO2_DEBUG_CONFIGURATION

Contém a nova configuração de depuração global para XAudio2. Usado com a função SetDebugConfiguration.
XAUDIO2_EFFECT_CHAIN

Define uma cadeia de efeitos.
XAUDIO2_EFFECT_DESCRIPTOR

Contém informações sobre um XAPO para uso em uma cadeia de efeitos.
XAUDIO2_FILTER_PARAMETERS

Define parâmetros de filtro para uma voz de origem.
XAUDIO2_PERFORMANCE_DATA

Contém informações de desempenho. (XAUDIO2_PERFORMANCE_DATA)
XAUDIO2_SEND_DESCRIPTOR

Define uma voz de destino que é o destino de um envio de outra voz e especifica se um filtro deve ser usado.
XAUDIO2_VOICE_DETAILS

Contém informações sobre os sinalizadores de criação, os canais de entrada e a taxa de amostragem de uma voz.
XAUDIO2_VOICE_SENDS

Define um conjunto de vozes para receber dados de uma única voz de saída.
XAUDIO2_VOICE_STATE

Retorna o estado atual da voz e os dados de posição do cursor.
XAUDIO2FX_REVERB_I3DL2_PARAMETERS

Descreve os parâmetros I3DL2 (Interactive 3D Audio Rendering Guidelines Level 2.0) para uso na função ReverbConvertI3DL2ToNative.
XAUDIO2FX_REVERB_PARAMETERS

Descreve os parâmetros para uso no APO de reverberação.
XAUDIO2FX_VOLUMEMETER_LEVELS

Descreve os parâmetros para uso com o APO do medidor de volume.