Android开发调用百度云语音唤醒SDK

1.在百度云官网注册,进入“语音技术”,开始创建你的应用。

1.创建应用

2.创建完成以后在列表页面可以查看AppID,APIKEY,SecretKEY:如下(这个是关键,很有用)

2.应用列表

3.下载百度云离线语音包https://ai.baidu.com/sdk#asr,Android版本;

下载SDK

4.查看百度云技术文档:https://cloud.baidu.com/doc/SPEECH/ASR-Android-SDK.html#DEMO.E5.8E.8B.E7.BC.A9.E5.8C.85.E8.AF.B4.E6.98.8E

DEMO压缩包说明

DEMO压缩包下载即可运行,其中DEMO内已经附带了SDK的库。

bdasr_V3_xxx_xxx.jar 位于 core/libs 目录下。

armeabi,armeabi-v7a,arm64-v8a,x86,x86_64

5个架构目录位于core/src/main/jniLibs 目录下

NDK so库架构,共计5个架构目录:armeabi,armeabi-v7a,arm64-v8a,x86,x86_64,每个架构下均有以下5个so库文件。

资源名称资源大小

libBaiduSpeechSDK.so

libbd_easr_s1_merge_normal_20151216.dat.so

libbdEASRAndroid.so

libglobal.cmvn.so

libvad.dnn.so

5.先获取你需要的唤醒词:http://ai.baidu.com/tech/speech/wake?track=cp:ainsem|pf:pc|pp:chanpin-yuyin|pu:yuyin-yuyinhuanxing|ci:|kw:10003552


唤醒词
导出唤醒词

6.根据技术文档,在Android studio中新建assets文件夹和jniLibs文件夹,将相应文件放到文件夹中:

导入到文件夹

在bulid中加入:ndk { abiFilters"armeabi","arm64-v8a","x86_64","x86","armeabi-v7" }

然后在demo中复制java文件到项目中:

唤醒功能

7.在配置文件中加入关键代码:(敲黑板最重要啊)

添加配置文件

8.调用SDK

/**

* 设置语音唤醒功能

*/

private void setMyWakeup(){

handler =new Handler() {

@Override

        public void handleMessage(Message msg) {

super.handleMessage(msg);

            handleMsg(msg);

        }

};

    MyLogger.setHandler(handler);

    IWakeupListener listener =new RecogWakeupListener(handler);

    myWakeup =new MyWakeup(MyService.this, listener);

}

/**

* 接收到唤醒词并唤醒成功

* @param msg

*/

private void handleMsg(Message msg){

if (msg.obj !=null) {

Log.d(TAG, "handleMsg: "+msg.obj.toString());

        String name = msg.obj.toString();

        if (name.indexOf("唤醒成功")!=-1){

Handler handler=new Handler(Looper.getMainLooper());

            handler.post(() -> {

Intent intent =new Intent(MyService.this, VoiceActivity.class);

                intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK );

                startActivity(intent);

            });

        }

}

}

/**

* 开启唤醒

*/

private void wakeUpStart() {

Map params =new HashMap<>();

    params.put(SpeechConstant.WP_WORDS_FILE, "assets://WakeUp.bin");

    myWakeup.start(params);

}

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容