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.