DirectSound 캡처 효과
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 효과의 소프트웨어 에뮬레이션을 제공합니다.
이러한 topics 이 섹션의 나머지 부분에서 설명합니다.