API 文档AI 模型接口语音Bilibili

参考音频语音合成

通过说话人参考音频与可选情绪控制,零样本合成为 WAV 音频。

提交参考音频与文本,提取说话人音色后合成 WAV。可选通过情绪参考音频、8 维情绪向量或情绪文本控制情感。

请求为 multipart/form-data:文件字段携带参考音频,payload 为 JSON 字符串。成功时返回二进制 WAV,而不是 JSON URL。

Base URL

  • https://api.autorouter.top — Production

Authentication

BearerAuth: http (bearer) 使用 Bearer Token 认证。 格式: Authorization: Bearer sk-xxxxxx

Endpoints

POST /v1/audio/infer

创建参考音频语音合成请求

传入说话人参考音频与合成参数,返回 WAV 音频。

Request Body

Content-Type: multipart/form-data

Example:

{
  "model": "IndexTeam/IndexTTS-2",
  "spk_audio_file": "audio/klee.wav",
  "emo_audio_file": "audio/emo_sad.wav",
  "payload": "{\"input\":\"酒楼丧尽天良,开始借机竞拍房间,哎,一群蠢货。\",\"emo_alpha\":0.8,\"emo_control_method\":1}"
}

Properties:

NameTypeRequiredDescription
modelstringYes模型名称。固定为 IndexTeam/IndexTTS-2
spk_audio_filefileYes说话人参考音频,用于提取音色。MP3 / WAV,小于 20MB
emo_audio_filefileNo情绪参考音频。MP3 / WAV,小于 20MB。emo_control_method=1 时使用
payloadstringYesJSON 字符串,包含合成参数

payloadstring(必选)

JSON 字符串,Content-Type 为 application/json。解析后的字段如下。

inputstring(必选)

待合成文本,长度不超过 600 个字符。

sample_rateinteger(可选)

输出采样率(Hz)。常用值:22050(默认)、44100、48000。

speednumber(可选)

语速系数,取值 [0.25, 4],默认 1。

gainnumber(可选)

增益系数。1(默认)保持原音量。

emo_control_methodinteger(可选)

情绪控制方式。默认 0。

  • 0:不使用情绪参考
  • 1:使用 emo_audio_file
  • 2:使用 emo_vec
  • 3:使用 emo_text
emo_alphanumber(可选)

情绪融合权重,默认 1。

emo_vecnumber[](可选)

8 维情绪向量,仅当 emo_control_method=2 时使用。各元素之和不得超过 1.5。默认全 0。

emo_textstring(可选)

情绪文本描述,仅当 emo_control_method=3 时使用。示例:今天股票涨停了,好激动。

use_randomboolean(可选)

是否引入随机情绪变化。默认 false。

interval_silenceinteger(可选)

合成文本块之间的静音间隔(毫秒),默认 200。

Responses

200: 合成成功,返回 WAV 音频流

Content-Type: audio/wav

400: 请求参数错误

Content-Type: application/json

请求示例

curl -X POST "https://api.autorouter.top/v1/audio/infer" \
  -H "Authorization: Bearer sk-xxxxxx" \
  --output speech.wav \
  -F "model=IndexTeam/IndexTTS-2" \
  -F "spk_audio_file=@audio/klee.wav" \
  -F "emo_audio_file=@audio/emo_sad.wav" \
  -F 'payload={"input":"酒楼丧尽天良,开始借机竞拍房间,哎,一群蠢货。","emo_alpha":0.8,"emo_control_method":1}'

响应示例

<binary WAV audio stream>

响应字段说明:

NameTypeDescription
(body)binary成功时为 WAV 音频流,Content-Type: audio/wav
error.messagestring错误说明(失败时)
error.typestring错误类型
error.codestring机器可读错误码
error.paramstring请求 ID 或出错参数名

错误处理

HTTP 400 参数错误

场景处理建议
未传 spk_audio_file 或 payload补齐必填字段
payload.input 超过 600 字符缩短文本
emo_vec 元素之和超过 1.5缩小向量各维
参考音频超过 20MB 或格式非 MP3/WAV压缩或转换格式

HTTP 401 / 403 鉴权错误

  • 401 Unauthorized:API Key 无效或已过期
  • 403 Forbidden:API Key 无权访问此模型(检查 token 的模型白名单)

HTTP 402 余额不足

返回 insufficient user quota。请前往 AutoRouter 控制台充值。

目录