Compartilhar via


Visão geral do XAPOFX

XAPOFX é uma coleção de efeitos de áudio que implementa as interfaces XAPO para uso no XAudio2. XAPOFX contém vários efeitos e um mecanismo comum para criar instâncias de efeito.

Efeitos incluídos

A tabela a seguir descreve os efeitos incluídos em XAPOFX.

Efeito Descrição Estrutura de parâmetros Constantes de parâmetro Requisitos
FXECHO Um efeito de eco. FXECHO_PARAMETERS Constantes FXECHO Só dá suporte a formatos de áudio FLOAT32.
FXEQ Um equalizador de quatro bandas. FXEQ_PARAMETERS Constantes FXEQ Só dá suporte a formatos de áudio FLOAT32. A taxa de exemplo deve estar entre 22.000 Hz e 48.000 Hz.
FXMasteringLimiter Um limitador de volume. FXMASTERINGLIMITER_PARAMETERS Constantes FXMASTERINGLIMIT Só dá suporte a formatos de áudio FLOAT32.
FXReverb Um simples efeito reverb.
O XAudio2 também fornece um efeito que implementa o Princeton Digital Reverb que pode ser instanciado com XAudio2CreateReverb.
FXREVERB_PARAMETERS Constantes FXREVERB Só dá suporte a formatos de áudio FLOAT32. Além disso, ele só dá suporte à entrada mono para saída mono e entrada estéreo para saída estéreo.

 

Criando uma instância de um efeito incluído em XAPOFX

O XAPOFX fornece a função CreateFX como um mecanismo comum para criar instâncias de efeito. CreateFX usa o CLSID de um efeito e retorna um ponteiro de interface IUnknown para uma instância do efeito.

Usando XAPOFX em XAudio2

Os efeitos instanciados com CreateFX são usados em XAudio2 anexando-os a vozes. Cada voz XAudio2 tem uma cadeia de efeitos que contém zero ou mais efeitos de áudio. Os dados de áudio enviados para uma voz são passados por cada efeito na cadeia antes de serem enviados para os destinos de saída da voz. A voz usa a saída de cada efeito e a alimenta no próximo efeito na cadeia até que nenhum efeito seja deixado na cadeia. Para anexar um efeito XAPOFX a uma voz XAudio2, preencha uma estrutura XAUDIO2_EFFECT_CHAIN com as informações do efeito e passe-a para IXAudio2Voice::SetEffectChain.

Para obter mais informações sobre cadeias de efeito XAudio2, consulte Efeitos de áudio XAudio2.

Para obter um exemplo de como usar XAPOFX em XAudio2, consulte Como usar XAPOFX em XAudio2.

Efeitos implícitos XAudio2

Além da biblioteca de XAPOs fornecida pelo XAPOFX, o XAudio2 tem efeitos de áudio de reverb e medidor de volume internos. Você pode criar esses efeitos internos com XAudio2CreateReverb e XAudio2CreateVolumeMeter. Confira Como criar uma cadeia de efeitos para obter um exemplo de como usar um desses efeitos internos.

Efeitos de áudio