语音识别
来源:互联网 发布:python 正则 匹配多个 编辑:程序博客网 时间:2024/04/28 00:04
一、基本介绍:
语音识别:目标是将人类的语音中的词汇内容转换为计算机可读的输入,例如按键、二进制编码或者字符序列。
常见功能语音识别,语音合成
二、其他说明:
在实际应用的情况,最好认证下。
andriod/ios的sdk包一般需要审核下。
三、调用方式
api:传送语音文件,进行识别,目前只有百度
h5:文档全,但是基于node.js,可能上手有点难
sdk:一般离线识别:支持安卓和苹果
微信:使用简单方便,但是只能在微信中使用
四、详细介绍
1、微信JS-SDK:
网页版:只能在微信中使用
wx.translateVoice({ localId: '', // 需要识别的音频的本地Id,由录音相关接口获得 isShowProgressTips: 1, // 默认为1,显示进度提示 success: function (res) { alert(res.translateResult); // 语音识别的结果 }});
2、微信公众号:(直接开启即可)
可以直接在接收时识别
腾讯有个纠错的功能,所以有很高的准确性。
3、百度语音http://yuyin.baidu.com/
主要介绍下rest api
支持语音格式:原始 PCM 的录音参数必须符合 8k/16k 采样率、16bit 位深、单声道,支持的压缩格式有:pcm(不压缩)、wav、opus、amr、x-flac。
Post相关参数即可:
4、讯飞html5
采用 WEBSOCKET 通信协议,后端是基于 NODEJS 的开发框架,云和端均使用 JAVASCRIPT 实现。
兼容性差
pc试了几个,仅火狐是可以的。
备注:讯飞api:仅支持pcm
5、Html5录音:
简介:
关于录音主要是使用web audio api,前提是需要浏览器支持: navigator.getUserMedia.
通过这个来获取用户的输入设备,成功之后使用webkitAudioContext来创建音频实例。
在录音结束之后,将录音的流导出为文件,上传即可。
说明:
录音使用:recorder.js
如果使用百度的api需要进行压缩,处理。
参考文章:
http://www.cnblogs.com/blqw/p/3782420.html
参考例子:
例1:
http://github.com/veizz/speech_io
例2:
参考讯飞开放平台给的demo
遇到的问题:
1、谷歌的好像必须是https
2、测试了部分浏览器都不支持
ios:qq浏览器,uc浏览器
andriod:谷歌浏览器。
查资料发现谷歌浏览器是支持,可能是原因必须使用https
测试结果是支持navigator.getUserMedia,但是调用失败。
测试成功的是:火狐浏览器
其他参考地址:
1、http://www.cnblogs.com/jz1108/archive/2012/05/21/2511447.html
2、https://dvcs.w3.org/hg/speech-api/raw-file/tip/speechapi.html
3、http://codeartists.com/post/36746402258/how-to-record-audio-in-chrome-with-native-html5-apis
4、 http://stackoverflow.com/questions/13076272/how-do-i-give-webkitgetusermedia-permission-in-a-chrome-extension-popup-window
5、http://www.cnblogs.com/blqw/p/3782420.html
http://ibillxia.github.io/blog/2013/05/22/audio-signal-processing-time-domain-Voice-Activity-Detection/
6、http://stackoverflow.com/questions/13333378/how-can-javascript-upload-a-blob
7、http://www.web-tinker.com/article/20498.html
- 语音识别
- 语音识别
- 语音识别
- 语音识别
- 语音识别
- 语音识别
- 语音识别
- 语音识别
- 语音识别
- 语音识别
- 语音识别
- 语音识别
- 语音识别
- 语音识别
- 语音识别
- 语音识别
- 语音识别
- 语音识别
- CentOS上安装SQL Server vNext CTP1
- 深入理解Java虚拟机6~虚拟机字节码执行引擎
- 进程的调度算法
- 微信小程序教程(第一篇)
- cannot change version of project facet Dynamic web module to 2.5
- 语音识别
- 初识Java虚拟机(3)对象生死
- 常用的内部排序方法-比较排序
- windows下单机多tomcat运行
- 对H264进行RTP封包原理
- Android的硬件加速及可能导致的问题
- OpenWrt SDK 编写交叉编译Makefile的简单方法
- 2017这些Android技术可能会很火
- 关于excel数据导入到数据库案例