跳到主要内容

API 参考

DBSDKManager​

prepare​

准备引擎所需的资源并执行鉴权。首次调用时会下载音色模型文件,因此耗时较长。

getVoiceList​

获取可用音色列表。只有在引擎准备完成后,才会返回可用的音色列表。

返回值: NSArray<DBSpeakerItem *>,列表可能为空。

getCurrentVoice​

获取当前设置的音色。
返回值: 音色 ID,可能为 nil。

cleanAllFiles​

删除音色模型文件。执行该方法后,下次调用 prepare() 时会重新下载这些文件。

返回值: void
注意: 引擎会自动清理不必要的文件,请勿在引擎的文件目录中存放其他文件。

start​

启动语音变换。

stop​

停止语音变换,但不会退出语音变换线程。执行该方法后,线程中的数据会被清空,线程进入休眠状态。

getEngineStatus​

获取当前引擎状态。

setVoice(voiceId: NSNumber)​

调用该方法时,会先检查该音色所需的模型是否已加载;如果未加载,则会先将模型加载到内存中。

设置音色。该操作为异步操作,结果会通过 DBActionResultBlock 回调返回。

注意: 只有在引擎准备完成后才能设置成功。无论当前是否正在进行语音变换,都可以设置音色。例如,在语音变换过程中,设置成功后声音会立即切换为新的音色。

releaseEngine​

释放引擎资源并终止线程。

transform(data: NSData): NSData?​

对音频数据进行变换。
输入:data: NSData
返回:NSData?(变换后的数据)

checkResources​

检查是否需要下载所需的资源文件。

setMode​

设置引擎处理模式(例如 Pro 模式)。

setMode(mode: DubbingMode, intonation: Float, pitch: Float)
参数名参数类型说明
modeDubbingMode模式枚举
intonationfloat情感起伏 / 语调
pitchfloat音高

getSupportIntonation​

检查当前音色是否支持语调调节。

getSupportPitch​

检查当前音色是否支持音高调节。

getMode​

获取当前引擎模式设置。

getIntonation​

获取当前语调值。

getPitch​

获取当前音高值。

proCalibration​

执行 Pro 模式校准。

DBSDKManager 默认参数说明​

参数名参数类型默认值说明
onActionResultDBActionResultBlocknil引擎事件回调
sampleRateNSInteger48000采样率
tokenNSString *nil鉴权 Token,由开发者获取
debugBOOLNO是否打印引擎运行日志
transformDebugBOOLNO是否打印变声处理日志,开启后会显著增加日志输出
muteOnFailBOOLYES变声失败时是否静音
channelNSInteger1默认声道数
formatDBAudioSampleFormatAUDIO_PCM_S16默认音频格式
isSyncBOOLNO是否启用同步变换

EngineConfig​

EngineConfig()​

构造函数。

defaultConfig​

创建默认配置实例。

debug​

开启日志打印,仅输出引擎运行过程中的日志信息。

transformDebug​

开启变声日志。语音变换为高频操作,开启后日志刷新速度较快。

token​

鉴权 Token,由服务端下发。

sampleRate​

采样率,默认值为 48000。常见可选值包括 16000、24000、48000。

onActionResult​

引擎回调。

muteOnFail​

变声失败时是否静音。

isSync​

是否启用同步变换。

channel​

音频声道数。

format​

音频格式设置。

onDownload​

下载进度回调。

DBDownloadProgressBlock​

onDownload(percent: NSInteger, index: NSInteger, count: NSInteger)​

参数名参数类型说明
percentNSInteger当前文件下载进度(0–100)
indexNSInteger当前下载文件索引,从 1 开始
countNSInteger需要下载的文件总数

DBActionResultBlock​

onActionResult(action: DubbingAction, code: DubbingEngineCode, msg: String?)​

参数名参数类型说明
actionDubbingAction 枚举事件类型
codeDubbingEngineCode 枚举事件结果
msgNSString *事件消息,可能为 nil

DubbingAction​

枚举值说明
SET_VOICE设置音色
AUTH鉴权
PREPARE准备引擎
CHECK_RESOURCES检查资源文件
PRO_CALIBRATIONPro 模式校准

DubbingEngineCode​

枚举值说明
SUCCESS成功
UNKNOWN_ERROR未知错误
NET_REQUEST_ERROR网络错误
NET_AUTH_ERROR鉴权失败
LIC_ERROR鉴权失败
ENGINE_STATUS_ERROR当前引擎状态不支持该操作
RESOURCE_MISSING_FILES缺少资源文件
VOICE_SETTING音色正在设置中
VOICE_NOT_SET未设置音色

DubbingEngineStatus​

枚举值说明
IDLE实例创建成功
PREPARING正在准备引擎资源
PREPARED引擎资源已就绪
STARTED语音变换已启动
STOPPED语音变换已停止
RELEASED引擎已释放
ERROR引擎错误
CHECKING正在检查资源文件
CALIBRATING正在进行自动校准

DBSpeakerItem​

成员变量说明
id音色 ID
name音色名称

DubbingMode​

枚举值说明
NORMAL_MODE普通模式
PRO_MODEPro 模式