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.
Tópicos relacionados