语音唤醒(Voice Wakeuper)通过辨别输入的音频中特定的词语(如“讯飞语点”),返回被命中(唤醒)结果,应用通过回调的结果,进行下一步的处理,如点亮屏幕,或与用户进行语音交互等。唤醒资源中含有一个或多个资源,只要命中其中一个,即可唤醒。需下载使用对应的语音唤醒SDK。
语音唤醒详细的接口介绍及说明请参考: MSC Windows API 文档, 在集成过程中如有疑问,可登录讯飞开放平台论坛,查找答案或与其他开发者交流。
注:支持Windows XP以上系统版本,开发环境建议使用VS2010版本,暂不兼容VS2017版本。
1.在控制台下载对应sdk
2.进入sdk内samples目录,双击samples.sln文件(需事先安装Visual Studio)
《SDK目录结构一览》
注意:
1.打开Microsoft Visual Studio(本例使用的是VS2010),选择文件->新建->项目->Visual C++ ->Win32控制台应用程序,输入项目名称,然后点击确定键
2.应用程序类型选择“控制台应用程序”,附加选项选择“空项目”,然后点击完成。
1.将SDK中bin,include,libs文件夹复制到新建工程“Demo”文件夹下
2.导入头文件
右键点击新建工程,选择 “属性“,进入工程属性页面:点击C/C++->常规->附加包含目录,输入相对于工程文件Demo.vcxproj的相对路径,即相对于$(ProjectDir)的路径,另源代码文件也需相同设置。
3.导入msc.dll
a. 加载msc.lib文件:在main.c文件中输入如下图所示代码,其他详细代码请参考Samples中对应的语音示例 注意:加载路径输入相对于工程文件的相对路径
#ifdef _WIN64
#pragma comment(lib,"../libs/msc_x64.lib")
#else
#pragma comment(lib, "../libs/msc.lib")
#endif
b. 将msc.dll所在目录设置为工作目录,即“$(ProjectDir)..\bin\”
4.将目标可执行文件复制到msc.dll所在目录
5.SDK启动后,bin/msc目录下会生成日志。(注意:msc文件夹下需有msc.cfg文件)
语音唤醒主要API调用流程如下图所示:
详细代码调用请参考 Samples中的 awaken_sample(语音唤醒示例)。 API详细描述请参考API文档
以下为常用参数说明,更多参数请参考API文档
参数 | 名称 | 说明 |
---|---|---|
ivw_threshold | 唤醒词门限 | id0:xx;id1:xx;….。 示例:0:1450;1:1450表示设置第一个唤醒词的门限值为1450,第二个唤醒的门限值是1450,门限值越低越容易唤醒成功。注意:建议唤醒引擎门限值设为1450,且取值范围为非负数,一般可在0-3000之间调节。 |
唤醒结果字段说明:
参数 | 参数解释 |
---|---|
sst | 本次业务标识:wakeup表示语音唤醒;oneshot表示唤醒+识别; |
id | 当前唤醒词的id |
score | 当前唤醒得分,只有当分数大于等于设置的门限值时才会回调唤醒结果 |
bos | 当前唤醒音频的前端点,即当前唤醒音频在写入的总音频中的开始时间位置,单位:ms |
eos | 当前唤醒音频的尾端点,即当前唤醒音频在写入的总音频中的结束时间位置,单位:ms |
keyword | 当前唤醒词,若是中文唤醒词会自动以拼音形式显示 |
语音唤醒结果示例:
{
"sst":"wakeup",
"id":0,
"score":1450,
"bos":1610,
"eos":2260,
"keyword":"ding1dong1ding1dong1"
}
答:支持Windows XP以上系统版本,开发环境建议使用VS2010版本,暂不兼容VS2017。
答:文档中心---快速指引有介绍步骤---根据步骤下载相应平台的语音唤醒sdk,语音唤醒SDK包有10个装机量,试用期为90天。
答:语音唤醒目前支持:Android/iOS/Windows/Linux应用平台。
答:目前支持中文和英文。唤醒词设置最多支持8个,每个为4-6个汉字或不超过2个英文单词。中英文不可同时配置。
答:设备(手机、玩具、家电等)在休眠或锁屏状态下也能检测到用户的声音(设定的语音指令,即唤醒词),让处于休眠状态下的设备直接进入到等待指令状态,开启语音交互第一步。
答:登录讯飞开放平台,点击进入语音唤醒页面,点击到语音唤醒页面,可查看到详细的价格表。点击对应套餐包的“立即购买”,可进行支付购买。