创建异步语音合成任务
方法: POST路径: /minimax/v1/t2a_async_v2
通过 post 请求/minimaxi/v1/t2a_async_v2 创建语音合成任务,并立即返回task_id等相关信息
请求参数
Header 参数
text
Content-Type
string
必需
示例:
application/json
Authorization
string
可选
默认值:
Bearer {{YOUR_API_KEY}}Body 参数 application/json 必填
text
model
string
必需
请求的模型版本,可选范围:speech-2.6-hd, speech-2.6-turbo, speech-02-hd, speech-02-turbo, speech-01-hd, speech-01-turbo.
text
string
必需
待合成音频的文本,限制最长 5 万字符。和 text_file_id 二选一必填
language_boost
string
可选
是否增强对指定的小语种和方言的识别能力。默认值为 null,可设置为 auto 让模型自主判断。
可用选项: Chinese, Chinese,Yue, English, Arabic, Russian, Spanish, French, Portuguese, German, Turkish, Dutch, Ukrainian, Vietnamese, Indonesian, Japanese, Italian, Korean, Thai, Polish, Romanian, Greek, Czech, Finnish, Hindi, Bulgarian, Danish, Hebrew, Malay, Persian, Slovak, Swedish, Croatian, Filipino, Hungarian, Norwegian, Slovenian, Catalan, Nynorsk, Tamil, Afrikaans, auto
voice_setting
object
必需
voice_id
string
必需
合成音频的音色编号。
speed
number
可选
合成音频的语速,取值越大,语速越快。取值范围 [0.5,2],默认值为1.0
vol
number
可选
合成音频的音量,取值越大,音量越高。取值范围 (0,10],默认值为 1.0
pitch
integer
可选
合成音频的语调,取值范围 [-12,12],默认值为 0,其中 0 为原音色输出
pronunciation_dict
object
可选
tone
array
[string]
可选
定义需要特殊标注的文字或符号对应的注音或发音替换规则。在中文文本中,声调用数字表示:
一声为 1,二声为 2,三声为 3,四声为 4,轻声为 5
示例如下:
["燕少飞/(yan4)(shao3)(fei1)", "omg/oh my god"]
audio_setting
object
可选
audio_sample_rate
integer
可选
生成音频的采样率。可选范围 [8000,16000,22050,24000,32000,44100],默认为 32000
bitrate
integer
可选
生成音频的比特率。可选范围 [32000,64000,128000,256000],默认值为 128000。该参数仅对 mp3 格式的音频生效
format
string
可选
生成音频的格式。可选范围[mp3, pcm, flac],默认值为 mp3
可用选项: mp3, pcm, flac
channel
integer
可选
生成音频的声道数。可选范围:[1,2],其中 1 为单声道,2 为双声道,默认值为 1
voice_modify
object
声音效果器设置
可选
pitch
integer
可选
音高调整(低沉/明亮),范围 [-100,100],数值接近 -100,声音更低沉;接近 100,声音更明亮
intensity
integer
可选
强度调整(力量感/柔和),范围 [-100,100],数值接近 -100,声音更刚劲;接近 100,声音更轻柔
timbre
integer
可选
音色调整(磁性/清脆),范围 [-100,100],数值接近 -100,声音更浑厚;数值接近 100,声音更清脆
sound_effects
string
可选
音效设置,单次仅能选择一种,可选值:
spacious_echo(空旷回音)
auditorium_echo(礼堂广播)
lofi_telephone(电话失真)
robotic(电音)
可用选项: spacious_echo, auditorium_echo, lofi_telephone, robotic
text_file_id
integer
必需
待合成音频的文本文件 待合成音频的文本文件 id,单个文件长度限制小于 10 万字符,支持的文件格式:txt、zip。和 text 二选一必填,传入后自动校验格式。
txt 文件:长度限制 <100,000 字符。支持使用 <#x#> 标记自定义停顿。x 为停顿时长(单位:秒),范围 [0.01,99.99],最多保留两位小数。注意停顿需设置在两个可以语音发音的文本之间,不可连续使用多个停顿标记
zip 文件:
压缩包内需包含同一格式的 txt 或 json 文件。
json 文件格式:支持 [title, content, extra] 三个字段,分别表示标题、正文、附加信息。若三个字段都存在,则产出 3 组结果,共 9 个文件,统一存放在一个文件夹中。若某字段不存在或内容为空,则该字段不会生成对应结果
aigc_watermark
boolean
可选
控制在合成音频的末尾添加音频节奏标识,默认值为 False。该参数仅对非流式合成生效
示例
{
"model"
:
"speech-2.6-hd"
,
"text"
:
"真正的危险不是计算机开始像人一样思考,而是人开始像计算机一样思考。计算机只是可以帮我们处理一些简单事务。"
,
"language_boost"
:
"auto"
,
"voice_setting"
:
{
"voice_id"
:
"audiobook_male_1"
,
"speed"
:
1
,
"vol"
:
1
,
"pitch"
:
1
}
,
"pronunciation_dict"
:
{
"tone"
:
[
"危险/dangerous"
]
}
,
"audio_setting"
:
{
"audio_sample_rate"
:
32000
,
"bitrate"
:
128000
,
"format"
:
"mp3"
,
"channel"
:
2
}
,
"voice_modify"
:
{
"pitch"
:
0
,
"intensity"
:
0
,
"timbre"
:
0
,
"sound_effects"
:
"spacious_echo"
}
}请求示例代码
Shell
bash
curl --location --request POST '/minimax/v1/t2a_async_v2' \
--header 'Authorization: Bearer {{YOUR_API_KEY}}' \
--header 'Content-Type: application/json' \
--data-raw '{
"model": "speech-2.6-hd",
"text": "真正的危险不是计算机开始像人一样思考,而是人开始像计算机一样思考。计算机只是可以帮我们处理一些简单事务。",
"language_boost": "auto",
"voice_setting": {
"voice_id": "audiobook_male_1",
"speed": 1,
"vol": 1,
"pitch": 1
},
"pronunciation_dict": {
"tone": [
"危险/dangerous"
]
},
"audio_setting": {
"audio_sample_rate": 32000,
"bitrate": 128000,
"format": "mp3",
"channel": 2
},
"voice_modify": {
"pitch": 0,
"intensity": 0,
"timbre": 0,
"sound_effects": "spacious_echo"
}
}'返回响应
🟢 200 成功
内容类型: application/json
响应结构
text
task_id
integer
当前任务的 ID
可选
task_token
string
可选
完成当前任务使用的密钥信息
file_id
integer
可选
任务创建成功后返回的对应音频文件的 ID。
当任务完成后,可通过 file_id 调用 文件检索接口 进行下载
当请求出错时,不返回该字段 注意:返回的下载 URL 自生成起 9 小时(32,400 秒)内有效,过期后文件将失效,生成的信息便会丢失,请注意下载信息的时间
usage_characters
integer
计费字符数
可选
base_resp
object
可选
本次请求的状态码及其详情
status_code
integer
必需
状态码
0: 正常
1002: 限流
1004: 鉴权失败
1039: 触发 TPM 限流
1042: 非法字符超10%
2013: 参数错误
status_msg
string
状态详情
必需示例
json
{
"task_id": 95157322514444,
"task_token": "eyJhbGciOiJSUz",
"file_id": 95157322514444,
"usage_characters": 101,
"base_resp": {
"status_code": 0,
"status_msg": "success"
}
}