以下是一个使用SpeechRecognition库实现语音唤醒的简单示例:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0,maximum=1.0,minimum=1.0,user-scalable=0" />
<title>BFW NEW PAGE</title>
<script id="bfwone" data="dep=jquery.17&err=0" type="text/javascript" src="//repo.bfw.wiki/bfwrepo/js/bfwone.js"></script>
<script type="text/javascript">
var SpeechRecognition = SpeechRecognition || webkitSpeechRecognition
const recognition = new SpeechRecognition();
recognition.lang = 'zh-CN';
recognition.interimResults = false;
recognition.maxAlternatives = 1;
const keywords = ['小王', '你好'];
recognition.onresult = (event) => {
const transcript = event.results[0][0].transcript.trim().toLowerCase();
if (keywords.some(keyword => transcript.includes(keyword))) {
// 唤醒词被检测到,执行相关操作
console.log('我被唤醒了!');
}
};
recognition.onerror = (event) => {
console.error('Recognition error:', event.error);
};
recognition.onend = () => {
// 在结束后重新开始语音识别以持续监听
recognition.start();
};
// 启动语音识别
recognition.start();
</script>
<style>
</style>
</head>
<body>
</body>
</html>
这个例子中,我们创建了一个SpeechRecognition实例,并设置了识别语言,interimResults和maxAlternatives属性。然后,我们定义了一组可能的唤醒词,并在onresult处理程序中检查识别结果是否包含其中任何一个唤醒词。如果检测到唤醒词,则执行相应的操作。最后,在onend处理程序中,我们重新启动语音识别以持续监听。
网友回复