【发布时间】:2017-06-27 23:23:01
【问题描述】:
我正在开发一个使用 webkitSpeechRecognition 的 JavaScript 应用程序。在我的代码中,我必须将 interimResult 设置为 true,以便用户可以看到应用程序何时找到与口语单词匹配的内容,但我自己想将最终结果用于其他内容,并且两者都应该显示。我尝试了几种方法来做到这一点,但没有成功,包括在单击按钮时调用两个函数,但这只会使一个函数起作用。这是我的算法:
<script type="text/javascript">
var r = document.getElementById('result');
var btn = document.getElementById('btn');
btn.addEventListener('click', startConverting);
function startConverting() {
if ('webkitSpeechRecognition' in window) {
var speechRecognizer = new webkitSpeechRecognition();
speechRecognizer.continuous = true;
speechRecognizer.interimResults = true;
speechRecognizer.lang = "en-GB";
speechRecognizer.start();
var finalTranscripts = '';
speechRecognizer.onresult = function(event) {
if (event.results.length) {
r.innerHTML = event.results[0][0].transcript;
var question = event.results[0][0].transcript;
}
};
speechRecognizer.onerror = function(event) {
};
} else {
r.innerHTML = 'Your browser is not supported.If Google chrome,please upgrade!';
}
}
我没有包含单击按钮时调用两个不同函数的部分,这只是使用 interimResults true 进行转换的原始代码。 任何帮助将不胜感激。 谢谢
【问题讨论】:
标签: javascript speech-recognition speech-to-text google-speech-api