2017-11-16 14 views
0

Ich entwickle derzeit eine Webanwendung mit der WebkitSpeechRecognition API. Das Problem ist, dass wenn ich zuerst die API mit .start() initialisiere und schreibe in mein Mikrofon, dauert es normalerweise mehr als 20 Sekunden, bis das erste .onresult ausgelöst wird. In dieser Zwischenzeit möchte ich dem Benutzer mitteilen, dass das Tool hochgefahren ist und ihm sagen, dass er mit dem Sprechen beginnen kann. Leider wird ein Ergebnis nur dann ausgelöst, wenn eine Spracheingabe erfolgt, und nicht, wenn der Benutzer geduldig wartet, bis die Initialisierung beendet ist. Gibt es eine Möglichkeit zu überprüfen, ob die Erkennung bereit ist?Überprüfen Sie, ob Chrome WebkitSpeechRecognition initialisiert ist?

Vielen Dank.

Antwort

0

gesetzt kontinuierliche zu falsch auf der Initialisierung

Beispiel unten sehen

if ('webkitSpeechRecognition' in window) { 
       var recognition = new webkitSpeechRecognition(); 
       recognition.continuous = false; 
       recognition.interimResults = false; 
       recognition.onstart = function() { $('#modalLoadText').hide(); $('#modalListenText').show(); $('#myModal').modal('show'); console.log("Start"); } 
       recognition.onresult = function (event) { console.log("Finish"); } 
       recognition.onerror = function (event) { console.log("Error"); } 
       recognition.onend = function() { $('#modalLoadText').show(); $('#modalListenText').hide(); $('#myModal').modal('hide'); console.log("End"); } 
      } 
Verwandte Themen