webkitSpeechRecognition está "rezagado" al recopilar resultados

Tenía ganas de probar elWeb Speech API. Copié el código exactamente del artículo, y tengo un problema en el que hablas, pero no pasa nada hasta que vuelves a hablar.

[Violín:http://jsfiddle.net/w75v2tm5/]

JS:

if (!('webkitSpeechRecognition' in window)) {
    //handle error stuff here...
} else {
    var recognition = new webkitSpeechRecognition();
    recognition.continuous = true;
    recognition.interimResults = false;

    recognition.start();

    var final_transcript = '';

    recognition.onresult = function (event) {
        var interim_transcript = '';
        if (typeof (event.results) == 'undefined') {
            recognition.onend = null;
            recognition.stop();
            upgrade();
            return;
        }
        for (var i = event.resultIndex; i < event.results.length; ++i) {
            if (event.results[i].isFinal) {
                final_transcript += event.results[i][0].transcript;
            } else {
                interim_transcript += event.results[i][0].transcript;
            }
        }
        document.getElementsByTagName('div')[0].innerText = final_transcript;
    };

}

Por ejemplo, si dijera "Hola mundo", el <div> que configuré para mostrar los resultados no mostraría "Hola mundo" hasta que dijera algo más o emitiera un sonido. Pero si dijera algo más, ESO no se mostraría hasta que dijera otra cosa OTRA VEZ.

La variable "final_transcript" contiene el resultado ANTERIOR, y no lo que acabo de decir. Está apagado por solo 1.

Para darte una mejor idea ...

Yo: "Hola mundo"

final_transcript = '';

[Espere...]

Yo: "Prueba"

final_transcript = 'Hola mundo'

Y esto simplemente continúa. El código no puede transcribir lo que estoy diciendo como lo estoy diciendo. Muy raro.

¿Alguna idea de por qué esto podría ser?

Respuestas a la pregunta(1)

Su respuesta a la pregunta