科大讯飞开放平台语音听写接口使用教程

人工智能

636人已加入

描述

  最近在做毕设项目中,要用到一个语音识别的功能,主要目的是把用户说的话转换成文字,然后再做其他处理。找了多个语音识别的第三方SDK,比如百度语音识别、微信语音识别、科大讯飞语音识别,发现科大讯飞的比较好用。做了一个Demo程序,有详细的注释,在这里整理一下。

  (一)准备工作

  0、创建一个空的Android项目,比如项目名叫:SpeechRecognitionDemoJYJ。

  1、首先要在科大讯飞开放平台(http://www.xfyun.cn/)上注册,或者用QQ等第三方登录也行。

  2、点击网站首页右上角的“控制台”,进入控制台。

  3、按照说明创建一个应用,该应用名就叫SpeechRecognitionDemoJYJ,创建成功后会有一个AppID,记下来,编程的时候要用到。

  4、点击SpeechRecognitionDemoJYJ后面的“开通服务”按钮,开通服务—》语音听写,进入语音听写—》下载当前应用对应的SDK。

  5、下载Android版的SDK,将SDK包中libs目录下的Msc.jar和armeabi复制到Android工程的libs目录(如果工程无libs目录,请自行创建)中,并且因为还要用到语音听写Dialog,所以还要把SDK包中assets目录下的iflytek文件夹复制到工程的assets目录下,如下图所示。还要注意,每个不同的应用都要申请不同的AppID,并且要分别下载不同AppID对应的SDK,否则会出错。

  

  6、其他更详细的说明和资料可以参看讯飞开放平台的资料库(http://www.xfyun.cn/doccenter)。

  (二)开发

  Demo实现的功能很简单,就是点击一个按钮,弹出语音识别Dialog窗口,说话,说完了点击Dialog窗口后会把自动识别的文字结果显示在下方的EditText中。服务器返回的语音听写的结果是Json格式数据,最后还要对Json数据进行解析(具体解析方法参看我的这篇文章:用GSON解析Json格式数据),解析出语音字符串。

  1、XML代码:

  界面中有一个按钮,一个TextView和一个EditText,EditText用于显示语音识别的结果。

科大讯飞

  2、MainActivity

科大讯飞
科大讯飞
科大讯飞
科大讯飞

  3、自定义的com.example.speechrecognition.DictationResult类的代码:

科大讯飞
科大讯飞
科大讯飞
科大讯飞

  4、AndroidManifest.xml中申请权限:

科大讯飞

  5、测试:模拟器无法打开录音机,是不能在上面测试的,要用真机测试。测试结果如下图:

  

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分