语音合成 API
两个接口均使用 X-API-Key 请求头。API Key 决定账号、项目、可用能力、速率限制和计费归属。
同步生成
POST /v1/text-to-speech
响应体包含完整的生成音频。
流式生成
POST /v1/text-to-speech/stream
响应使用 HTTP Chunked Transfer,音频就绪后直接返回原始音频字节;不是 SSE 或 JSON 流。
请求头
| 请求头 | 必填 | 说明 |
|---|---|---|
X-API-Key | 是 | 项目 API Key |
Content-Type | 是 | application/json |
JSON 请求体
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
generate_text | string | 是 | 待合成文本,计费使用平台加权字符数。 |
language | string | 否 | 当前 TTS 账号已启用的语言代码。 |
voice_id | string | 否 | 项目可用的音色 ID;省略时使用默认音色。 |
speed | number | 否 | 语速;省略或传 0 使用供应商默认值,负数会被拒绝。 |
emotion_class | string | 否 | 所选音色支持时使用的已审批情感预设。 |
audio_format | string | 否 | 所选音色和接口已启用的输出格式。 |
请使用控制台中当前项目可用的音色、语言和格式。
示例
curl --request POST \
--url "$VUILABS_API_BASE_URL/v1/text-to-speech" \
--header "X-API-Key: $VUILABS_API_KEY" \
--header "Content-Type: application/json" \
--data '{
"generate_text": "Your order is ready.",
"language": "en",
"speed": 1
}' \
--output speech.mp3
流式生成使用相同请求体,将路径改为 /v1/text-to-speech/stream,并按顺序消费响应块。
成功响应
- 状态:HTTP
200 - 响应体:原始音频字节
Content-Type:已审批供应商实际返回的音频 MIME 类型- PCM 响应还会返回采样率、声道数和位深请求头