DirectSound 8은 오디오 캡처 중에 타사 효과를 사용하도록 설정하고 제어하기 위한 몇 가지 새로운 기능을 추가합니다. 이 이상 버전의 DirectSound는 다음 두 가지 캡처 효과를 지원합니다.
AEC(음향 반향 제거)
NS(노이즈 억제)
전화 회의와 같은 전체 이중 오디오 애플리케이션에서는 스피커를 통해 출력되는 렌더링 스트림의 에코가 캡처 스트림을 생성하는 마이크에서 포착됩니다. 방 또는 기타 물리적 환경에서 사운드 리플렉션의 특징을 지정한 후 전체 이중 시스템은 AEC를 사용하여 렌더링 스트림을 모니터링하여 캡처 스트림에 추가하는 에코를 취소합니다. 시스템은 NS를 사용하여 노이즈 스파이크를 감지하고 스트림에서 제거하여 캡처 스트림의 품질을 더욱 향상시킬 수 있습니다.
전체 이중 DirectSound 애플리케이션은 IDirectSoundCaptureFXAec 및 IDirectSoundCaptureFXNoiseSuppress 인터페이스를 사용하여 AEC 및 NS 효과를 제어할 수 있습니다. IDirectSoundCaptureBuffer::GetObjectInPath 메서드는 이러한 인터페이스를 사용하여 개체에 대한 포인터를 검색합니다. DirectSoundFullDuplexCreate 함수는 IDirectSoundCaptureBuffer 개체를 만들고 호출자가 이 함수에 전달하는 매개 변수에는 DSCEFFECTDESC 구조의 배열이 포함됩니다. 배열은 캡처 버퍼에서 사용하도록 설정할 효과를 지정합니다. 배열의 각 구조체에 있는 guidDSCFXClass 멤버에는 효과를 지정하는 GUID(AEC 또는 NS)가 포함되어 있습니다. 각 GUID의 DirectSound 이름은 동일한 GUID 값에 대한 KS 이름과 함께 다음 표에 나와 있습니다. 자세한 내용은 DirectX 8.0 SDK 설명서를 참조하세요.
| DirectSound GUID 이름 | KS GUID 이름 |
|---|---|
GUID_DSCFX_CLASS_AEC |
|
GUID_DSCFX_CLASS_NS |
Microsoft Windows XP 이상에서는 오디오 장치의 하드웨어 가속 캡처 효과를 DirectSound 애플리케이션에 노출할 수 있습니다. 또한 AEC 시스템 필터(Aec.sys)는 AEC 및 NS 효과의 소프트웨어 에뮬레이션을 제공합니다.
이러한 항목은 이 섹션의 나머지 부분에서 설명합니다.