5.2.云端识别
ASR SDK支持Android平台的在线语音API接入, 开发者通过集成SDK获取从采集音频到识别结果输出的全链路支持。结合DUI平台强大的可定制语言模型的特性,开发者可以通过上传说法和词表的方式,对偏僻的说法以及用户相关内容的识别效果进行优化。
内置录音机
语音识别SDK按平台内置有录音机,可完成识别过程中的音频采集任务。
音频压缩
支持符合16Khz采样率、16bit数据位宽的PCM音频识别,SDK内部会对音频进行压缩。
VAD功能
VAD (语音活动检测)功能为可选项,开启后可启用本地的语音活动检测功能。关闭后,只能通过实体按键结束语音输入。
允许设置VAD后端点检测超时时间,开启后若说话停顿时长超过阈值,则主动结束本次识别的输入。
实时反馈识别结果
支持流式返回识别结果。当用户开口说话时,部分识别结果就绪后,能立即展示该部分结果。
初始化
AICloudASREngine mEngine = AICloudASREngine.createInstance();
mEngine.setServer("wss://asr.dui.ai/runtime/v2/recognize");//设置服务器地址,默认不用设置
mEngine.setEnablePunctuation(false);//设置是否启用标点符号识别,默认为false关闭
mEngine.setResourceType("aihome");//设置识别引擎的资源类型,默认为comm
mEngine.setLocalVadEnable(true);
mEngine.setCloudVadEnable(false);
mEngine.setEnableNumberConvert(true);//设置启用识别结果汉字数字转阿拉伯数字功能
mEngine.setVadResource(SampleConstants.VAD_RES);
mEngine.setPauseTime(500);
JSONArray jsonArray = new JSONArray();
jsonArray.put("你好晓乐");
mEngine.setCustomWakeupWord(jsonArray);//设置自定义唤醒词
mEngine.setWakeupWordVisible(false);//是否过滤setCustomWakeupWord设置的oneshot句首唤醒词,默认为false,不顾虑
mEngine.setWaitingTimeout(5000);//设置等待识别结果超时时长,默认5000ms
mEngine.setEnableSNTime(true);//设置rec结果增加对齐信息接口
//mEngine.setEnableTone(false);//设置音调功能接口
//mEngine.setEnableLanguageClassifier(false);//设置语言分类功能接口
mEngine.init(new AICloudASRListenerImpl());
mEngine.setNoSpeechTimeOut(0);
//mEngine.setMaxSpeechTimeS(0);//音频最大录音时长
mEngine.setCloudVadEnable(true);//设置是否开启服务端的vad功能,默认开启为true
mEngine.setSaveAudioPath("/sdcard/aispeech");//保存的音频路径,格式为.ogg
mEngine.setEnableAlignment(false);//是否返回Alignment字段(词级别时间信息).默认false
mEngine.setEnableEmotion(false); //设置是否返回性别、年龄、情绪.默认false
mEngine.setEnableAudioDetection(false);设置是否返回云端音频检测结果,默认false 关闭
启动识别
mEngine.start();
停止识别
mEngine.cancel();
引擎销毁
if(mEngine!=null) mEngine.destroy();