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
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: