簡體   English   中英

語音識別麥克風不工作

[英]Speech Recognition Microphone is not working

你能告訴我為什么我的麥克風不工作嗎? 當我在 app.js 文件中進行一些更正時,我可以看到麥克風閃爍兩次然后死亡。 我相信麥克風已打開。 任何建議如何解決這個問題? 謝謝

這是我的代碼:

const msgEl = document.getElementById('msg')

window.SpeechRecognition = window.SpeechRecognition ||
window.webkitSpeechRecognition;

let recognition = new window.SpeechRecognition()


// start recognition
recognition.start();

function onSpeak(e) {
  const msg = e.results[0][0].transcript;
  console.log(msg)
  
}

recognition.addEventListener('result', onSpeak);

它正在工作,但默認情況下,識別服務不是連續的,它將在單個結果或超時后結束。 因此,如果您需要連續的結果,您應該將該屬性設置為false

let recognition = new window.SpeechRecognition()
recognition.continuous = true;

但是現在每次有新結果時都會將新結果附加到識別列表中,因此您必須修改打印結果的方式:

function onSpeak(e) {
    let msg = e.results[e.results.length-1][0].transcript;
    console.log(msg)
}

如果你不希望它在沒有活動的情況下超時結束,你可以試試這個:

recognition.onend = function() {
    console.log('Speech recognition has stopped. Starting again ...');
    recognition.start();
}

參考:

https://developer.mozilla.org/en-US/docs/Web/API/SpeechRecognition https://developer.mozilla.org/en-US/docs/Web/API/SpeechRecognition/continuous

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM