Compartir a través de


KSNODETYPE_ACOUSTIC_ECHO_CANCEL

El nodo KSNODETYPE_ACOUSTIC_ECHO_CANCEL representa un control AEC (cancelación de eco acústico). Un nodo AEC tiene conexiones para dos flujos de entrada y dos flujos de salida. Se usa un par de entrada/salida para el flujo de captura y el otro par de entrada/salida para el flujo de representación. Los flujos capture-output y render-input tienen el mismo formato. Los flujos de entrada de captura y salida de representación pueden tener un número diferente de canales y diferentes velocidades de muestreo. Sin embargo, en una implementación típica, las dos secuencias tienen la misma frecuencia de muestreo o una combinación, como 16 kHz y 48 kHz o 11,025 kHz y 44,1 kHz, en la que una frecuencia de muestreo es un entero múltiplo del otro.

Un nodo AEC debe numerar sus patillas lógicas con los identificadores de patilla del archivo de encabezado Ksmedia.h, que se muestran en la tabla siguiente.

Parámetro de identificador de anclaje Significado

KSNODEPIN_AEC_RENDER_IN

Pin de receptor (entrada de nodo) para la secuencia de representación.

KSNODEPIN_AEC_RENDER_OUT

Pin de origen (salida de nodo) para la secuencia de representación.

KSNODEPIN_AEC_CAPTURE_IN

Pin de receptor (entrada de nodo) para la secuencia de captura.

KSNODEPIN_AEC_CAPTURE_OUT

Pin de origen (salida del nodo) para la secuencia de captura.

Tenga en cuenta que las patillas de la tabla anterior son patillas lógicas en el nodo, que se usan únicamente para especificar conexiones internas al filtro, en lugar de patillas externas en el filtro, que se usan para conectarse a otros filtros. Para obtener más información, consulte PCCONNECTION_DESCRIPTOR.

Para obtener información sobre cómo un filtro que contiene un nodo AEC puede proporcionar compatibilidad con aplicaciones DirectSound dúplex completas, consulte Efectos de captura de DirectSound.

Cuando se crea un filtro que contiene un nodo AEC o se restablece el nodo, el nodo se configura inicialmente para funcionar en modo de paso a través.

Un nodo KSNODETYPE_ACOUSTIC_ECHO_CANCEL debe admitir las siguientes propiedades para habilitar la aceleración de hardware:

KSPROPERTY_AUDIO_CPU_RESOURCES

KSPROPERTY_AUDIO_ALGORITHM_INSTANCE

KSPROPERTY_TOPOLOGYNODE_ENABLE

KSPROPERTY_TOPOLOGYNODE_RESET

La propiedad KSPROPERTY_TOPOLOGYNODE_ENABLE se usa para habilitar y deshabilitar un nodo AEC. Cuando está deshabilitado, el nodo funciona en modo de paso a través; es decir, permite que los flujos de representación y captura pasen por el nodo sin modificaciones.

Un nodo de KSNODETYPE_ACOUSTIC_ECHO_CANCEL también puede admitir las siguientes propiedades opcionales para proporcionar funcionalidades de control y supervisión adicionales:

KSPROPERTY_AEC_MODE

KSPROPERTY_AEC_NOISE_FILL_ENABLE

KSPROPERTY_AEC_STATUS