如何使用WebSpeech API将长句子从语音转换为文本?

时间:2018-11-18 08:12:20

标签: javascript speech-recognition speech-to-text webspeech-api

到目前为止,我已经可以使用Webspeech API将大约4-5个单词从语音转换为文本。

我的来源看起来像这样;

var SpeechRecognition = SpeechRecognition || webkitSpeechRecognition
var recognition = new SpeechRecognition();
recognition.lang = 'en-US';
recognition.interimResults = false;
recognition.maxAlternatives = 1;
document.body.onclick = function() {
  recognition.start();
}

recognition.onresult = function(event) {
  var i = event.results.length-1;

  var j = event.results[i].length-1;
  var text = event.results[i][j].transcript;

  diagnostic.textContent = 'Result received: ' + text + '.';
  console.log('Confidence: ' + event.results[i][j].confidence);
}

recognition.onspeechend = function() {
  recognition.stop();
}

recognition.onerror = function(event) {
  diagnostic.textContent = 'Error occurred in recognition: ' + event.error;
}

因此,当我说出 5-6以外的单词时,我会得到Error occurred in recognition: network error

如果我说的话更少的话,则效果很好

我还尝试设置recognition.continuous变量,因为它的价值不起作用。

我是否无法使用免费的语音转文本API在浏览器中将长语音转换为文本?

如果是的话,请指明方向。

还是应该通过将音频发送到后端将记录的音频转换为后端中的文本?如果可以的话,该怎么做?

0 个答案:

没有答案