Bagikan melalui


Efek Penangkapan DirectSound

DirectSound 8 menambahkan beberapa fitur baru untuk mengaktifkan dan mengontrol efek pihak ketiga selama pengambilan audio. Versi DirectSound ini dan yang lebih baru mendukung dua efek pengambilan berikut:

  • Pembatalan gema akustik (AEC)

  • Penekanan kebisingan (NS)

Dalam aplikasi audio dupleks penuh seperti konferensi telepon, gema aliran render yang dihasilkan melalui speaker diambil di mikrofon yang menghasilkan aliran pengambilan. Setelah mencirikan pantulan suara di ruangan atau lingkungan fisik lainnya, sistem dupleks penuh menggunakan AEC untuk memantau aliran render untuk membatalkan gema yang ditambahkan ke aliran tangkapan. Sistem selanjutnya dapat meningkatkan kualitas aliran tangkapan dengan menggunakan NS untuk mendeteksi lonjakan kebisingan dan menghapusnya dari aliran.

Aplikasi DirectSound dupleks penuh dapat menggunakan antarmuka IDirectSoundCaptureFXAec dan IDirectSoundCaptureFXNoiseSuppress untuk mengontrol efek AEC dan NS. Metode IDirectSoundCaptureBuffer::GetObjectInPath mengambil pointer ke objek dengan antarmuka ini. Fungsi DirectSoundFullDuplexCreate membuat objek IDirectSoundCaptureBuffer , dan parameter yang diteruskan pemanggil ke fungsi ini termasuk array struktur DSCEFFECTDESC. Array menentukan efek yang akan diaktifkan dalam buffer pengambilan. Anggota guidDSCFXClass dari setiap struktur dalam array berisi GUID yang menentukan efek: AEC atau NS. Nama DirectSound untuk setiap GUID diperlihatkan dalam tabel berikut, bersama dengan nama KS untuk nilai GUID yang sama. Untuk detailnya, lihat dokumentasi DirectX 8.0 SDK.

Nama GUID DirectSound Nama GUID KS

GUID_DSCFX_CLASS_AEC

KSNODETYPE_ACOUSTIC_ECHO_CANCEL

GUID_DSCFX_CLASS_NS

KSNODETYPE_NOISE_SUPPRESS

Di Microsoft Windows XP dan yang lebih baru, Anda dapat mengekspos efek pengambilan yang dipercepat perangkat keras perangkat audio Anda ke aplikasi DirectSound. Selain itu, filter sistem AEC (Aec.sys) menyediakan emulasi perangkat lunak efek AEC dan NS.

Topik-topik ini dibahas di sisa bagian ini:

Mengekspos Efek Pengambilan Hardware-Accelerated

Filter Sistem AEC