论语音识别技术API在Android中的应用

当下很多APP都会使用语音识别功能,用户说出一段自己的需求,APP会返回处理后的结果,这个过程看似简单,但要实现这一功能需要强大的技术和大数据能力,才可以将语音信息转化成文字。
为了解决这一痛点,APIStore为开发者提供了大量的即用型API,支持多种语言,满足不同平台的需求。在开发过程中,开发者可以直接调用即用型API。

语音识别(http://apistore.baidu.com/apiworks/servicedetail/867.html)为例,开发者只需调用指定的url, 并传入参数就可以得到解析后的语音信息。原始语音的录音格式需要使用pcm压缩形式,目前只支持评测 8k/16k 采样率16bit位深的单声道语音将语音录制完成之后使用base64转化成字符串后作为参数上传。转化字符串时java建议用commons-codec进行编码对base64后的字符串进行urlencode编码,很重要)。Java调用的关键代码如下:语音文件转换成base64字符串:

FileInputStream  fis = new  FileInputStream(new File("d:\\test.pcm"));
  
byte[]  byteAudio = org.apache.commons.io.IOUtils.toByteArray(fis);
  
byte[]  base64AudioByte =  org.apache.commons.codec.binary.Base64.encodeBase64(byteAudio);
  
String  base64AudioStr = new String(base64AudioByte,"utf-8");
  
String  base64AudioStrUrlenocde = URLEncoder.encode(base64AudioStr);

参数:

postParams =  "audioBase64=" + base64AudioStrUrlenocde+"&format=pcm&rate=8000&channel=1&lan=zh";

使用接口:

String result = new HttpUtil().doPost(APIKEY, url, postParams);
结果处理:

String json = (String)  new JSONObject(result).get("retData");
  
JSONObject jsonObject  = new JSONObject(json);
  
String voiceResult =  jsonObject.get("result").toString();
  


下面来看下前端展示, 我把语音识别API加入了自己的APP应用中,如下是实现的效果:

APP首页:
点击语音按钮后会进入语音识别的主页面:
最后附上一张识别的结果:
大家也可以头脑风暴下,共同探讨语音识别API的其他用处以及你们的调用经历,说不定切磋出来一个伟大的产品呢~
最后,请移步 百度APIStore ,寻找属于你的API!!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

陈浩_浩哥

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值