estrutura XAUDIO2FX_REVERB_PARAMETERS (xaudio2fx.h)

Descreve os parâmetros para uso no APO reverb.

Sintaxe

typedef struct XAUDIO2FX_REVERB_PARAMETERS {
  float  WetDryMix;
  UINT32 ReflectionsDelay;
  BYTE   ReverbDelay;
  BYTE   RearDelay;
  BYTE   SideDelay;
  BYTE   PositionLeft;
  BYTE   PositionRight;
  BYTE   PositionMatrixLeft;
  BYTE   PositionMatrixRight;
  BYTE   EarlyDiffusion;
  BYTE   LateDiffusion;
  BYTE   LowEQGain;
  BYTE   LowEQCutoff;
  BYTE   HighEQGain;
  BYTE   HighEQCutoff;
  float  RoomFilterFreq;
  float  RoomFilterMain;
  float  RoomFilterHF;
  float  ReflectionsGain;
  float  ReverbGain;
  float  DecayTime;
  float  Density;
  float  RoomSize;
  BOOL   DisableLateField;
} XAUDIO2FX_REVERB_PARAMETERS;

Membros

WetDryMix

Porcentagem da saída que será reverb. Os valores permitidos são de 0 a 100.

ReflectionsDelay

O tempo de atraso da primeira reflexão em relação ao caminho direto. O intervalo permitido é de 0 a 300 milissegundos.

Nota Todos os parâmetros relacionados à taxa de amostragem ou tempo são relativos a uma taxa de amostragem de 48kHz e devem ser dimensionados para uso com outras taxas de amostragem. Consulte a seção comentários abaixo para obter informações adicionais.
 

ReverbDelay

Atraso de reverb em relação à primeira reflexão. O intervalo permitido é de 0 a 85 milissegundos.

Nota Todos os parâmetros relacionados à taxa de amostragem ou tempo são relativos a uma taxa de amostragem de 48kHz e devem ser dimensionados para uso com outras taxas de amostragem. Consulte a seção comentários abaixo para obter informações adicionais.
 

RearDelay

Atraso para a saída traseira esquerda e saída traseira direita. O intervalo permitido é de 0 a 5 milissegundos.

Nota Todos os parâmetros relacionados à taxa de amostragem ou tempo são relativos a uma taxa de amostragem de 48kHz e devem ser dimensionados para uso com outras taxas de amostragem. Consulte a seção comentários abaixo para obter informações adicionais.
 

SideDelay

Atraso para a saída do lado esquerdo e a saída do lado direito. O intervalo permitido é de 0 a 5 milissegundos.

Nota Esse valor tem suporte a partir de Windows 10.
 
Nota Todos os parâmetros relacionados à taxa de amostragem ou tempo são relativos a uma taxa de amostragem de 48kHz e devem ser dimensionados para uso com outras taxas de amostragem. Consulte a seção comentários abaixo para obter informações adicionais.
 

PositionLeft

Posição da entrada esquerda dentro do espaço simulado em relação ao ouvinte. Com PositionLeft definido como o valor mínimo, a entrada à esquerda é colocada perto do ouvinte. Nessa posição, as reflexões iniciais são dominantes, e a decadência de reverb é definida novamente no campo sonoro e reduzida em amplitude. Com PositionLeft definido como o valor máximo, a entrada esquerda é colocada a uma distância máxima do ouvinte dentro da sala simulada. PositionLeft não afeta o tempo de decadência de reverb (vida útil da sala), apenas a posição aparente da origem em relação ao ouvinte. O intervalo permitido é de 0 a 30 (sem unidades).

PositionRight

O mesmo que PositionLeft, mas afetando apenas a entrada certa. O intervalo permitido é de 0 a 30 (sem unidades).

Nota PositionRight é ignorado no modo mono-in/mono-out.
 

PositionMatrixLeft

Dá uma impressão maior ou menor de distância da origem para o ouvinte. O intervalo permitido é de 0 a 30 (sem unidades).

PositionMatrixRight

Dá uma impressão maior ou menor de distância da origem para o ouvinte. O intervalo permitido é de 0 a 30 (sem unidades).

ObservaçãoPositionMatrixRight é ignorado no modo mono-in/mono-out.
 

EarlyDiffusion

Controla o caractere das reflexões de parede individuais. Defina como valor mínimo para simular uma superfície plana dura e para o valor máximo para simular uma superfície difusa. O intervalo permitido é de 0 a 15 (sem unidades).

LateDiffusion

Controla o caractere das reverberações de parede individuais. Defina como valor mínimo para simular uma superfície plana dura e para o valor máximo para simular uma superfície difusa. O intervalo permitido é de 0 a 15 (sem unidades).

LowEQGain

Ajusta o tempo de decadência de frequências baixas em relação ao tempo de decadência em 1 kHz. Os valores correspondem ao banco de dados de ganho da seguinte maneira:

Valor 0 1 2 3 4 5 6 7 8 9 10 11 12
Ganho (dB) -8 -7 -6 -5 -4 -3 -2 -1 0 +1 +2 +3 +4
 
Nota Um valor LowEQGain de 8 resulta no tempo de decadência de frequências baixas ser igual ao tempo de decadência em 1 kHz.
 
O intervalo permitido é de 0 a 12 (sem unidades).

LowEQCutoff

Define a frequência de canto do filtro de passagem baixa controlado pelo parâmetro LowEQGain . Os valores correspondem à frequência no Hz da seguinte maneira:

Valor 0 1 2 3 4 5 6 7 8 9
Frequência (Hz) 50 100 150 200 250 300 350 400 450 500
 

O intervalo permitido é de 0 a 9 (sem unidades).

HighEQGain

Ajusta o tempo de decadência de altas frequências em relação ao tempo de decadência em 1 kHz. Quando definido como zero, as altas frequências se deterioram na mesma taxa que 1 kHz. Quando definido como valor máximo, as altas frequências se deterioram a uma taxa muito mais rápida do que 1 kHz.

Valor 0 1 2 3 4 5 6 7 8
Ganho (dB) -8 -7 -6 -5 -4 -3 -2 -1 0
 

O intervalo permitido é de 0 a 8 (sem unidades).

HighEQCutoff

Define a frequência de canto do filtro de passagem alta controlado pelo parâmetro HighEQGain . Os valores correspondem à frequência em kHz da seguinte maneira:

Valor 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14
Frequência (kHz) 1 1.5 2 2.5 3 3,5 4 4.5 5 5.5 6 6.5 7 7.5 8
 

O intervalo permitido é de 0 a 14 (sem unidades).

RoomFilterFreq

Define a frequência de canto do filtro de passagem baixa para o efeito room. O intervalo permitido é de 20 a 20.000 Hz.

Nota Todos os parâmetros relacionados à taxa de amostragem ou tempo são relativos a uma taxa de amostragem de 48kHz e devem ser dimensionados para uso com outras taxas de amostragem. Consulte a seção comentários abaixo para obter informações adicionais.
 

RoomFilterMain

Define o nível de intensidade da banda de passagem do filtro de passagem baixa para as reflexões iniciais e a reverberação do campo tardio. O intervalo permitido é de -100 a 0 dB.

RoomFilterHF

Define a intensidade do filtro de passagem baixa para as reflexões iniciais e a reverberação de campo tardia na frequência do canto (RoomFilterFreq). O intervalo permitido é de -100 a 0 dB.

ReflectionsGain

Ajusta a intensidade das reflexões iniciais. O intervalo permitido é de -100 a 20 dB.

ReverbGain

Ajusta a intensidade das reverberações. O intervalo permitido é de -100 a 20 dB.

DecayTime

Tempo de decadência de reverberação a 1 kHz. Esse é o momento em que um sinal de entrada em grande escala decai em 60 dB. O intervalo permitido é de 0,1 a segundos infinitos.

Density

Controla a densidade modal na reverberação de campo tardio. Para espaços in colorless, a densidade deve ser definida como o valor máximo (100). À medida que a densidade é reduzida, o som se torna oco (pente filtrado). Esse é um efeito que pode ser útil se você estiver tentando modelar um silo. O intervalo permitido como porcentagem é de 0 a 100.

RoomSize

O tamanho aparente do espaço acústico. O intervalo permitido é de 1 a 100 pés.

DisableLateField

Se definido como TRUE, desabilita os cálculos de reflexão de campo tardio. Desabilitar cálculos de reflexão de campo tardio resulta em uma economia significativa de tempo de CPU.

Nota As versões do SDK do DirectX do XAUDIO2 não dão suporte a esse membro.
 

Comentários

Todos os parâmetros relacionados à taxa de amostragem ou tempo são relativos a uma voz de 48kHz e devem ser dimensionados para uso com outras taxas de amostragem. Por exemplo, definir ReflectionsDelay como 300ms dá um verdadeiro atraso de 300ms quando o reverb é hospedado em uma voz de 48kHz, mas se torna um atraso de 150ms quando hospedado em uma voz de 24kHz.

Requisitos da plataforma

Windows 10 (XAudio2.9); Windows 8, Windows Phone 8 (XAudio 2.8); SDK do DirectX (XAudio 2.7)

Requisitos

Requisito Valor
Cabeçalho xaudio2fx.h

Confira também

Como: Criar uma cadeia de efeitos

IXAudio2Voice::SetEffectParameters

Visão geral do XAPO

Estruturas XAudio

XAudio2CreateReverb