【发布时间】:2016-03-12 23:26:58
【问题描述】:
我的语音识别文本区域已全部设置好,因此我可以对文本区域说话
<span id="button" onclick="toggleStartStop()">CLICK ME!</span>
<script type="text/javascript">
var recognizing;
var recognition = new webkitSpeechRecognition();
recognition.continuous = true;
recognition.onresult = function (event) {
for (var i = event.resultIndex; i < event.results.length; ++i) {
if (event.results[i].isFinal) {
TEXTAREA.value += event.results[i][0].transcript;
}
}
}
function reset() {
recognizing = false;
button.innerHTML = "Click to Speak";
}
function toggleStartStop() {
if (recognizing) {
recognition.stop();
reset();
} else {
recognition.start();
recognizing = true;
button.innerHTML = "Click to Stop";
}
function speak(text, callback) {
var u = new SpeechSynthesisUtterance();
u.text = text;
u.lang = 'en-US';
u.onend = function () {
if (callback) {
callback();
}
};
u.onerror = function (e) {
if (callback) {
callback(e);
}
};
speechSynthesis.speak(u);
}
}
</script>
但我正在尝试向它添加语音指示,就像谷歌的语音搜索一样。
http://www.stateofdigital.com/wp-content/uploads/2015/04/google-voice-search.png
我已经搜索了我能想到的所有内容,只找到语音搜索的结果,与来自谷歌的输入级别指示(如根据你说话的音量增大的圆圈)无关。所以我想我会问,我该怎么做呢?
此外,我发现的所有语音识别教程都是我能做的最好的,我对 js 了解不多。所以另一个问题是如何在我说话时输入我输入的代码,我现在的方式它只会在我暂停时插入文本。
【问题讨论】:
标签: javascript google-chrome voice-recognition