Partilhar via


KSNODETYPE_ACOUSTIC_ECHO_CANCEL

O nó KSNODETYPE_ACOUSTIC_ECHO_CANCEL representa um controle AEC (cancelamento de eco acústico). Um nó AEC tem conexões para dois fluxos de entrada e dois fluxos de saída. Um par de entrada/saída é usado para o fluxo de captura e o outro par de entrada/saída é usado para o fluxo de renderização. Os fluxos capture-output e render-input têm o mesmo formato. Os fluxos de entrada de captura e de renderização podem ter um número diferente de canais e taxas de exemplo diferentes. No entanto, em uma implementação típica, os dois fluxos têm a mesma taxa de amostragem ou uma combinação, como 16 kHz e 48 kHz ou 11,025 kHz e 44,1 kHz, em que uma taxa de amostra é um múltiplo inteiro do outro.

Um nó AEC deve numerar seus pinos lógicos com as IDs de pino do arquivo de cabeçalho Ksmedia.h, que são mostradas na tabela a seguir.

Parâmetro pin ID Significado

KSNODEPIN_AEC_RENDER_IN

Pino de coletor (entrada de nó) para fluxo de renderização.

KSNODEPIN_AEC_RENDER_OUT

Pino de origem (saída do nó) para fluxo de renderização.

KSNODEPIN_AEC_CAPTURE_IN

Pino do coletor (entrada de nó) para fluxo de captura.

KSNODEPIN_AEC_CAPTURE_OUT

Pino de origem (saída do nó) para fluxo de captura.

Observe que os pinos na tabela anterior são pinos lógicos no nó, que são usados exclusivamente para especificar conexões internas ao filtro, em vez de pinos externos no filtro, que são usados para se conectar a outros filtros. Para obter mais informações, consulte PCCONNECTION_DESCRIPTOR.

Para obter informações sobre como um filtro que contém um nó AEC pode fornecer suporte para aplicativos DirectSound full-duplex, consulte DirectSound Capture Effects.

Quando um filtro que contém um nó AEC é criado ou o nó é redefinido, o nó é configurado inicialmente para operar no modo de passagem.

Um nó KSNODETYPE_ACOUSTIC_ECHO_CANCEL deve dar suporte às seguintes propriedades para habilitar a aceleração de hardware:

KSPROPERTY_AUDIO_CPU_RESOURCES

KSPROPERTY_AUDIO_ALGORITHM_INSTANCE

KSPROPERTY_TOPOLOGYNODE_ENABLE

KSPROPERTY_TOPOLOGYNODE_RESET

A propriedade KSPROPERTY_TOPOLOGYNODE_ENABLE é usada para habilitar e desabilitar um nó AEC. Quando desabilitado, o nó opera no modo de passagem; ou seja, permite que os fluxos de renderização e captura passem pelo nó sem modificação.

Um nó KSNODETYPE_ACOUSTIC_ECHO_CANCEL também pode dar suporte às seguintes propriedades opcionais para fornecer recursos adicionais de controle e monitoramento:

KSPROPERTY_AEC_MODE

KSPROPERTY_AEC_NOISE_FILL_ENABLE

KSPROPERTY_AEC_STATUS