public class NearWakeupConfig
extends java.lang.Object
Constructor and Description |
---|
NearWakeupConfig() |
Modifier and Type | Method and Description |
---|---|
int |
getChannels() |
int |
getDebounceWnd() |
java.lang.String |
getDebugPath() |
java.util.Map<java.lang.String,java.lang.Object> |
getExtraParam() |
java.lang.String |
getIp() |
static java.lang.String |
getIPAddress(android.content.Context context) |
int |
getLogLevel() |
java.lang.String |
getMac() |
java.lang.String |
getMdsResource() |
boolean |
getNegSelected() |
boolean |
getRemoteJudge() |
int |
getSaveAudioMaxNumber() |
java.lang.String |
getServerName() |
java.lang.String |
getWakeupWord() |
double |
getWeight() |
int |
getWkpWnd() |
int |
getWsPort() |
boolean |
isAudioAdoptAEC() |
static boolean |
isIpAddress(java.lang.String address)
校验字符串是否是合法IP
|
void |
putExtraParam(java.lang.String key,
java.lang.Object value)
设置额外的参数, key:value 的形式。
例如:["abc":"ABC","num":123,"bb":false,"list":["a","1","c"]]
|
void |
setAudioAdoptAEC(boolean audioAdoptAEC)
就近唤醒是否采用带aec的音频
|
void |
setChannels(int channels)
输入音频通道数
|
void |
setDebounceWnd(int debounceWnd)
防抖窗口期,单位毫秒,范围50-1000,默认450ms。唤醒窗口期结束之后开始进入防抖窗口期,一次唤醒之
后,有可能还有部分设备不落在唤醒窗口期,在防抖窗口期内该设备也不会被唤醒。
|
void |
setDebugPath(java.lang.String debugPath)
中间音频、原始音频的存放路径
|
void |
setIp(java.lang.String ip)
设备ip地址(必须是真实联网IP地址,127.0.0.1不参与组网)
|
void |
setLogLevel(int logLevel)
设置就近唤醒的日志级别
用来设置 decision 模块日志级别, 对应的数值越小可打印日志级别越多;
反之至越少。数值 5 为不打印日志;默认数值是 1,打印大于等于 1 级别的日志。
|
void |
setMac(java.lang.String mac)
设备mac地址
|
void |
setMdsResource(java.lang.String mdsResource)
mds 资源
|
void |
setNegSelected(boolean negSelected)
控制在决策失败时(即当前设备没有最优的snr值)是否抛出唤醒结果,默认值为false(remoteJudge开启时有效)
为false时,不抛出
为true时抛出,(fespx_cb输出)如果唤醒成功在结果中包含 {"nwtkType", "neglected" },唤醒失败时包含 { "nwtkType", "selected" }
|
void |
setRemoteJudge(boolean remoteJudge)
(慎改)是否开启自组网服务(就近唤醒开关),默认值为 true
为 true 时设备之间会自动组网,并且自动选择,唤醒时自动决策出最优唤醒设备
为false时唤醒结果会抛出,(fespx_cb输出)同时在结果中新增一个"snr"值
|
void |
setSaveAudioMaxNumber(int saveAudioMaxNumber)
可选,设置保存音频文件最大个数,默认是1000个,不可设置为0
|
void |
setServerName(java.lang.String serverName)
服务点名称,相同的服务名才能相互发现和连接。用于不同设备间的隔离,服务名
不同无法组网交换信息。默认 "" ,就是普通的字符串。
|
void |
setWakeupWord(java.lang.String wakeupWord)
config.setWakeupWord("ni hao xiao yi, ni hao xiao chi")
|
void |
setWeight(double weight)
(慎改)选举权重,默认值1.0。取值范围大于等于0,值越大选举时优势越大
|
void |
setWkpWnd(int wkpWnd)
单次决策窗口期,单位毫秒,范围50-800,默认350ms。不同设备唤醒时间点有差异,且网络传输延
时导致一次唤醒存在时间差,在窗口期范围之内,同一唤醒词的唤醒被合并为同一个唤醒,从中选出
最优设备
|
void |
setWsPort(int wsPort)
(慎改)服务绑定的端口号
|
org.json.JSONObject |
toMdsJson()
mds 配置
|
org.json.JSONObject |
toNetJson()
网络设置,默认配置如下
|
public int getSaveAudioMaxNumber()
public void setSaveAudioMaxNumber(int saveAudioMaxNumber)
public boolean getRemoteJudge()
public void setRemoteJudge(boolean remoteJudge)
remoteJudge
- 是否开启自组网服务public boolean getNegSelected()
public void setNegSelected(boolean negSelected)
negSelected
- 就近唤醒决策失败后是否通知上层public java.lang.String getIp()
public void setIp(java.lang.String ip)
ip
- 设备ip地址 示例: "127.0.0.1"public java.lang.String getMac()
public void setMac(java.lang.String mac)
mac
- mac地址 示例:"BE-91-80-2F-66-61"public java.lang.String getServerName()
public void setServerName(java.lang.String serverName)
serverName
- 服务点名称public double getWeight()
public void setWeight(double weight)
weight
- 选举权重public int getWsPort()
public void setWsPort(int wsPort)
wsPort
- 端口号public int getWkpWnd()
public void setWkpWnd(int wkpWnd)
wkpWnd
- 单次决策窗口期public int getDebounceWnd()
public void setDebounceWnd(int debounceWnd)
debounceWnd
- 防抖窗口期public java.lang.String getDebugPath()
public void setDebugPath(java.lang.String debugPath)
debugPath
- 音频的存放路径public java.util.Map<java.lang.String,java.lang.Object> getExtraParam()
public void putExtraParam(java.lang.String key, java.lang.Object value)
key
- key,例如:"abc" "num" "list"value
- value,例如:"ABC" 123 false ["a","1","c"]public int getLogLevel()
public void setLogLevel(int logLevel)
logLevel
- 0-5public java.lang.String getWakeupWord()
public void setWakeupWord(java.lang.String wakeupWord)
config.setWakeupWord("ni hao xiao yi, ni hao xiao chi")
wakeupWord
- public org.json.JSONObject toNetJson()
{ "remoteJudge": 1, "negSelected": 0, "interface": "eth0", // "ip": "127.0.0.1", "mac": "BE-91-80-2F-66-61", "server_name": "nearwakeup:1", "type": "ethernet", // "weight": 1, "ws_port": 35791, "wkpWnd": 350, "debounceWnd": 450 }
public org.json.JSONObject toMdsJson()
{ "resBinPath": "./wakeup/md.bin", "channels": 2 }
public java.lang.String getMdsResource()
public void setMdsResource(java.lang.String mdsResource)
1. 如在 sd 里设置为绝对路径 如/sdcard/speech/***.bin
2. 如在 assets 里设置为名称
mdsResource
- mds 资源public int getChannels()
public void setChannels(int channels)
channels
- 通道数public boolean isAudioAdoptAEC()
public void setAudioAdoptAEC(boolean audioAdoptAEC)
audioAdoptAEC
- 采用带aec的原始音,默认为falsepublic static java.lang.String getIPAddress(android.content.Context context)
public static boolean isIpAddress(java.lang.String address)
address
- 传入的校验字段