立即注册
查看: 2309|回复: 4

[转载] 智能语音开发之语音听写

已绑定手机
发表于 2016-7-2 21:35:08 | 显示全部楼层 |阅读模式 来自 安徽省合肥市巢湖市
本帖最后由 springfall 于 2016-7-2 21:49 编辑

语音听写现在应用的很多,将语音转换成文本,实现机器理解人的自然语音,目前国际国内就语音理解这一部分很多大公司都在这手布局,IBM、google、微软、腾讯、阿里、百度、讯飞都在着手做语音项目,曾经有人说过现在的社会属于语音的时代,未来属于意识的时代。当然至于意识的时代啥时候到来现在我不敢随便预测但是语音的时代确实正在来临。而语音听些恰恰是智能语音的基础。本文是基于讯飞的Android语音开发--语音听写文章来源于http://blog.csdn.net/sz0268/article/details/51657243   这篇博客
下面是详细文章内容:
语音听写是讯飞语音的一大组成部分,也是语音开发的一个主要部分。讯飞语音听写分为带ui界面的开发和不带ui界面开发,今天我们要说的是带ui界面的开发。
在开发之前我们需要将我们从讯飞语音开放平台下载的开发包中的几个部分分别放在Android项目对应位置。
我们把Msc.jar、liBMSc.so和ui文件分别放在lIBS和assets文件夹中,如下图:
1、libmsc.so文件和Msc.jar包放在libs中并把Msc.jar包加载进工作空间(这个又是后Eclipse会自动加载,如若不能自动加载就手动加载,加载方法在另一篇文献中android开发之.jar包加载)
QQ图片20160702213511.png
2、ui界面文件加载将下载的文件包中的iflytek文件夹下的所有文件放在android工程下assets文件夹下面
QQ图片20160702213528.png


3、把appid号写入string.xml文件中如下图,其结果如下(红色涂抹处为你自己申请的appid号)
QQ图片20160702213600.png QQ图片20160702213545.png
4、添加工作权限,在AndroidManifest.xml文件中添加如下权限,(权限添加在<application>同级节点)如下图
QQ图片20160702213635.png


以上步奏做完即为初始化预备已完成,下面开始重点代码:
//讯飞语音总入口



  1. <div>SpeechUtility.createUtility(MainActivity.this, SpeechConstant.APPID+"="+getString(R.string.app_id)); </div><div>
  2. </div>
复制代码
//创建带ui界面的听写对象,mInitlistener为初始化监听器
  1. RecognizerDialog    recognizerDialog = new RecognizerDialog(MainActivity.this,mInitListener);  
复制代码
//开始听写函数,mRecognizerDialogListener为听写监听器
  1. private void staRTSPeechListener(){  
  2. 02.recognizerDialog.setParameter(SpeechConstant.LANGUAGE, "zh_cn");  
  3. 03.recognizerDialog.setParameter(SpeechConstant.ACCENT, "mandarin");  
  4. 04.recognizerDialog.setListener(mRecognizerDialogListener);  
  5. 05.recognizerDialog.show();  
  6. 06.}  
复制代码

听写监听器
  1. * 听写监听器
  2. 03. * */  
  3. 04.private RecognizerDialogListener mRecognizerDialogListener = new RecognizerDialogListener(){  
  4. 05.  
  5. 06.@Override  
  6. 07.public void onError(SpeechError arg0) {  
  7. 08.// TODO Auto-generated method stub  
  8. 09.  
  9. 10.}  
  10. 11.  
  11. 12.@Override  
  12. 13.public void onResult(RecognizerResult result, boolean isLast) {  
  13. 14.String text = JsonParser.parseIatResult(result.getResultString().toString());  
  14. 15.Toast.makeText(MainActivity.this, text, Toast.LENGTH_SHORT).show();  
  15. 16.  
  16. 17.}  
  17. 18.  
  18. 19.};  
复制代码
完整代码程序包下载地址:
链接:http://pan.baidu.com/s/1i4EcCD3 密码:u3wq
新的下载地址,更换res/values/strings.xml中appid号,换成在讯飞开发者申请的号
注意程序是在eclipse上开发的。



已绑定手机
已实名认证
发表于 2016-7-3 13:03:23 | 显示全部楼层 来自 广东省深圳市
非常好
发表于 2016-7-7 15:21:19 | 显示全部楼层 来自 安徽省合肥市巢湖市
赞一个
发表于 2016-7-7 23:15:07 | 显示全部楼层 来自 广东省
原创就是不一样
发表于 2016-7-15 08:46:37 | 显示全部楼层 来自 江西省抚州市
支持楼主
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

合作/建议

TEL: 19168984579

工作时间:
周一到周五 9:00-11:30 13:30-19:30
  • 扫一扫关注公众号
  • 扫一扫打开小程序
Copyright © 2013-2024 一牛网 版权所有 All Rights Reserved. 帮助中心|隐私声明|联系我们|手机版|粤ICP备13053961号|营业执照|EDI证
在本版发帖搜索
微信客服扫一扫添加微信客服
QQ客服返回顶部
快速回复 返回顶部 返回列表