我使用webkitSpeechRecognition()
创建自己的小型录音机。
这是一个演示(仅适用于Chrome!)
http://jsfiddle.net/gsu4aod2/
说一句话和
1a。)如果文字正确,点击“添加句子”按钮
1b。)如果文字不正确,请点击“再次说话”按钮
我的问题是我不知道如何“重置”文本。
当我使用stop()
和start()
方法时,文本被删除,但我必须一次又一次地确认对麦克风的访问。
有什么想法吗?
网络语音API规范 https://www.google.com/intl/en/chrome/demos/speech.html
答案 0 :(得分:3)
您正在从索引0开始获取events.result数据。您需要使用名为for
的内容启动event.resultIndex
循环。
resultIndex属性:必须将resultIndex设置为最低索引 在已更改的“结果”数组中。 [source]
recognition.onresult = function (event) {
//console.log(event);
var final = "";
var interim = "";
for (var i = event.resultIndex; i < event.results.length; ++i) {
if (event.results[i].final) {
final += event.results[i][0].transcript;
} else {
interim += event.results[i][0].transcript;
}
}