Android百度语音识别中的若干问题

应用场景是离在线语音识别V2.1.20
1.集成百度语音识别demo后一直处于麦克风启动中

  • 原因1:无法加载百度语音识别的so库

    应用中会使用其他依赖库,例如用AS用了

compile 'pl.droidsonroids.gif:android-gif-drawable:1.2.2'

这个依赖库中包含了好几个平台的so,所以加载非armeabi平台时会找不到so,所以用gradle依赖时要注意,如图(遇到此种情况请重新打包生成依赖包)

这里写图片描述

  • 原因2:麦克风被其它应用占用

    请检查是它应用是否占用麦克风或者麦克风权限是否打开

2.ErrorCode为5 ERROR_CLIENT 客户端调用错误

解决方法:不要在 onResults中直接调用speechRecognizer.startListening
或者speechRecognizer.stopListening,因为上一轮识别没有完全结束

3.怎样实现识别有结果后实现新一轮的监听

怎样在onResults后实现新一轮的监听,解决方案如下:

new Handler().postDelayed(new Runnable() {
    public void run() {
        mBaiduSpeechUtil.startRecog();
    }
}, 2000);

4.最后附上V2.1.20语音识别示例,语音识别采用util的形式,调用方法很简单

BaiduSpeechUtil mBaiduSpeechUtil = null;
mBaiduSpeechUtil = new BaiduSpeechUtil(this, new RecogResultListener() {

    @Override
    public void onRecogSuccess(final String result) {
        Log.i(TAG, "recogResult" + result);
        // 延迟开启,等待上个识别进程结束
        new Handler().postDelayed(new Runnable() {
               public void run() {
                      mBaiduSpeechUtil.startRecog();
               }
         }, 2000);  
    }

    @Override
    public void onRecogFailure(String error) {
        Log.i(TAG, "error:" + error);
    }
});
mBaiduSpeechUtil.startRecog();

demo下载地址:http://download.csdn.net/detail/jianiuqi/9679180

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值