js实现语音识别
使用Web Speech API实现语音识别
Web Speech API是浏览器原生支持的语音识别和合成接口,无需额外依赖库。以下为基本实现方法:
// 创建语音识别对象
const recognition = new (window.SpeechRecognition || window.webkitSpeechRecognition)();
// 设置识别参数
recognition.lang = 'zh-CN'; // 设置语言为中文
recognition.interimResults = false; // 是否返回临时结果
recognition.maxAlternatives = 1; // 返回最大候选结果数
// 开始识别
recognition.start();
// 处理识别结果
recognition.onresult = (event) => {
const transcript = event.results[0][0].transcript;
console.log('识别结果:', transcript);
};
// 错误处理
recognition.onerror = (event) => {
console.error('识别错误:', event.error);
};
// 识别结束自动重启
recognition.onend = () => {
recognition.start();
};
添加用户交互控制
建议添加按钮控制识别开始/停止:
<button id="startBtn">开始录音</button>
<button id="stopBtn">停止录音</button>
<div id="output"></div>
<script>
const startBtn = document.getElementById('startBtn');
const stopBtn = document.getElementById('stopBtn');
const output = document.getElementById('output');
startBtn.addEventListener('click', () => {
recognition.start();
output.textContent = "正在聆听...";
});
stopBtn.addEventListener('click', () => {
recognition.stop();
output.textContent = "已停止";
});
</script>
多语言支持配置
通过修改lang参数支持不同语言:
// 英语(美国)
recognition.lang = 'en-US';
// 日语
recognition.lang = 'ja-JP';
// 粤





