Processamento de áudio

O Microsoft Audio Stack é um conjunto de aprimoramentos otimizados para cenários de processamento de fala. Isso inclui exemplos como reconhecimento de palavras-chave e reconhecimento de fala. Consiste em várias melhorias / componentes que operam no sinal de entrada de áudio:

  • Supressão de ruído - Reduza o nível de ruído de fundo.
  • Beamforming - Localize a origem do som e otimize o sinal de áudio usando vários microfones.
  • Desreverberação - Reduz os reflexos do som de superfícies no ambiente.
  • Cancelamento de eco acústico - Suprima o áudio que está sendo reproduzido fora do dispositivo enquanto a entrada do microfone está ativa.
  • Controle de ganho automático - Ajuste dinamicamente o nível de voz da pessoa para levar em conta alto-falantes suaves, longas distâncias ou microfones não calibrados.

Block diagram of Microsoft Audio Stack's enhancements.

Diferentes cenários e casos de uso podem exigir diferentes otimizações que influenciam o comportamento da pilha de processamento de áudio. Por exemplo, em cenários de telecomunicações, como chamadas telefônicas, é aceitável ter pequenas distorções no sinal de áudio após o processamento ter sido aplicado. Isso ocorre porque os seres humanos podem continuar a entender a fala com alta precisão. No entanto, é inaceitável e perturbador para uma pessoa ouvir sua própria voz em um eco. Isso contrasta com cenários de processamento de fala, onde o áudio distorcido pode afetar negativamente a precisão de um modelo de reconhecimento de fala aprendido por máquina, mas é aceitável ter níveis menores de eco residual.

O processamento é realizado totalmente localmente onde o SDK de fala está sendo usado. Nenhum dado de áudio é transmitido para os serviços de nuvem da Microsoft para processamento pelo Microsoft Audio Stack. A única exceção é para o Serviço de Transcrição de Conversa, onde o áudio bruto é enviado para os serviços de nuvem da Microsoft para processamento.

O Microsoft Audio Stack também alimenta uma ampla gama de produtos Microsoft:

  • Windows - Microsoft Audio Stack é o pipeline de processamento de fala padrão ao usar a categoria de áudio de fala.
  • Dispositivos Microsoft Teams Displays e Microsoft Teams Rooms - Os dispositivos Microsoft Teams Displays e Teams Rooms usam o Microsoft Audio Stack para permitir experiências mãos-livres de alta qualidade baseadas em voz com a Cortana.

Integração com o Speech SDK

O Speech SDK integra o Microsoft Audio Stack (MAS), permitindo que qualquer aplicativo ou produto use seus recursos de processamento de áudio na entrada de áudio. Alguns dos principais recursos do Microsoft Audio Stack disponíveis por meio do SDK de fala incluem:

  • Entrada de microfone em tempo real e entrada de arquivo - O processamento do Microsoft Audio Stack pode ser aplicado à entrada de microfone em tempo real, fluxos e entrada baseada em arquivos.
  • Seleção de aprimoramentos - Para permitir o controle total do seu cenário, o SDK permite desativar aprimoramentos individuais, como desreverberação, supressão de ruído, controle automático de ganho e cancelamento de eco acústico. Por exemplo, se o seu cenário não incluir renderização de áudio de saída que precisa ser suprimido do áudio de entrada, você tem a opção de desativar o cancelamento de eco acústico.
  • Geometrias de microfone personalizadas - O SDK permite que você forneça suas próprias informações de geometria de microfone personalizadas, além de suportar geometrias predefinidas, como matrizes lineares de dois microfones, lineares de quatro microfones e circulares de 7 microfones (consulte mais informações sobre geometrias predefinidas suportadas em Recomendações de matriz de microfone).
  • Ângulos de formação de feixe - Ângulos específicos de formação de feixe podem ser fornecidos para otimizar a entrada de áudio proveniente de um local predeterminado, em relação aos microfones.

Requisitos mínimos para usar o Microsoft Audio Stack

Microsoft Audio Stack pode ser usado por qualquer produto ou aplicativo que possa atender aos seguintes requisitos:

  • Áudio bruto - O Microsoft Audio Stack requer áudio bruto (não processado) como entrada para produzir os melhores resultados. Fornecer áudio que já está processado limita a capacidade da pilha de áudio de executar melhorias em alta qualidade.
  • Geometrias do microfone - As informações de geometria sobre cada microfone no dispositivo são necessárias para executar corretamente todos os aprimoramentos oferecidos pelo Microsoft Audio Stack. As informações incluem o número de microfones, sua disposição física e coordenadas. São suportados até 16 canais de microfone de entrada.
  • Loopback ou áudio de referência - Um canal de áudio que representa o áudio que está sendo reproduzido fora do dispositivo é necessário para executar o cancelamento de eco acústico.
  • Formato de entrada - O Microsoft Audio Stack suporta amostragem descendente para taxas de amostragem que são múltiplos integrais de 16 kHz. É necessária uma taxa de amostragem mínima de 16 kHz. Além disso, os seguintes formatos são suportados: 32-bit IEEE little endian float, 32-bit little endian signed int, 24-bit little endian signed int, 16-bit little endian signed int e 8-bit signed int.

Próximos passos

Usar o SDK de fala para processamento de áudio