Compartilhar via


AECMicArray

Este exemplo usa as APIs Core Audio para capturar um fluxo de voz de alta qualidade. A amostra oferece suporte ao cancelamento de eco acústico (AEC) e ao processamento de matriz de microfone usando o AEC DMO, também chamado de DSP de captura de voz, fornecido pela Microsoft.

Este tópico contém as seções a seguir.

Descrição

Este exemplo demonstra os seguintes recursos.

  • MMDevice para enumeração e seleção de dispositivos multimídia.
  • WASAPI para operações de gerenciamento de fluxo, como iniciar e parar o fluxo, comutação de fluxo.
  • DeviceTopology para enumerar adaptadores de áudio.
  • EndpointVolume controla os níveis de volume das sessões de áudio.

Requisitos

Product Versão
SDK do Windows Windows Vista ou posterior
Visual Studio 2005 (edições não expressas)

 

Baixar o exemplo

Este exemplo está disponível nos seguintes locais.

Localidade Caminho/URL
SDK do Windows \Arquivos de Programas\Microsoft SDKs\Windows\v7.0\Samples\Multimedia\Audio\AECMicArray\...

 

Compilando o exemplo

Para criar o exemplo AecSDKDemo, use as seguintes etapas:

  1. Abra uma janela de comando do SDK.

  2. Digite cd %MSSDK%\Setup.

  3. Execute VCIntegrate.exe.

    A partir deste ponto, as janelas de comando terão as configurações de ambiente adequadas para criar um aplicativo que aproveite o SDK.

  4. Compile o exemplo.

Executando o exemplo

Se você compilar o aplicativo de demonstração com êxito, um arquivo executável AecSDKDemo.exe será gerado. Para executá-lo, digite AecSDKDemo uma janela de comando seguida de argumentos obrigatórios ou opcionais, conforme descrito abaixo.

AecSDKDemo -out mic_out.pcm -mod system_mode [-option value]

A tabela a seguir mostra os argumentos.

Argument Descrição
-out Obrigatório. Especifica o nome do arquivo de saída.
-Mod Obrigatório. Especifica o modo do sistema de captura de voz. Consulte a seção "Configurando o DMO de captura de voz" no Leiame de exemplo para obter detalhes.
-façanha Opcional. Ativa o modo de recurso (1) ou desativado (0).
-ns Opcional. Ativa a supressão de ruído (1) ou desativa (0). O modo de recurso deve estar ativado para especificar isso.
-Agc Opcional. Ativa o AGC digital (1) ou desliga (0). O modo de recurso deve estar ativado para especificar isso.
-CNTRCLIP Opcional. Ativa o recorte central (1) ou desativa (0). O modo de recurso deve estar ativado para especificar isso.
-SPKDEV Opcional. Especifica o índice do dispositivo do alto-falante. Se não for especificado, o usuário será solicitado a selecionar.
-MicDev Opcional. Especifica o índice do dispositivo de microfone. Se não for especificado, o usuário será solicitado a selecionar.
-duração Opcional. Especifica por quanto tempo o aplicativo é executado.

 

Este aplicativo de exemplo não reproduz nenhum sinal. Para executar a demonstração corretamente para os modos habilitados para AEC (modo 0 e 4), os usuários devem reproduzir alguns sinais de áudio através do mesmo dispositivo de alto-falante especificado para o DMO (ou seja, o dispositivo especificado pela opção "-spkdev"), que simula a voz de extremo em um cenário de bate-papo bidirecional. Os usuários podem usar qualquer player para reproduzir quaisquer sinais de áudio. Se não houver nenhum fluxo de renderização ativo no dispositivo de alto-falante selecionado, o DMO não será processado.

Exemplos de SDK que usam as APIs de áudio principais