场景一:同步语音合成
适用:文本较短、希望一次请求直接拿到音频的场景。
一次 POST 提交,响应里直接返回音频数据(hex 编码),无需轮询。
请求
curl
curl --request POST \
--url https://api.allyang.cn/minimaxi/v1/t2a_v2 \
--header 'Authorization: Bearer <API-Key>' \
--header 'Content-Type: application/json' \
--data '{
"model": "speech-2.6-hd",
"text": "今天是不是很开心呀,当然了!",
"stream": false,
"voice_setting": {
"voice_id": "male-qn-qingse",
"speed": 1,
"vol": 1,
"pitch": 0,
"emotion": "happy"
},
"pronunciation_dict": {
"tone": [
"处理/(chu3)(li3)",
"危险/dangerous"
]
},
"audio_setting": {
"sample_rate": 32000,
"bitrate": 128000,
"format": "mp3",
"channel": 1
},
"subtitle_enable": false
}'
其中 pronunciation_dict.tone 用于纠正多音字或指定中英混读,格式为 原文/替换读音或译文。
响应
json
{
"data": {
"audio": "<hex 编码的音频数据>",
"status": 2
},
"extra_info": {
"audio_length": 9900,
"audio_sample_rate": 32000,
"audio_size": 160323,
"bitrate": 128000,
"word_count": 52,
"invisible_character_ratio": 0,
"usage_characters": 26,
"audio_format": "mp3",
"audio_channel": 1
},
"trace_id": "01b8bf9bb7433cc75c18eee6cfa8fe21",
"base_resp": {
"status_code": 0,
"status_msg": "success"
}
}
拿到 data.audio 后按 hex 解码落盘,即为可播放的 mp3。
事实冲突(待核)
- 源文档正文写「提交到
/minimaxi/v1/voice_design」,但示例请求实际打的是/minimaxi/v1/t2a_v2,两处路径不一致;本站以示例中的t2a_v2为准,voice_design是否为另一能力待确认。 - 音频参数键名在源文档中出现两种写法(
sample_rate与audio_sample_rate),本站按各示例原样保留,实际接收键名待实测确认。