public class AIWakeupEngine extends BaseEngine
mBaseProcessor, TAG, tagSuffix
Modifier and Type | Method and Description |
---|---|
static AIWakeupEngine |
createInstance()
唤醒引擎
|
void |
destroy()
销毁唤醒内核和录音机
|
void |
feedData(byte[] data,
int size)
自行feed音频数据,不使用内部录音机时可用
|
void |
forceRequestWakeupResult()
强制请求唤醒结果,即使没有唤醒也会给出唤醒词为null的结果
|
static int |
getOneShotCacheTime() |
java.lang.String |
getTag() |
void |
init(AIWakeupConfig config,
AIWakeupListener listener)
唤醒引擎初始化
|
void |
setDynamicParam(org.json.JSONObject envJson)
设置唤醒env热更新,可以在引擎初始化成功后动态设置,当前只支持更新thresh
|
void |
setDynamicParam(java.lang.String env)
动态调整参数,参数只能是
AIWakeupIntent 内的参数,
不同引擎可以动态设置的参数不一样,建议使用 setDynamicParam(String[], float[]) 方法 |
void |
setDynamicParam(java.lang.String[] pinyin,
float[] thresh)
动态调整参数,只能调整唤醒词的thresh
|
void |
setDynamicParamEnv(java.util.Map<java.lang.String,?> dynamicParam)
动态调整参数,具体请参照 demo
|
void |
setWakeupWords(java.lang.String[] wakeupWord,
float[] threshold,
int[] majors)
Deprecated.
|
void |
start(AIWakeupIntent aiWakeupIntent)
开启唤醒,如果使用内部录音机的话一并开启
|
void |
stop()
关闭唤醒,如果使用内部录音机的话一并关闭
|
void |
updateWakeupThreshold(java.lang.String[] wakeupWord,
float[] threshold,
int[] majors)
动态调整参数,具体请参照 demo
仅支持intent中设置的唤醒词的阈值修改
|
cancel, init, initTAG, parseConfig, parseIntent, start
public java.lang.String getTag()
getTag
in class BaseEngine
public static AIWakeupEngine createInstance()
public static int getOneShotCacheTime()
public void init(AIWakeupConfig config, AIWakeupListener listener)
config
- 配置参数listener
- 唤醒相关时间的回调public void setDynamicParam(java.lang.String[] pinyin, float[] thresh)
pinyin
- 唤醒词,必须在AIWakeupIntent
设置过,参数示例:["ni hao xiao chi"]thresh
- 唤醒词对应的阈值,参数示例:[0.2]AIWakeupIntent.setWakeupWord(java.lang.String[], float[])
,
setDynamicParam(String)
public void setDynamicParamEnv(java.util.Map<java.lang.String,?> dynamicParam)
dynamicParam
- env 里的参数,key可以是 words thresh 等, value 类型可以是 基础类型、字符串、数组、列表public void setDynamicParam(java.lang.String env)
AIWakeupIntent
内的参数,
不同引擎可以动态设置的参数不一样,建议使用 setDynamicParam(String[], float[])
方法env
- 参数字符串,如:"words=ni hao xiao chi;thresh=0.2;"setDynamicParam(String[], float[])
public void setDynamicParam(org.json.JSONObject envJson)
envJson
- setJson
须在start启动成功后可以调用public void updateWakeupThreshold(java.lang.String[] wakeupWord, float[] threshold, int[] majors) throws IllegalPinyinException
wakeupWord
- 唤醒词,参数示例:["ni hao xiao chi","xiao bu xiao bu"]threshold
- 唤醒词对应的阈值,参数示例:[0.2, 0.3]majors
- 是否主唤醒词,主唤醒词为1,副唤醒词为0,如 [1,0]
设置主唤醒词后,内核会对唤醒词部分音频进行回溯IllegalPinyinException
- IllegalPinyinException
非法拼音异常public void setWakeupWords(java.lang.String[] wakeupWord, float[] threshold, int[] majors) throws IllegalPinyinException
AIWakeupIntent.setWakeupWord(String[], float[])
wakeupWord
- 唤醒词,参数示例:["ni hao xiao chi","xiao bu xiao bu"]threshold
- 唤醒词对应的阈值,参数示例:[0.2, 0.3]majors
- 是否主唤醒词,主唤醒词为1,副唤醒词为0,如 [1,0]
设置主唤醒词后,内核会对唤醒词部分音频进行回溯IllegalPinyinException
- IllegalPinyinException
非法拼音异常public void feedData(byte[] data, int size)
data
- 音频数据size
- 音频数据大小BaseIntent.setUseCustomFeed(boolean)
public void start(AIWakeupIntent aiWakeupIntent)
aiWakeupIntent
- 配置参数public void stop()
stop
in class BaseEngine
public void forceRequestWakeupResult()
public void destroy()
destroy
in class BaseEngine