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, en especial 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.
Idealmente, sigue estos pasos:
- El nivel de audio debe calibrarse para que la señal de entrada no se recorte y los niveles máximos de audio de voz alcancen aproximadamente de -20 a -10 dBFS.
- El dispositivo debe exhibir una amplitud "plana" frente a características de frecuencia (+- 3 dB, 100 Hz a 8,000 Hz).
- La distorsión armónica total debe ser inferior al 1%, entre 100 Hz y 8,000 Hz, a un nivel de entrada de SPL de 90 dB.
Tasa de muestreo
Si es posible, establece 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 marcos y enviarse en mensajes de AssistRequest
consecutivos. Se acepta cualquier tamaño de marco. Los marcos más grandes son más eficientes, pero agregan latencia. Se recomienda un tamaño de marco de 100 milisegundos para compensar la latencia y la eficiencia.