MiniMax T2A API
模型简介
Exchange Token 通过下面这条原生路径提供 MiniMax 文本转语音能力:
POST /v1/t2a_v2
当你要把文本直接转换成音频,并且希望使用 MiniMax 兼容的请求与返回格式时,使用这个接口即可。
支持模型
speech-2.8-hdspeech-2.8-turbospeech-2.6-hdspeech-2.6-turbospeech-02-hdspeech-02-turbo
调用方式
API 端点
text
https://api.exchangetoken.ai认证方式
MiniMax T2A 使用以下认证头:
text
x-key: YOUR_API_KEY请求格式
text
Content-Type: application/json请求路径
text
POST /v1/t2a_v2核心请求字段
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
model | string | 是 | TTS 模型名称 |
text | string | 是 | 输入文本,建议控制在 10000 字符以内 |
stream | boolean | 否 | 是否启用流式返回 |
voice_setting | object | 是 | 语音配置,必须包含 voice_id |
audio_setting | object | 否 | 音频编码参数 |
language_boost | string | 否 | 语言提示,例如 auto、English、Chinese |
pronunciation_dict | object | 否 | 自定义发音映射 |
voice_modify | object | 否 | 音色、强度、音效调节 |
subtitle_enable | boolean | 否 | 是否输出字幕 |
subtitle_type | string | 否 | sentence、word 或 word_streaming |
output_format | string | 否 | 非流式支持 hex 和 url,流式返回 hex 分片 |
非流式调用示例
bash
curl -X POST "https://api.exchangetoken.ai/v1/t2a_v2" \
-H "x-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "speech-2.8-hd",
"text": "欢迎使用 Exchange Token,这是一段 MiniMax 文本转语音示例。",
"stream": false,
"language_boost": "auto",
"output_format": "hex",
"voice_setting": {
"voice_id": "English_Graceful_Lady",
"speed": 1,
"vol": 1,
"pitch": 0
},
"audio_setting": {
"sample_rate": 32000,
"bitrate": 128000,
"format": "mp3",
"channel": 1
}
}'非流式返回示例
json
{
"data": {
"audio": "<hex encoded audio>",
"status": 2
},
"extra_info": {
"audio_length": 11124,
"audio_sample_rate": 32000,
"audio_size": 179926,
"bitrate": 128000,
"word_count": 163,
"invisible_character_ratio": 0,
"usage_characters": 163,
"audio_format": "mp3",
"audio_channel": 1
},
"trace_id": "01b8bf9bb7433cc75c18eee6cfa8fe21",
"base_resp": {
"status_code": 0,
"status_msg": "success"
}
}流式调用示例
bash
curl -N -X POST "https://api.exchangetoken.ai/v1/t2a_v2" \
-H "x-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "speech-2.8-turbo",
"text": "这次请求会以流式方式返回音频分片。",
"stream": true,
"output_format": "hex",
"voice_setting": {
"voice_id": "English_Insightful_Speaker",
"speed": 1,
"vol": 1,
"pitch": 0
},
"audio_setting": {
"sample_rate": 32000,
"bitrate": 128000,
"format": "mp3",
"channel": 1
}
}'当 stream=true 时,服务端会持续返回多个分片。中间分片通常是 data.status = 1,最后一个分片是 data.status = 2。
流式分片示例
json
{
"data": {
"audio": "<hex encoded audio chunk>",
"status": 1
},
"trace_id": "01b8bf9bb7433cc75c18eee6cfa8fe21",
"base_resp": {
"status_code": 0,
"status_msg": ""
}
}语音与音频参数
voice_setting
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
voice_id | string | 是 | 目标音色 ID |
speed | number | 否 | 范围 0.5 到 2 |
vol | number | 否 | 范围 (0, 10] |
pitch | integer | 否 | 范围 -12 到 12 |
emotion | string | 否 | 情绪风格 |
audio_setting
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
sample_rate | integer | 否 | 8000、16000、22050、24000、32000、44100 |
bitrate | integer | 否 | 32000、64000、128000、256000 |
format | string | 否 | mp3、pcm、flac、wav、pcmu_raw、pcmu_wav、opus |
channel | integer | 否 | 1 为单声道,2 为双声道 |
返回字段说明
| 字段 | 说明 |
|---|---|
data.audio | 生成的音频内容 |
data.status | 1 表示生成中,2 表示生成完成 |
extra_info.usage_characters | 本次合成的计费字符数 |
trace_id | 请求追踪 ID |
base_resp.status_code | 请求状态码,0 表示成功 |
错误返回格式
json
{
"base_resp": {
"status_code": 1004,
"status_msg": "authentication failed"
}
}常见含义:
0:成功1002:请求频率超限1004:鉴权失败1039:TPM 超限1042:无效字符占比超限2013:输入参数非法
说明
- 文本较长时,建议优先使用流式模式,以便更快拿到首段音频。
- 非流式模式下,
output_format支持hex和url。 - 流式模式下,音频会以
hex分片形式持续返回。 - 如需排查请求问题,请保留
trace_id。
