语音合成
创建语音生成任务
说明
Cicada-TTS提供异步语音合成API,适用于长文本的音频合成任务,单次请求长度限制小于4千字。
- 支持上百种系统音色,也可以使用用户定制音色,复刻音色自主选择
- 支持语速和音调的调整
- 支持音频时长的返回
- 支持时间戳(字幕)返回,精确到句
- 支持中英双语克隆
注意: 异步语音合成,RPM 200, 具体进度通过查询接口查看
使用流程
- 创建定制声音任务,获取定制声音得到的audio_man参数
- 调用创建语音生成任务API,获取 task_id
- 调用查询语音生成任务状态API,基于task_id获取语音合成任务进度
- 当任务状态完成时,上述调用查询语音合成结果API返回的相应JSON获取音频链接和字幕信息
请求地址
http
POST /open/v1/create_audio_taskHeader
http
access_token: {{access_token}}
Content-Type: application/json请求参数Body
| 参数名称 | 类型 | Nested Key | 是否必传 | 示例 | 说明 |
|---|---|---|---|---|---|
| audio_man | string | 是 | C-f6254806192e4ef99189ae899d89943e | 声音ID | |
| speed | number | 是 | 1 | 语速(范围:0.5x~2x) | |
| pitch | number | 是 | 1 | 语调(范围根据声音人类型变化,具体参照类型范围对照表) | |
| text | object | text | 是 | 你好,我是你的蝉镜数字人(文本长度限制为4000字以下) | 富文本 |
| plain_text | 否 | 你好,我是你的蝉镜数字人 | |||
| font_size | number | 否 | 64 | 字幕字体大小(推荐使用默认值) | |
| width | number | 否 | 1000 | 每行字幕宽度(推荐使用默认值) | |
| height | number | 否 | 90 | 每行字幕高度(推荐使用默认值) | |
| callback | string | 否 | "http://127.0.0.1:8012/test_callback" | 回调地址(任务结束后会向该地址发送一个 POST 请求。++请求体的格式和++获取语音合成结果++接口查询结果返回的data相同++) | |
| aigc_watermark | bool | 否 | 音频是否加明水印,默认是false |
请求示例
json
{
"audio_man": "C-f7387406192e4ef99189ae899d89943e",
"speed": 1,
"pitch": 1,
"text": {
"text": "你好,我是你的蝉镜数字人",
"plain_text": "你好,我是你的蝉镜数字人"
},
"font_size": 64,
"width": 1000,
"height": 90,
"callback": "http://127.0.0.1:8012/test_callback"
}响应JSON
json
{
"trace_id": "dd09f123a25b43cf2119a2449daea6de",
"code": 0,
"msg": "success",
"data": {
"task_id": "88f635dd9b8e4a898abb9d4679e0edc8"
}
}声音类型对应语调范围及效率表(声音类型通过查询声音详情接口获取)
| 声音类型 | 语调范围 | 生成效率 |
|---|---|---|
| cicada1.0 | 不支持 | 20-25 字符/秒 |
| cicada2.0 | 0.1 ~ 3 / -12 ~ 12 (具体范围咨询客服) | 8-25 字符/秒 |
| cicada3.0 | 不支持 | 20-35 字符/秒 |
| cicada3.0-turbo | 不支持 | 10-15 字符/秒 |
响应参数
| 字段 | 说明 |
|---|---|
| code | 响应状态码 |
| msg | 响应消息 |
| task_id | 语音合成任务ID |
响应状态码说明
| code | 说明 |
|---|---|
| 0 | 响应成功 |
| 400 | 传入参数格式错误 |
| 10400 | AccessToken验证失败 |
| APP状态错误 | |
| 缺少 tts 文本 | |
| 缺少音频文件 | |
| 输入文本不可以包含 emoji | |
| 40000 | 参数错误 |
| 40001 | 超出QPS限制 |
| 40002 | 制作视频时长到达上限 |
| 50000 | 系统内部错误 |
| 没有找到对应的声音ID | |
| 声音ID对应的audio_man不存在或被禁用 |
创建口音合成任务
说明
Cicada-TTS的语音模型提供口音合成能力,支持用户选取相应的口音并且上传一段个人的音色,即可合成具备个人音色和特定口音的音频。
使用流程
口音合成的实现具体流程如下:
- 通过文件管理上传自己的音色文件,并获取prompt_audio的参数
- 咨询客服或者售后人员获取口音id信息
- 上传待合成的文本信息 (文本长度不能超过4000字)
- 调用口音合成任务并获取task_id
- 根据task_id调用获取语音合成结果的接口,获取相应的音频信息
注意: 此接口为异步任务,具体进度通过查询接口查看,计费:0.2蝉豆/秒,RPM为200
更多口音请咨询客服或对应售后人员
| 声音人名称 | 模型 | 口音id |
|---|---|---|
| 四川男年轻 | cicada3.0-turbo | 89843d52ccd04e2d854decd28d6143ce |
| 南京男年轻 | cicada3.0-turbo | b9705cff084c4416b02f01d797025c25 |
| 陕西男年轻 | cicada3.0-turbo | f28c22c6d26f48f29ee4cc1380adff24 |
| 天津年轻男 | cicada3.0-turbo | 2c9f4ce01f254b5e9408e5af3b464900 |
| 天津年迈女 | cicada3.0-turbo | eb370cde929049d9b36debcb6161f053 |
| 东北年轻男 | cicada3.0-turbo | 4027dfc73c6e4235911dba293f53e62f |
| 台湾口音男 | cicada3.0-turbo | 63dd6a2bf2c54cbe828154f393e5d833 |
| 闽南口音女 | cicada3.0-turbo | 1880b61fc567431aafe35266057a6585 |
| 北京年轻男 | cicada3.0-turbo | 8a18396b48b54d5f8d4143369145d357 |
| 东北年迈女 | cicada3.0-turbo | ed5eea52f94045198e9ec7c45e54fb96 |
| 河南年迈女 | cicada3.0-turbo | 737b5b61343640139f539767c03be495 |
| 四川年轻女 | cicada3.0-turbo | 74afc28ab43544669f50773449acf2b5 |
请求地址
http
POST /open/v1/create_audio_task_v2Header
http
access_token: {{access_token}}
Content-Type: application/json请求参数Body
| 参数名称 | 类型 | Nested Key | 是否必传 | 示例 | 说明 |
|---|---|---|---|---|---|
| audio_man | string | 是 | C-f6254806192e4ef99189ae899d89943e | 声音ID | |
| speed | number | 是 | 1 | 语速(范围:0.5x~2x) | |
| pitch | number | 是 | 1 | 语调(范围根据声音人类型变化,具体参照类型范围对照表) | |
| text | object | text | 是 | 你好,我是你的蝉镜数字人(文本长度限制为4000字以下) | 富文本 |
| plain_text | 否 | 你好,我是你的蝉镜数字人 | |||
| callback | string | 否 | "http://127.0.0.1:8012/test_callback" | 回调地址(任务结束后会向该地址发送一个 POST 请求。++请求体的格式和++获取语音合成结果++接口查询结果返回的data相同++) | |
| aigc_watermark | bool | 否 | false | 音频是否加明水印,默认是false | |
| prompt_audio | string | 否 | 09eacb8ead0a423e9dcd75065ae32d25 | 音色prompt,使用特定口音的声音人+音色prompt可以实现让对应音色使用特定口音发音,来自通过文件管理上传的音色文件 | |
| mss | number | 是 | 10 | AI断句字数,替换原本的font_size、width、height |
请求示例
json
{
"audio_man": "C-f7387406192e4ef99189ae899d89943e",
"speed": 1,
"pitch": 1,
"text": {
"text": "你好,我是你的蝉镜数字人",
"plain_text": "你好,我是你的蝉镜数字人"
},
"callback": "http://127.0.0.1:8012/test_callback",
"prompt_audio": "09eacb8ead0a423e9dcd75065ae32d25",
"mss": 10
}响应JSON
json
{
"trace_id": "dd09f123a25b43cf2119a2449daea6de",
"code": 0,
"msg": "success",
"data": {
"task_id": "88f635dd9b8e4a898abb9d4679e0edc8"
}
}声音类型对应语调范围及效率表(声音类型通过查询声音详情接口获取)
| 声音类型 | 语调范围 | 生成效率 |
|---|---|---|
| cicada1.0 | 不支持 | 20-25 字符/秒 |
| cicada2.0 | 0.1 ~ 3 / -12 ~ 12 (具体范围咨询客服) | 8-25 字符/秒 |
| cicada3.0 | 不支持 | 20-35 字符/秒 |
| cicada3.0-turbo | 不支持 | 10-15 字符/秒 |
响应参数
| 字段 | 说明 |
|---|---|
| code | 响应状态码 |
| msg | 响应消息 |
| task_id | 语音合成任务ID |
响应状态码说明
| code | 说明 |
|---|---|
| 0 | 响应成功 |
| 400 | 传入参数格式错误 |
| 10400 | AccessToken验证失败 |
| APP状态错误 | |
| 缺少 tts 文本 | |
| 缺少音频文件 | |
| 输入文本不可以包含 emoji | |
| 40000 | 参数错误 |
| 40001 | 超出QPS限制 |
| 40002 | 制作视频时长到达上限 |
| 50000 | 系统内部错误 |
| 没有找到对应的声音ID | |
| 声音ID对应的audio_man不存在或被禁用 |
获取语音合成结果
该接口仅用于查询语音生成任务的进度
请求地址
http
POST /open/v1/audio_task_stateHeader
http
access_token: {{access_token}}
Content-Type: application/json请求参数Body
| 参数名称 | 类型 | 是否必传 | 示例 | 说明 |
|---|---|---|---|---|
| task_id | string | 是 | 88f789dd9b8e4a121abb9d4679e0edc8 | 语音合成任务ID |
响应JSON
json
{
"trace_id": "ab18b14574bbcc31df864099d474080e",
"code": 0,
"msg": "success",
"data": {
"id": "9546a0fb1f0a4ae3b5c7489b77e4a94d",
"type": "tts",
"status": 9,
"text": [
"猫在跌落时能够在空中调整身体,通常能够四脚着地,这种”猫右自己“反射显示了它们惊人的身体协调能力和灵活性。核磁共振成像技术通过利用人体细胞中氢原子的磁性来生成详细的内部图像,为医学诊断提供了重要工具。"
],
"full": {
"url": "https://www.chanjing.cc/chanjing/res/upload/tts/2025-04-08/093a59021d85a72d28a491f21820ece4.wav",
"path": "093a59013d85a72d28a491f21820ece4.wav",
"duration": 18.81
},
"slice": null,
"errMsg": "",
"errReason": "",
"subtitles": [
{
"key": "20c53ff8cce9831a8d9c347263a400a54d72be15",
"start_time": 0,
"end_time": 2.77,
"subtitle": "猫在跌落时能够在空中调整身体"
},
{
"key": "e19f481b6cd2219225fa4ff67836448e054b2271",
"start_time": 2.77,
"end_time": 4.49,
"subtitle": "通常能够四脚着地"
},
{
"key": "140beae4046bd7a99fbe4706295c19aedfeeb843",
"start_time": 4.49,
"end_time": 5.73,
"subtitle": "这种,猫右自己"
},
{
"key": "e851881271876ab5a90f4be754fde2dc6b5498fd",
"start_time": 5.73,
"end_time": 7.97,
"subtitle": "反射显示了它们惊人的身体"
},
{
"key": "fbb0b4138bad189b9fc02669fe1f95116e9991b4",
"start_time": 7.97,
"end_time": 9.45,
"subtitle": "协调能力和灵活性"
},
{
"key": "f73404d135feaf84dd8fbea13af32eac847ac26d",
"start_time": 9.45,
"end_time": 12.49,
"subtitle": "核磁共振成像技术通过利用人体"
},
{
"key": "e18827931223962e477b14b2b8046947039ac222",
"start_time": 12.49,
"end_time": 14.77,
"subtitle": "细胞中氢原子的磁性来生成"
},
{
"key": "d137bf2b0c8b7a39e3f6753b7cf5d92bd877d2d9",
"start_time": 14.77,
"end_time": 15.97,
"subtitle": "详细的内部图像"
},
{
"key": "0773911ae0dbaa763a64352abdb6bdac3ff8f149",
"start_time": 15.97,
"end_time": 18.41,
"subtitle": "为医学诊断提供了重要工具"
}
]
}
}响应字段说明
| 一级字段 | 二级字段 | 三级字段 | 说明 |
|---|---|---|---|
| code | 响应状态码 | ||
| msg | 响应消息 | ||
| data | id | 视频id | |
| type | 语音类型 | ||
| status | 状态:1 生成中、9 生成完毕(包含成功与失败) | ||
| text | 语音文本 | ||
| full | url | 音频链接 | |
| path | 音频地址 | ||
| duration | 音频时长 | ||
| slice | 切片 | ||
| errMsg | 错误信息 | ||
| errReason | 错误理由 | ||
| subtitles(数组类型) | key | 字幕key值 | |
| start_time | 字幕开始时间点 | ||
| end_time | 字幕结束时间点 | ||
| subtitle | 字幕文本 |
响应状态码说明
| code | 说明 |
|---|---|
| 0 | 响应成功 |
| 10400 | AccessToken验证失败 |
| APP状态错误 | |
| 40000 | 参数错误 |
| 50000 | 系统内部错误 |