Estoy mostrando un gráfico animado mientras SpeechSynthesisUtterance está hablando. Estoy usando la propiedad onend para detectar cuándo ha terminado de hablar para eliminar el gráfico animado. Sin embargo, hay un retraso significativo entre la finalización de la conversación y la activación del evento de un extremo, lo que significa que el gráfico animado continúa reproduciéndose durante aproximadamente 1 segundo aunque la conversación haya finalizado. ¿Es posible eliminar este retraso? El siguiente código es una demostración simple del problema.
let utterance = new SpeechSynthesisUtterance("Approximately a second delay after utterance has finished and the onend event firing"); speechSynthesis.speak(utterance); utterance.onend = function () { console.log("There is a delay before this message appears?");}