Compartir a través de


Efectos de captura de DirectSound

DirectSound 8 agrega algunas características nuevas para habilitar y controlar efectos de terceros durante la captura de audio. Estas y versiones posteriores de DirectSound admiten los dos efectos de captura siguientes:

  • Cancelación de eco acústico (AEC)

  • Supresión de ruido (NS)

En una aplicación de audio full-dúplex, como las teleconferencias, los ecos de la secuencia de representación que se transmiten a través de los altavoces son recogidos por el micrófono que genera la secuencia de captura. Después de caracterizar las reflexiones de sonido en la sala u otro entorno físico, el sistema dúplex completo usa AEC para supervisar la secuencia de representación para cancelar los ecos que agrega a la secuencia de captura. El sistema puede mejorar aún más la calidad de la secuencia de captura mediante NS para detectar picos de ruido y quitarlos de la secuencia.

Una aplicación DirectSound completamente dúplex puede usar las interfaces IDirectSoundCaptureFXAec e IDirectSoundCaptureFXNoiseSuppress para controlar los efectos AEC y NS. El método IDirectSoundCaptureBuffer::GetObjectInPath recupera punteros a objetos con estas interfaces. La función DirectSoundFullDuplexCreate crea el objeto IDirectSoundCaptureBuffer y los parámetros que pasa el autor de la llamada a esta función incluyen una matriz de estructuras DSCEFFECTDESC. La matriz especifica los efectos que se van a habilitar en el búfer de captura. El miembro guidDSCFXClass de cada estructura de la matriz contiene un GUID que especifica un efecto: AEC o NS. El nombre de DirectSound para cada GUID se muestra en la tabla siguiente, junto con el nombre KS para el mismo valor GUID. Para más información, consulte la documentación del SDK de DirectX 8.0.

Nombre del GUID de DirectSound Nombre del GUID de KS

GUID_DSCFX_CLASS_AEC

KSNODETYPE_ACOUSTIC_ECHO_CANCEL

GUID_DSCFX_CLASS_NS

KSNODETYPE_NOISE_SUPPRESS

En Microsoft Windows XP y versiones posteriores, puede exponer los efectos de captura acelerados por hardware del dispositivo de audio a las aplicaciones Microsoft DirectSound. Además, el filtro del sistema AEC (Aec.sys) proporciona emulación de software de efectos AEC y NS.

Estos temas se tratan en el resto de esta sección:

Exponiendo los efectos de captura de Hardware-Accelerated

Filtro del sistema AEC