public class DUILiteConfig
extends java.lang.Object
implements java.lang.Cloneable
Modifier and Type | Class and Description |
---|---|
static class |
DUILiteConfig.Builder |
static interface |
DUILiteConfig.ExternalAudioRecordProvider
外部传入录音机的provider
|
Modifier and Type | Field and Description |
---|---|
static int |
audioSourceType_MIC
MediaRecorder.AudioSource.MIC声音源
|
static int |
audioSourceType_VOICE_RECOGNITION
MediaRecorder.AudioSource.VOICE_RECOGNITION声音源
|
static java.lang.String |
CONFIG_KEY_ZOOM_AUDIO_FLAG
支持指定 asr 或者 vad 外部配置是否缩放声音能量幅值
默认都放大
|
static java.lang.String |
CONFIG_KEY_ZOOM_AUDIO_RATE
支持外部配置是否缩放声音能量幅值
取值: [0,5.0]
|
static int |
CONFIG_VAL_ZOOM_AUDIO_FLAG_ASR |
static int |
CONFIG_VAL_ZOOM_AUDIO_FLAG_VAD |
static int |
CONFIG_VAL_ZOOM_AUDIO_FLAG_VAD_OUT
支持指定 vad out音频 外部配置是否缩放声音能量幅值
默认不放大
|
static java.lang.String |
offlineProfileName
assets目录下的离线授权文件名
|
static int |
TYPE_COMMON_CIRCLE4
环形4麦模式SDK,获取四通道音频
|
static int |
TYPE_COMMON_CIRCLE6
环形6麦模式SDK,获取六通道音频
|
static int |
TYPE_COMMON_DUAL
家居双麦模式SDK,获取双通道音频
|
static int |
TYPE_COMMON_ECHO
echo模式SDK,获取双通道音频(包含一路参考音)
|
static int |
TYPE_COMMON_FESPCAR
车载双麦模式SDK,获取双通道音频
|
static int |
TYPE_COMMON_FESPCAR4
车载四麦模式SDK,使用SSPE四音区,获取四通道音频
|
static int |
TYPE_COMMON_LINE4
线性4麦模式SDK,获取四通道音频
|
static int |
TYPE_COMMON_LINE6
线性6麦模式SDK,获取六通道音频
|
static int |
TYPE_COMMON_LINE8
线性8麦模式SDK,获取八通道音频
|
static int |
TYPE_COMMON_MIC
普通单麦模式SDK,获取单通道音频
|
static int |
TYPE_COMMON_SHAPE_L4
L形状4麦模式SDK,获取4路音频
|
static int |
TYPE_TINYCAP_CIRCLE4
线性四麦通过TinyCap方式录音,获取4+2音频
|
static int |
TYPE_TINYCAP_CIRCLE6
环形六麦通过TinyCap方式录音,获取6+2音频
|
static int |
TYPE_TINYCAP_DUAL
家居双麦通过TinyCap方式录音,获取2+2音频
|
static int |
TYPE_TINYCAP_LINE4
线性四麦通过TinyCap方式录音,获取4+2音频
|
static int |
TYPE_TINYCAP_LINE6
线性六麦通过TinyCap方式录音,获取6+2音频
|
static int |
UPLOAD_AUDIO_LEVEL_ALL
上传唤醒和预唤醒音频
|
static int |
UPLOAD_AUDIO_LEVEL_NONE
音频都不上传
|
static byte |
UPLOAD_AUDIO_LEVEL_PREWAKEUP
只上传预唤醒音频
|
static int |
UPLOAD_AUDIO_LEVEL_WAKEUP
只上传唤醒音频
|
Constructor and Description |
---|
DUILiteConfig(java.lang.String apiKey,
java.lang.String productId,
java.lang.String productKey,
java.lang.String productSecret) |
DUILiteConfig(java.lang.String apiKey,
java.lang.String productId,
java.lang.String productKey,
java.lang.String productSecret,
java.lang.String ttsCacheDir,
boolean useDoubleVad) |
Modifier and Type | Method and Description |
---|---|
java.lang.Object |
clone() |
java.lang.String |
getApiKey() |
int |
getAudioRecorderType() |
int |
getAudioSourceType() |
AuthConfig |
getAuthConfig() |
int |
getAuthRetryTimesForNetworkErr() |
java.lang.String |
getAuthServer() |
int |
getAuthTimeout() |
int |
getCacheUploadMaxNumber()
Deprecated.
废弃
|
java.lang.String |
getDeviceProfileDirPath() |
AIEchoConfig |
getEchoConfig() |
static DUILiteConfig.ExternalAudioRecordProvider |
getExternalAudioRecordProvider() |
java.util.Map<java.lang.String,java.lang.String> |
getExtraParameter() |
boolean |
getIllegalPingyinCheck() |
int |
getIntervalTime() |
java.lang.String |
getLocalSaveAudioPath() |
boolean |
getLocalSaveEnabled() |
java.lang.String |
getLogFilePath() |
int |
getMaxMessageQueueSize() |
java.lang.String |
getOfflineProfileName() |
java.lang.String |
getProductId() |
java.lang.String |
getProductKey() |
java.lang.String |
getProductSecret() |
RecorderConfig |
getRecorderConfig() |
int |
getThreadAffinity() |
java.lang.String |
getTtsCacheDir() |
int |
getUploadAudioDelayTime()
Deprecated.
废弃
|
int |
getUploadAudioLevel() |
java.lang.String |
getUploadAudioPath() |
UploadConfig |
getUploadConfig() |
java.lang.String |
getUploadUrl() |
boolean |
isCacheUploadEnable() |
boolean |
isCallbackInThread() |
boolean |
isEncryptCustomDeviceName() |
boolean |
isIgnoreLogin() |
boolean |
isLogEnable() |
boolean |
isMaxVolumeMode()
获取当前大音量模式
|
boolean |
isMonitorUploadEnable() |
boolean |
isProductInfoValid() |
boolean |
isUpdateTrailProfileToOnlineProfile() |
boolean |
isUseDoubleVad()
支持外部配置是否启用信号处理双VAD
设置sspe信号处理返回多路音频,以及VAD加载多路音频
取值: true or false 是否使用双VAD
|
boolean |
isUseSpeechDns() |
void |
openLog()
Deprecated.
废弃
|
void |
openLog(java.lang.String logFilePath)
Deprecated.
|
void |
setAudioRecorderType(int type)
设置录音机采集数据的方式
|
void |
setAudioSourceType(int audioSourceType)
设置audioRecorder的声音源
|
void |
setAuthRetryTimesForNetworkErr(int authRetryTimesForNetworkErr)
授权在网络错误时重试的次数
|
void |
setAuthServer(java.lang.String authServer)
设置DUI授权url地址
|
void |
setAuthTimeout(int authTimeout)
授权网络连接超时时间
|
void |
setCacheUploadEnable(boolean cacheUploadEnable)
设置 sdk 缓存唤醒、预唤醒音频文件,默认不缓存
|
void |
setCacheUploadMaxNumber(int cacheUploadMaxNumber)
Deprecated.
废弃
|
void |
setCallbackInThread(boolean callbackInThread)
设置 sdk 的回调是否都在子线程里,默认 false
|
void |
setDeviceProfileDirPath(java.lang.String deviceProfileDirPath)
授权文件保存目录的绝对路径
|
void |
setEchoConfig(AIEchoConfig echoConfig)
设置 ECHO 模式的配置,其它模式下无影响
|
void |
setEncryptCustomDeviceName(boolean encryptCustomDeviceName) |
static void |
setExternalAudioRecordProvider(DUILiteConfig.ExternalAudioRecordProvider provider) |
void |
setExtraParameter(java.lang.String key,
int value)
参数设置
需在init前调用生效
|
void |
setExtraParameter(java.lang.String key,
java.lang.String value)
参数设置,主要用于设置devicename和deviceID,其中,devicename是设备计量的标识,可以根据需要自行设置
如果不设置,服务器会生成一个devicename。
//设置deviceName
setExtraParameter("DEVICE_NAME","deviceName");
//也可以使用deviceID作为设备的唯一标识符
setExtraParameter("DEVICE_ID","deviceId");
setExtraParameter("DEVICE_NAME_TYPE", "deviceId");
//使用预分配方案
setExtraParameter("LICENSE_ID", "licenseId");
需在init前调用生效 |
void |
setIgnoreLogin(boolean ignoreLogin)
设置是否优化授权速度
|
void |
setIllegalPingyinCheck(boolean illegalPingyinCheck) |
void |
setIntervalTime(int recordInterValTime)
设置录音机录音间隔,单位ms
|
void |
setLocalSaveAudioPath(java.lang.String localSaveAudioPath)
Deprecated.
|
void |
setLocalSaveAudioPath(java.lang.String localSaveAudioPath,
boolean localSaveEnabled)
Deprecated.
|
void |
setMaxMessageQueueSize(int maxMessageQueueSize)
设置消息队列最大长度,
|
void |
setMaxVolumeMode(boolean isMaxVolumeMode)
设置开启线性四麦大音量检测模式
|
void |
setMonitorUploadEnable(boolean monitorUploadEnable)
设置 SDK信息(异常监控信息)是否上传,默认上传
|
void |
setOfflineProfileName(java.lang.String offlineProfileName)
assets目录下的离线授权文件名
|
void |
setThreadAffinity(int threadAffinity)
设置算法绑定线程开关,降低CPU占用,默认值:0
取值:具体的核id |
void |
setUpdateTrailProfileToOnlineProfile(boolean updateTrailProfileToOnlineProfile)
当试用授权文件认证检查时,是否尝试更新为在线授权文件。default is true
|
void |
setUploadAudioLevel(int uploadAudioLevel)
Deprecated.
废弃,当前由服务端控制
|
void |
setUploadAudioLevel(int uploadAudioLevel,
int uploadAudioDelayTime)
Deprecated.
废弃,当前由服务端控制上传等级
|
void |
setUploadAudioPath(java.lang.String uploadAudioPath)
设置大数据上传唤醒音频的本地存储路径,如果不设置,默认存储在sd卡的cache目录
|
void |
setUploadConfig(UploadConfig uploadConfig) |
void |
setUploadUrl(java.lang.String uploadUrl)
设置大数据上传url地址
|
void |
setUseDoubleVad(boolean useDoubleVad) |
void |
setUseSpeechDns(boolean useSpeechDns)
设置是否使用思必驰的DNS
|
java.lang.String |
toString() |
public static final int UPLOAD_AUDIO_LEVEL_NONE
public static final byte UPLOAD_AUDIO_LEVEL_PREWAKEUP
public static final int UPLOAD_AUDIO_LEVEL_WAKEUP
public static final int UPLOAD_AUDIO_LEVEL_ALL
public static final int TYPE_COMMON_MIC
public static final int TYPE_COMMON_DUAL
public static final int TYPE_COMMON_LINE4
public static final int TYPE_COMMON_CIRCLE6
public static final int TYPE_COMMON_ECHO
public static final int TYPE_COMMON_FESPCAR
public static final int TYPE_COMMON_CIRCLE4
public static final int TYPE_TINYCAP_DUAL
public static final int TYPE_TINYCAP_LINE4
public static final int TYPE_TINYCAP_CIRCLE4
public static final int TYPE_COMMON_LINE6
public static final int TYPE_COMMON_SHAPE_L4
public static final int TYPE_TINYCAP_LINE6
public static final int TYPE_TINYCAP_CIRCLE6
public static final int TYPE_COMMON_LINE8
public static final int TYPE_COMMON_FESPCAR4
public static java.lang.String offlineProfileName
取值:授权文件名
是否必需:否
public static int audioSourceType_VOICE_RECOGNITION
public static int audioSourceType_MIC
public static final java.lang.String CONFIG_KEY_ZOOM_AUDIO_RATE
public static final java.lang.String CONFIG_KEY_ZOOM_AUDIO_FLAG
public static final int CONFIG_VAL_ZOOM_AUDIO_FLAG_VAD
public static final int CONFIG_VAL_ZOOM_AUDIO_FLAG_ASR
public static final int CONFIG_VAL_ZOOM_AUDIO_FLAG_VAD_OUT
public DUILiteConfig(java.lang.String apiKey, java.lang.String productId, java.lang.String productKey, java.lang.String productSecret)
public DUILiteConfig(java.lang.String apiKey, java.lang.String productId, java.lang.String productKey, java.lang.String productSecret, java.lang.String ttsCacheDir, boolean useDoubleVad)
public boolean isEncryptCustomDeviceName()
public void setEncryptCustomDeviceName(boolean encryptCustomDeviceName)
public static DUILiteConfig.ExternalAudioRecordProvider getExternalAudioRecordProvider()
public static void setExternalAudioRecordProvider(DUILiteConfig.ExternalAudioRecordProvider provider)
public java.lang.String getUploadUrl()
public boolean isIgnoreLogin()
public void setIgnoreLogin(boolean ignoreLogin)
ignoreLogin
- 默认falsepublic void setUploadUrl(java.lang.String uploadUrl)
取值:字符串
是否必需:否
默认值:https://log.aispeech.com
uploadUrl
- 大数据上传url地址public java.lang.String getAuthServer()
public void setAuthServer(java.lang.String authServer)
取值:字符串
是否必需:否
默认值:https://auth.dui.ai
authServer
- DUI授权url地址public int getAuthTimeout()
public void setAuthTimeout(int authTimeout)
单位:毫秒 默认值:5000ms
authTimeout
- 网络连接超时时间public boolean isUpdateTrailProfileToOnlineProfile()
public boolean isUseDoubleVad()
public void setUseDoubleVad(boolean useDoubleVad)
public void setUpdateTrailProfileToOnlineProfile(boolean updateTrailProfileToOnlineProfile)
不进行联网更新授权文件才需要设置
updateTrailProfileToOnlineProfile
- 是否尝试更新为在线授权文件public java.lang.String getDeviceProfileDirPath()
public void setDeviceProfileDirPath(java.lang.String deviceProfileDirPath)
取值:绝对路径字符串, e.g./sdard/speech
默认存放目录 /data/data/包名/files/
deviceProfileDirPath
- 授权文件保存目录的绝对路径public java.lang.String getOfflineProfileName()
public void setOfflineProfileName(java.lang.String offlineProfileName)
取值:授权文件名
是否必需:否
offlineProfileName
- 离线授权文件名@Deprecated public int getCacheUploadMaxNumber()
@Deprecated public void setCacheUploadMaxNumber(int cacheUploadMaxNumber)
cacheUploadMaxNumber
- 最大缓存文件数据个数public int getThreadAffinity()
public java.lang.String getTtsCacheDir()
public void setThreadAffinity(int threadAffinity)
threadAffinity
- 具体的核idpublic java.lang.String getLocalSaveAudioPath()
public void setLocalSaveAudioPath(java.lang.String localSaveAudioPath)
DUILiteSDK.openGlobalAudioSave(String)
localSaveAudioPath
- 绝对路径字符串public void setLocalSaveAudioPath(java.lang.String localSaveAudioPath, boolean localSaveEnabled)
DUILiteSDK.openGlobalAudioSave(String)
localSaveAudioPath
- 绝对路径字符串localSaveEnabled
- 动态设置音频保存public boolean isCacheUploadEnable()
public void setCacheUploadEnable(boolean cacheUploadEnable)
public int getUploadAudioLevel()
@Deprecated public void setUploadAudioLevel(int uploadAudioLevel)
UPLOAD_AUDIO_LEVEL_NONE
UPLOAD_AUDIO_LEVEL_NONE
UPLOAD_AUDIO_LEVEL_WAKEUP
UPLOAD_AUDIO_LEVEL_PREWAKEUP
UPLOAD_AUDIO_LEVEL_ALL
uploadAudioLevel
- 上传音频等级public java.lang.String getUploadAudioPath()
public void setUploadAudioPath(java.lang.String uploadAudioPath)
uploadAudioPath
- 唤醒音频的本地存储路径@Deprecated public int getUploadAudioDelayTime()
@Deprecated public void setUploadAudioLevel(int uploadAudioLevel, int uploadAudioDelayTime)
uploadAudioLevel
- 上传音频等级, default is UPLOAD_AUDIO_LEVEL_NONE
UPLOAD_AUDIO_LEVEL_NONE
UPLOAD_AUDIO_LEVEL_WAKEUP
UPLOAD_AUDIO_LEVEL_PREWAKEUP
UPLOAD_AUDIO_LEVEL_ALL
uploadAudioDelayTime
- 上传唤醒音频的延迟时间,单位:毫秒,default is 300000毫秒 uploadAudioLevel
不能为 UPLOAD_AUDIO_LEVEL_NONE
public int getIntervalTime()
public void setIntervalTime(int recordInterValTime)
recordInterValTime
- 音频间隔public int getAudioSourceType()
public void setAudioSourceType(int audioSourceType)
audioSourceType
- 默认为VOICE_RECOGNITION
可选值:audioSourceType_VOICE_RECOGNITION
和
audioSourceType_MIC
public int getAudioRecorderType()
public void setAudioRecorderType(int type)
type
- 默认为common_dualpublic boolean isMaxVolumeMode()
public void setMaxVolumeMode(boolean isMaxVolumeMode)
isMaxVolumeMode
- 大音量模式开关,默认关闭为falsepublic void setExtraParameter(java.lang.String key, java.lang.String value)
//设置deviceName
setExtraParameter("DEVICE_NAME","deviceName");
//也可以使用deviceID作为设备的唯一标识符
setExtraParameter("DEVICE_ID","deviceId");
setExtraParameter("DEVICE_NAME_TYPE", "deviceId");
//使用预分配方案
setExtraParameter("LICENSE_ID", "licenseId");
需在init前调用生效key
- keyvalue
- valuepublic void setExtraParameter(java.lang.String key, int value)
key
- keyvalue
- valuepublic boolean isUseSpeechDns()
public void setUseSpeechDns(boolean useSpeechDns)
useSpeechDns
- 是否使用思必驰的DNS,默认为truepublic java.util.Map<java.lang.String,java.lang.String> getExtraParameter()
public boolean isProductInfoValid()
public java.lang.String getApiKey()
public java.lang.String getProductId()
public java.lang.String getProductKey()
public java.lang.String getProductSecret()
public java.lang.Object clone() throws java.lang.CloneNotSupportedException
clone
in class java.lang.Object
java.lang.CloneNotSupportedException
public boolean isMonitorUploadEnable()
public void setMonitorUploadEnable(boolean monitorUploadEnable)
monitorUploadEnable
- true 上传,false 不上传public void setIllegalPingyinCheck(boolean illegalPingyinCheck)
public boolean isLogEnable()
public java.lang.String getLogFilePath()
public boolean getIllegalPingyinCheck()
@Deprecated public void openLog()
DUILiteSDK.setDebugMode(int)
@Deprecated public void openLog(java.lang.String logFilePath)
logFilePath
- 保存的日志文件路径,包含文件名,比如"/sdcard/duilite/DUILite_SDK.log"DUILiteSDK.setDebugMode(int, String)
public int getAuthRetryTimesForNetworkErr()
public void setAuthRetryTimesForNetworkErr(int authRetryTimesForNetworkErr)
authRetryTimesForNetworkErr
- 授权重试次数,默认为0,不重试public boolean isCallbackInThread()
public void setUploadConfig(UploadConfig uploadConfig)
public void setCallbackInThread(boolean callbackInThread)
callbackInThread
- false 文本结果在主线程回调,音频在子线程回调,true 全部在子线程里回调public AIEchoConfig getEchoConfig()
public void setEchoConfig(AIEchoConfig echoConfig)
echoConfig
- ECHO 模式的配置public int getMaxMessageQueueSize()
public AuthConfig getAuthConfig()
public RecorderConfig getRecorderConfig()
public UploadConfig getUploadConfig()
public void setMaxMessageQueueSize(int maxMessageQueueSize)
默认0, 0表示不限制长度, 建议大于100
动态库方法运行在一个单独的线程里,通过消息队列依次调用。 在设备性能不好的设备上可以设置消息队列最大长度,防止算力不够导致内核无法及时处理完音频数据而导致内存过大的问题
maxMessageQueueSize
- 消息队列最大长度public java.lang.String toString()
toString
in class java.lang.Object
public boolean getLocalSaveEnabled()