I'm trying to create a Progressive Web App and I need to implement a continuous speech recognition function in it. So far it works fine on Chrome Desktop application but it's not working on my mobile. It doesn't even ask for microphone permission.
window.SpeechRecognition =
window.webkitSpeechRecognition || window.SpeechRecognition;
let finalTranscript = "";
let recognition = new window.SpeechRecognition();
//morjs.defineMode("smartjava", [".", "-", "", " ", "|"]);
//morjs.mode("smartjava", [".", "-", "", " ", "|"]);
recognition.interimResults = true;
recognition.maxAlternatives = 10;
recognition.continuous = true;
recognition.onresult = event => {
let interimTranscript = "";
for (let i = event.resultIndex, len = event.results.length; i < len; i++) {
let transcript = event.results[i][0].transcript;
if (event.results[i].isFinal) {
console.log(transcript);
morse(transcript);
// var encoded = morjs.encode({ message: transcript, mode: "simple" });
finalTranscript += transcript;
// var toPlay = playMorseCode(encoded);
// navigator.mozVibrate(toPlay);
} else {
//console.log(transcript);
//morse(transcript);
// var encoded = morjs.encode({ message: transcript, mode: "simp;e" });
interimTranscript += transcript;
// var toPlay = playMorseCode(encoded);
// navigator.mozVibrate(toPlay);
}
}
document.querySelector("test").innerHTML =
finalTranscript + '<i style="color:#ddd;">' + interimTranscript + "</>";
};
recognition.start();
Depends on which browser you are using on mobile. At the moment it only works for Chrome on Android:
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.