Skip to content

JavaScript SDK API 参考 ​

@convbased/sdk 0.3 支持实时变声、文件变声和文本转语音。

函数 ​

ts
startVoiceChange(options: StartVoiceChangeOptions): Promise<VoiceSession>
convertFile(options: ConvertFileOptions): Promise<ConvertedFile>
textToSpeech(options: TextToSpeechOptions): Promise<TtsResult>

可以通过 Convbased 调用,也可以直接导入函数:

ts
import { Convbased } from "@convbased/sdk";
import { startVoiceChange, convertFile, textToSpeech } from "@convbased/sdk";
函数必填参数何时返回
startVoiceChangeauth、modelId实时服务就绪后,返回会话对象
convertFileauth、modelId、file文件变声任务完成后,返回下载地址
textToSpeechauth、text合成任务完成后,返回结果;是否需要参考音频取决于模式

VoiceSession ​

startVoiceChange() 返回:

成员作用
stream转换后的 MediaStream;尚未收到转换后的音频时为 null
setPitch(semitones)以半音为单位调整音高
update(preferences)在会话进行中更新传入的变声参数
setMuted(muted)设置麦克风是否静音
mute() / unmute()setMuted(true) / setMuted(false) 的简写
stop()结束会话并停止 SDK 使用的输入音轨

鉴权类型 ​

三个函数的 auth 参数都接收 SdkAuthentication。使用 SdkAuthOptions 配置令牌:

ts
type SdkAuthOptions = {
  clientId: string;
} & (
  | { tokenProvider: SdkTokenProvider; sessionToken?: never }
  | { sessionToken: string; tokenProvider?: never }
);

tokenProvider 与 sessionToken 不能同时传入。正式上线的网页应用应使用 tokenProvider;详见鉴权。

结果类型 ​

  • ConvertedFile:url 是转换后音频的临时下载地址,key 是音频文件的存储标识,可能不返回。
  • TtsResult:包含 key、url、实际使用的模式、计费数量与单位、音频时长、扣费金额与余额,以及可选的字幕数据。