En esta página, se incluyen recomendaciones para proporcionar datos de voz a la API de Asistente de Google. Estos lineamientos se diseñaron para aumentar la eficiencia y la exactitud, además de obtener tiempos de respuesta razonables del servicio.
Preprocesamiento de audio
Lo ideal es proporcionar un audio lo más limpio posible mediante un micrófono de buena calidad y correctamente ubicado. Sin embargo, la aplicación del procesamiento de la señal de reducción de ruidos al audio antes de enviarlo al servicio generalmente reduce la exactitud del reconocimiento. El servicio está diseñado para manejar audio ruidoso.
Para lograr resultados óptimos, haz lo siguiente:
- Coloca el micrófono lo más cerca posible del usuario, sobre todo cuando hay ruido de fondo.
- Evita el recorte de audio.
- No uses el control automático de ganancia (AGC).
- Todo el procesamiento de reducción de ruidos debe estar inhabilitado.
Lo ideal es:
- El nivel de audio debe calibrarse de modo que la señal de entrada no se recorte, y los niveles máximos de audio de voz alcancen entre -20 y -10 dBFS.
- El dispositivo debe exhibir una amplitud aproximada y plana de características de frecuencia (+-3 dB, 100 Hz a 8000 Hz).
- La distorsión armónica total debe ser inferior al 1% de 100 Hz a 8000 Hz a un nivel de entrada de SPL de 90 dB.
Tasa de muestreo
Si es posible, configura la tasa de muestreo de la fuente de audio en 16,000 Hz. De lo contrario, configura sample_rate_hertz
para que coincida con la tasa de muestreo nativa de la fuente de audio (en lugar de repetir el muestreo).
Tamaño de marco
Asistente de Google reconoce el audio en vivo cuando se captura con un micrófono.
La transmisión de audio debe dividirse en fotogramas y enviarse en mensajes AssistRequest
consecutivos. Se acepta cualquier tamaño de marco. Los fotogramas más grandes son más eficientes, pero agregan latencia. Se recomienda un tamaño de fotogramas de 100 milisegundos para una buena compensación entre la latencia y la eficiencia.