# 概览

AIUI中默认不带语音唤醒功能,可通过接入MSC库将唤醒与交互结合起来(暂时只支持android平台)。

# 集成步骤

① 登录AIUI开放平台 (opens new window),进入我的应用,选择您要添加唤醒功能的应用,进入SDK下载页面,下载唤醒SDK;

② 添加语音唤醒能力,然后点击SDK下载按钮,下载唤醒SDK。

③ 若未设置唤醒词,会出现提示,点击个性化唤醒词体验包,进入唤醒词体验包制作页面;

④ 下拉唤醒词制作页面到页面下方,输入您想要的唤醒词,然后制作体验包并下载;

⑤ 点击下载体验包,便进入到第②步页面,再次点击SDK下载按钮,将唤醒SDK下载下来;

⑥ 打开SDK包,进入res/ivw/目录,将里面的*.jet文件重命名为ivw.jet, 放入工程src/main/assets/ivw/下,进入libs目录将Msc.jar放入工程libs/下,libmsc.so放入工程src/main/jniLibs/armeabi下;

⑦ 修改aiui_phone.cfg配置文件,添加唤醒参数即可。在代码中创建AIUIAgent后即可开始唤醒,唤醒成功后可进行语音交互。

// 唤醒参数
"ivw":{
    "res_type":"assets",
    "res_path":"ivw/ivw.jet",
	"ivw_threshold":"0:2000" //0为唤醒词编号,2000为唤醒阈值(范围0~3000),多个唤醒用分号隔开,如:"ivw_threshold":"0:2000;1:1500"
},
// 语音业务流程控制
"speech":{
	"wakeup_mode":"ivw"
}

⑧ 初始化,建议将初始化放在程序入口处(如Application、Activity的onCreate方法),初始化代码如下,XXXXXX为你的应用appid。

SpeechUtility.createUtility(this, String.format("engine_start=ivw,delay_init=0,appid=%s","XXXXXX"));

⑨创建AIUIAgent,发送CMD_START_RECORD消息,即开始录音,等待唤醒。

//创建AIUIAgent
mAIUIAgent = AIUIAgent.createAgent( this, getAIUIParams(), mAIUIListener );
//开始录音
AIUIMessage msg = new AIUIMessage(AIUIConstant.CMD_START_RECORD, 0 ,0, "data_type=audio,sample_rate=16000", null);
mAIUIAgent.sendMessage(msg);