struktur XAUDIO2FX_REVERB_PARAMETERS (xaudio2fx.h)
Menjelaskan parameter untuk digunakan dalam APO reverb.
Sintaks
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;
Anggota
WetDryMix
Persentase output yang akan digaungkan. Nilai yang diizinkan adalah dari 0 hingga 100.
ReflectionsDelay
Waktu penundaan refleksi pertama relatif terhadap jalur langsung. Rentang yang diizinkan adalah dari 0 hingga 300 milidetik.
ReverbDelay
Penundaan reverb relatif terhadap refleksi pertama. Rentang yang diizinkan adalah dari 0 hingga 85 milidetik.
RearDelay
Penundaan untuk output belakang kiri dan output belakang kanan. Rentang yang diizinkan adalah dari 0 hingga 5 milidetik.
SideDelay
Penundaan untuk output sisi kiri dan output sisi kanan. Rentang yang diizinkan adalah dari 0 hingga 5 milidetik.
PositionLeft
Posisi input kiri dalam ruang simulasi relatif terhadap pendengar. Dengan PositionLeft diatur ke nilai minimum, input kiri ditempatkan dekat dengan pendengar. Dalam posisi ini, refleksi awal dominan, dan pembusukan gaung diatur kembali di bidang suara dan dikurangi dalam amplitudo. Dengan PositionLeft diatur ke nilai maksimum, input kiri ditempatkan pada jarak maksimum dari pendengar di dalam ruang simulasi. PositionLeft tidak memengaruhi waktu pembusukan gaung (liveness ruangan), hanya posisi sumber yang jelas yang relatif terhadap pendengar. Rentang yang diizinkan adalah dari 0 hingga 30 (tanpa unit).
PositionRight
Sama seperti PositionLeft, tetapi hanya memengaruhi input yang tepat. Rentang yang diizinkan adalah dari 0 hingga 30 (tanpa unit).
PositionMatrixLeft
Memberikan kesan jarak yang lebih besar atau kurang dari sumber ke pendengar. Rentang yang diizinkan adalah dari 0 hingga 30 (tanpa unit).
PositionMatrixRight
Memberikan kesan jarak yang lebih besar atau kurang dari sumber ke pendengar. Rentang yang diizinkan adalah dari 0 hingga 30 (tanpa unit).
EarlyDiffusion
Mengontrol karakter pantulan dinding individu. Atur ke nilai minimum untuk mensimulasikan permukaan datar keras dan ke nilai maksimum untuk mensimulasikan permukaan difus. Rentang yang diizinkan adalah dari 0 hingga 15 (tanpa unit).
LateDiffusion
Mengontrol karakter reverberasi dinding individu. Atur ke nilai minimum untuk mensimulasikan permukaan datar keras dan ke nilai maksimum untuk mensimulasikan permukaan difus. Rentang yang diizinkan adalah dari 0 hingga 15 (tanpa unit).
LowEQGain
Menyesuaikan waktu pembuangan frekuensi rendah relatif terhadap waktu pembuangan pada 1 kHz. Nilai sesuai dengan dB perolehan sebagai berikut:
Nilai | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Perolehan (dB) | -8 | -7 | -6 | -5 | -4 | -3 | -2 | -1 | 0 | +1 | +2 | +3 | +4 |
LowEQCutoff
Mengatur frekuensi sudut filter low pass yang dikontrol oleh parameter LowEQGain . Nilai sesuai dengan frekuensi dalam Hz sebagai berikut:
Nilai | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
---|---|---|---|---|---|---|---|---|---|---|
Frekuensi (Hz) | 50 | 100 | 150 | 200 | 250 | 300 | 350 | 400 | 450 | 500 |
Rentang yang diizinkan adalah dari 0 hingga 9 (tidak ada unit).
HighEQGain
Menyesuaikan waktu pembuangan frekuensi tinggi relatif terhadap waktu pembuangan pada 1 kHz. Ketika diatur ke nol, frekuensi tinggi membusuk pada tingkat yang sama dengan 1 kHz. Ketika diatur ke nilai maksimum, frekuensi tinggi membusuk pada tingkat yang jauh lebih cepat daripada 1 kHz.
Nilai | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
---|---|---|---|---|---|---|---|---|---|
Perolehan (dB) | -8 | -7 | -6 | -5 | -4 | -3 | -2 | -1 | 0 |
Rentang yang diizinkan adalah dari 0 hingga 8 (tanpa unit).
HighEQCutoff
Mengatur frekuensi sudut filter pass tinggi yang dikontrol oleh parameter HighEQGain . Nilai sesuai dengan frekuensi dalam kHz sebagai berikut:
Nilai | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Frekuensi (kHz) | 1 | 1,5 | 2 | 2.5 | 3 | 3,5 | 4 | 4,5 | 5 | 5.5 | 6 | 6.5 | 7 | 7.5 | 8 |
Rentang yang diizinkan adalah dari 0 hingga 14 (tanpa unit).
RoomFilterFreq
Mengatur frekuensi sudut filter low pass untuk efek ruangan. Rentang yang diizinkan adalah dari 20 hingga 20.000 Hz.
RoomFilterMain
Mengatur tingkat intensitas pita pass dari filter low-pass untuk pantulan awal dan gaung bidang akhir. Rentang yang diizinkan adalah dari -100 hingga 0 dB.
RoomFilterHF
Mengatur intensitas filter low-pass untuk pantulan awal dan gaung bidang akhir pada frekuensi sudut (RoomFilterFreq). Rentang yang diizinkan adalah dari -100 hingga 0 dB.
ReflectionsGain
Menyesuaikan intensitas refleksi awal. Rentang yang diizinkan adalah dari -100 hingga 20 dB.
ReverbGain
Menyesuaikan intensitas gema. Rentang yang diizinkan adalah dari -100 hingga 20 dB.
DecayTime
Reverberation decay time pada 1 kHz. Ini adalah waktu ketika sinyal input skala penuh membusuk sebesar 60 dB. Rentang yang diizinkan adalah dari 0,1 hingga detik tak terbatas.
Density
Mengontrol kepadatan modal di reverberasi bidang akhir. Untuk spasi tanpa warna, Kepadatan harus diatur ke nilai maksimum (100). Saat Kepadatan menurun, suara menjadi berongga (difilter sisir). Ini adalah efek yang dapat berguna jika Anda mencoba memodelkan silo. Rentang yang diizinkan sebagai persentase adalah dari 0 hingga 100.
RoomSize
Ukuran ruang akustik yang jelas. Rentang yang diizinkan adalah dari 1 hingga 100 kaki.
DisableLateField
Jika diatur ke TRUE, menonaktifkan perhitungan refleksi bidang terlambat. Menonaktifkan perhitungan refleksi bidang terlambat menghasilkan penghematan waktu CPU yang signifikan.
Keterangan
Semua parameter yang terkait dengan laju pengambilan sampel atau waktu relatif terhadap suara 48kHz dan harus diskalakan untuk digunakan dengan laju pengambilan sampel lainnya. Misalnya, mengatur ReflectionsDelay ke 300ms memberikan penundaan 300ms yang sebenarnya ketika gaung dihosting dalam suara 48kHz, tetapi menjadi penundaan 150ms saat dihosting dalam suara 24kHz.
Persyaratan Platform
Windows 10 (XAudio2.9); Windows 8, Windows Phone 8 (XAudio 2.8); DirectX SDK (XAudio 2.7)Persyaratan
Persyaratan | Nilai |
---|---|
Header | xaudio2fx.h |