概述

Index-TTS2 是支持音色复刻与多情感控制的语音合成服务,采用异步任务模式,分为「任务提交」与「状态查询」两个独立接口。开发者提交合成任务后获取任务 ID,通过轮询任务状态获取最终合成音频地址,适用于长文本合成、批量生成等场景。

统一鉴权说明

所有接口均通过 HTTP Header 传递鉴权信息,调用前需获取有效 API Key。

  • Header 名称:Authorization
  • 取值格式:Bearer {{YOUR_API_KEY}}
  • 示例:Authorization: Bearer sk-xxxxxxxxxxxxxx

1. 异步语音合成任务提交

1.1 基本信息

说明
接口地址 https://www.jiaozitts.com/api/v1/indextts-flagship-submit
请求方式 POST
Content-Type application/json

1.2 请求头参数

参数名 类型 必填 说明
Authorization string 鉴权令牌,格式为 Bearer {{YOUR_API_KEY}}

1.3 请求体参数

接口支持 4 种合成模式,所有模式均需传入基础音色参数,可按需叠加情感控制参数。

公共必填参数

参数名 类型 必填 长度限制 说明 示例
text string 1 ~ 2048 字符 待合成的文本内容 欢迎使用 index-tts2 语音生成服务
speaker_audio_url string - 音色参考音频的公网可访问 URL,用于复刻目标音色 https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20250211/bxokea/serena.wav

模式一:基础音色模式

仅传入公共必填参数即可,使用参考音频的默认情感进行合成,无额外参数。

模式二:情感迁移模式

额外传入情感参考音频,将参考音频的情感特征迁移到合成结果中。

参数名 类型 必填 说明 示例
emotion_audio_url string 情感参考音频的公网可访问 URL https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20250211/bxokea/serena.wav
emotion_alpha number 情感强度系数,取值范围 0~1,数值越大情感表现越强 0.5

模式三:情感向量模式

通过传入情感向量精准控制合成情感,具体参数以官方最新说明为准。

模式四:情感文本模式

通过文本描述控制合成情感风格,具体参数以官方最新说明为准。

1.4 请求示例(cURL)

curl --location 'https://www.jiaozitts.com/api/v1/indextts-flagship-submit' 
--header 'Authorization: Bearer {{YOUR_API_KEY}}' 
--header 'Content-Type: application/json' 
--data '{
    "text": "今天心情真好,阳光明媚!",
    "speaker_audio_url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20250211/bxokea/serena.wav",
    "emotion_audio_url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20250211/bxokea/serena.wav",
    "emotion_alpha": 0.5
}'

1.5 响应参数

参数名 类型 说明
code integer HTTP 状态码,提交成功固定为 200
message string 全局响应提示信息
data object 任务提交结果数据
∟ task_id string 任务唯一标识,用于后续状态查询
∟ char_count integer 本次合成计费的字符数
∟ cost number 本次合成消耗的费用
∟ status string 任务当前状态,提交成功为 submitted
∟ message string 任务状态详情说明

1.6 响应示例

提交成功

{
    "code": 200,
    "message": "任务提交成功",
    "data": {
        "task_id": "c0a53f2f-957d-455e-b0ee-4031bd9b8e82",
        "char_count": 38,
        "cost": 0.01,
        "status": "submitted",
        "message": "任务提交成功"
    }
}

常见失败场景

  • 用户任务数已达到上限
  • 系统任务数已达到上限

2. 任务状态查询

2.1 基本信息

说明
接口地址 https://www.jiaozitts.com/api/v1/indextts-flagship-status
请求方式 POST
Content-Type application/json

2.2 请求头参数

参数名 类型 必填 说明
Authorization string 鉴权令牌,格式为 Bearer {{YOUR_API_KEY}}

2.3 请求体参数

参数名 类型 必填 说明 示例
task_id string 任务提交接口返回的任务唯一 ID bca34ac3-7e4c-4719-9471-6bfd06812c6d

2.4 请求示例(cURL)

curl --location 'https://www.jiaozitts.com/api/v1/indextts-flagship-status' 
--header 'Authorization: Bearer {{YOUR_API_KEY}}' 
--header 'Content-Type: application/json' 
--data '{
    "task_id": "bca34ac3-7e4c-4719-9471-6bfd06812c6d"
}'

2.5 响应参数

参数名 类型 说明
code integer HTTP 状态码,请求成功固定为 200
message string 状态描述,取值包含:语音合成成功、排队中、处理中、合成失败、参数错误
data object 任务状态数据体
∟ task_id string 任务唯一标识
∟ status string 任务状态码:completed(合成成功)、processing(处理中)、queuing(排队中)、failed(失败)
∟ audio_url string 合成完成后返回的音频公网下载地址,仅成功状态下返回

2.6 响应示例

合成成功

{
    "code": 200,
    "message": "语音合成成功",
    "data": {
        "task_id": "3b00652e-eff5-467a-b7f1-c3b9922ab359",
        "status": "completed",
        "audio_url": "shturl.cc/wmrAxKkRFGitrrrRs12ds1ZZJqEqisYlaPt4Ekg3Xz67QloxDjFz"
    }
}

3. 完整调用流程

  1. 提交任务:调用「异步语音合成任务提交」接口,传入文本与音色参考音频,获取 task_id 与计费信息。
  2. 轮询状态:使用 task_id 调用「任务状态查询」接口,建议间隔 1~3 秒轮询一次。
  3. 获取音频:当任务状态变为 completed 时,从响应中获取 audio_url 下载或播放音频。

4. 使用注意事项

  1. 参考音频 URL 必须为公网可直接访问的 HTTP/HTTPS 地址,不支持本地文件与需要鉴权的私有链接。
  2. 单次合成文本长度限制为 2048 字符,超长文本建议分段提交任务。
  3. 异步任务存在排队与处理耗时,文本越长处理时间越久,请合理设置轮询间隔与超时时间。
  4. 合成成功的音频地址存在有效期,请及时下载保存。
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。