新闻中心

HTML5语音识别API怎么用_HTML5SpeechRecognitionAPI实现语音识别的方法

2025-11-20
浏览次数:
返回列表
HTML5语音识别通过SpeechRecognition API实现,需先检测浏览器支持情况,创建识别实例并设置语言、连续识别等参数,监听结果、错误和结束事件,通过start()/stop()控制识别流程,结合按钮操作可在HTTPS或localhost环境下实现语音转文本功能。

html5语音识别api怎么用_html5speechrecognitionapi实现语音识别的方法

HTML5 的语音识别功能主要通过 SpeechRecognition API 实现,它允许网页捕捉用户的语音并将其转换为文本。目前该 API 在部分现代浏览器中支持,尤其是基于 Chromium 的浏览器(如 Chrome、Edge)。

1. 检测浏览器是否支持 SpeechRecognition

在使用语音识别前,先检查当前浏览器是否支持该 API,避免运行时报错。

if ('webkitSpeechRecognition' in window || 'SpeechRecognition' in window) {
  // 支持语音识别
} else {
  console.log('当前浏览器不支持语音识别');
}

注意:Chrome 使用的是 webkitSpeechRecognition,这是带前缀的版本。

2. 创建 SpeechRecognition 实例

创建一个识别对象,并配置相关参数。

const recognition = new (window.SpeechRecognition || window.webkitSpeechRecognition)();

这样可以兼容不同浏览器的实现方式。

3. 配置识别参数

可以通过设置属性来控制识别行为:

Kreado AI Kreado AI

Kreado AI是一个多语言AI视频创作平台,只需输入文本或关键词,即可创作真实/虚拟人物的多语言口播视频。 为创作者提供AI赋能

Kreado AI 182 查看详情 Kreado AI
  • recognition.lang = 'zh-CN'; —— 设置识别语言,中文用 'zh-CN',英文可用 'en-US'
  • recognition.interimResults = false; —— 是否返回中间结果(用户说话过程中是否实时显示)
  • recognition.continuous = false; —— 是否持续监听,设为 true 可连续识别多段语音

4. 监听识别事件

绑定关键事件来处理识别结果和状态:

  • onresult:当识别出结果时触发
  • onend:识别结束时触发(可用于自动重启)
  • onerror:识别出错时触发
recognition.onresult = function(event) {
  const transcript = event.results[0][0].transcript;
  console.log('识别结果:', transcript);
  document.getElementById('output').textContent = transcript;
};

recognition.onerror = function(event) {
  console.log('识别出错:', event.error);
};

recognition.onend = function() {
  console.log('识别结束');
};

5. 启动和停止识别

调用方法开始或停止语音识别:

  • recognition.start(); —— 开始录音和识别
  • recognition.stop(); —— 停止识别(尤其在 continuous 为 false 时自动停止)

通常绑定到按钮点击事件:

document.getElementById('startBtn').onclick = function() {
  recognition.start();
};

document.getElementById('stopBtn').onclick = function() {
  recognition.stop();
};

6. 完整示例代码

<input type="button" id="startBtn" value="开始识别">
<input type="button" id="stopBtn" value="停止识别">
<p id="output"></p>

<script>
const recognition = new (window.SpeechRecognition || window.webkitSpeechRecognition)();
recognition.lang = 'zh-CN';
recognition.interimResults = false;

recognition.onresult = function(event) {
  document.getElementById('output').textContent = event.results[0][0].transcript;
};

recognition.onerror = function(event) {
  console.log('错误:', event.error);
};

recognition.onend = function() {
  console.log('识别已结束');
};

document.getElementById('startBtn').onclick = () => recognition.start();
document.getElementById('stopBtn').onclick = () => recognition.stop();
</script>

基本上就这些。只要用户授权麦克风权限,就可以实现基本的语音转文字功能。注意:页面必须运行在 HTTPS 或本地环境(localhost),否则无法获取麦克风权限。

以上就是HTML5语音识别API怎么用_HTML5SpeechRecognitionAPI实现语音识别的方法的详细内容,更多请关注其它相关文章!


# 是一个  # 网站seo优化推广工具好处  # 广东百度查关键词排名  # 美国电影网站建设  # 铁岭seo查询如何做  # 淘宝seo价格优化模型  # 网站推广快寻a金脉科技权威  # 线下如何推广网站  # 上门seo优化管理系统  # 柳南区网站建设营销  # 镇江企业网站推广服务  # 与传统  # 这是  # html  # 的是  # 多语言  # 源代码  # 绑定  # 语音识别  # 关键词  # 点击事件  # 自动重启  # win  # edge  # 浏览器  # html5 


相关栏目: 【 科技资讯46185 】 【 网络学院92790


相关推荐: 魅族17怎样用浏览器译外语网页_iPhone魅族17浏览器译外语网页【即时翻译】  PowerPoint如何制作滚动字幕结尾彩蛋_PowerPoint路径动画实现平滑滚动字幕效果  抖音怎么赚钱_抖音创作者变现方法与途径指南  火狐浏览器占用内存高卡顿怎么办 火狐浏览器性能优化设置技巧  qq游戏手机版下载安装_qq游戏移动端入口  Golang如何实现Web接口签名验证_Golang Web接口签名校验开发方法  composer的"require-dev"部分是用来做什么的?  在J*a中如何开发在线活动报名与管理系统_活动报名管理项目实战解析  抖音小游戏合成大西瓜免费秒玩入口链接 抖音小游戏热门合集秒玩网站  铁路12306改签能改到更早的车次吗_铁路12306改签提前车次规则  Win10自动更新怎么关闭 Win10永久关闭系统更新的两种方法【终极版】  必由学官方平台入口 必由学在线课堂登录地址  KFC游戏互动怎么赢取优惠券_KFC线上游戏活动参与与优惠代码赢取教程  AO3同人作品网入口 AO3搜索引擎官网永久地址  网站内容防复制粘贴的实现策略与局限性  必由学官网快捷入口 必由学网页版在线学习平台  照顾宝贝2小游戏免费秒玩入口  Safari怎么安装扩展程序 浏览器插件安装与管理方法【详解】  Win10如何开启蓝牙功能_Windows10找不到蓝牙开关解决方法  Python多线程中正确使用sigwait处理SIGALRM信号  Sublime Text怎么显示空格和制表符_Sublime显示不可见字符设置  解决深度学习模型训练初期异常高损失与完美验证准确率问题  优化Django表单:提交验证失败后保留用户输入  邮编格式怎么匹配地址_根据邮编格式快速匹配详细地址的技巧  深入理解J*a编译器的兼容性选项:从-source到--release  PyTorch模型训练准确率不提升:诊断与修复常见指标计算错误  AO3最新入口2025公告_AO3中文官网合集  Lar*el 8 多关键词数据库搜索优化实践  微博网页版怎么开启两步验证_微博网页版账号安全两步验证设置方法  Animex动漫社网入口地址 Animex动漫社网正版在线入口  Tailwind CSS line-clamp 布局问题解析与修复指南  深入理解J*aScript中的B样条曲线与节点向量生成  谷歌推RCS信息存档功能:公司可监控员工私密信息!  c++ 获取系统当前时间 c++时间戳获取方法  漫蛙官网正版漫画入口 漫蛙2官方网页登录地址  批改网学生版PC登录 批改网官网登录系统入口  12306选座怎么选到商务座_12306商务座选择与配置说明  J*a TimerTask文件监控:HashMap状态管理与常见陷阱规避指南  ACG动漫视频网入口 ACG动漫*免费正版观看地址  提升Kafka消费者健壮性:会话超时处理与消息处理语义  解决Bootstrap卡片顶部边距导致背景图下移的问题  J*aScript中高效清空DOM列表元素:解决for循环中断与任务管理问题  没有大陆身份证/银行卡如何实名微信? 亲测有效的几种方法分享  在J*aScript中复现SciPy的B样条拟合与求值:关键考量  React中useState与局部变量:理解组件状态管理与渲染机制  红果短剧网页版官网入口 官方最新网址发布  漫蛙2正版漫画站 漫蛙2网页版快速访问入口  一加 Nord 5 隐私权限异常_一加 Nord 5 系统安全优化  win11 Snap Layouts怎么用 Win11窗口布局与分屏多任务高效指南【必学】  2026春节假期时间安排 2026春节假日查询 

搜索