Práticas recomendadas para áudio

Esta página contém recomendações sobre como fornecer dados de voz à API Google Assistente. Essas diretrizes foram criadas para aumentar a eficiência e a precisão, bem como os tempos de resposta razoáveis do serviço.

Pré-processamento de áudio

É melhor fornecer áudio que seja o mais limpo possível, usando um microfone de boa qualidade e bem posicionado. No entanto, aplicar ao áudio um processamento de sinal de redução de ruídos antes de enviá-lo ao serviço geralmente reduz a precisão do reconhecimento. O serviço foi projetado para lidar com áudios com ruídos.

Para os melhores resultados:

  • Posicione o microfone o mais próximo possível do usuário, principalmente quando houver ruído de fundo.
  • evite recortar o áudio;
  • não use controle de ganho automático (AGC);
  • todo o processamento de redução de ruído deve ser desativado.

Idealmente:

  • O nível de áudio precisa ser calibrado para que o sinal de entrada não seja cortado e os níveis de pico de áudio de fala atinjam aproximadamente -20 a -10 dBFS.
  • O dispositivo precisa exibir características de amplitude versus frequência aproximadas (+- 3 dB 100 Hz a 8.000 Hz).
  • A distorção harmônica total precisa ser inferior a 1% de 100 Hz a 8.000 Hz com um nível de entrada de SPL de 90 dB.

Taxa de amostragem

Se possível, defina a taxa de amostragem da fonte de áudio como 16.000 Hz. Caso contrário, defina sample_rate_hertz para corresponder à taxa de amostragem nativa da fonte de áudio (em vez de fazer uma nova amostragem).

Tamanho do frame

O Google Assistente reconhece o áudio ao vivo quando ele é capturado de um microfone. O stream de áudio precisa ser dividido em frames e enviado em mensagens AssistRequest consecutivas. Qualquer tamanho de frame é aceitável. Frames maiores são mais eficientes, mas aumentam a latência. Um frame com tamanho de 100 milissegundos é recomendado como um bom equilíbrio entre latência e eficiência.