使用已有的语音模型将文本转换为语音
POST /api/open/tts
// JSON 格式 Content-Type: application/json Authorization: Bearer YOUR_API_TOKEN // API密钥 // MessagePack 格式 Content-Type: application/msgpack Authorization: Bearer YOUR_API_TOKEN // API密钥
{
"reference_id": string, // 必填,声音模型ID
"text": string, // 必填,要转换的文本
"speed": number, // 可选,语速,范围:0.5-2.0,默认:1
"volume": number, // 可选,音量,范围:-20-20,默认:0
"version": string, // 可选,TTS版本,可选值:"v1"、"v2"、"s1",默认:"v1"
"format": string, // 可选,音频格式,可选值:"mp3"、"wav"、"pcm",默认:"mp3"
"cache": boolean // 可选,是否缓存音频并返回URL,默认:false
}// 成功响应 (cache=false) - 200
Content-Type: audio/mpeg
<二进制音频数据>
// 成功响应 (cache=true) - 200
Content-Type: application/json
{
"success": boolean, // 是否成功
"audio_url": string, // 音频文件URL
"format": string, // 音频格式
"characters_used": number, // 使用的字符数
"quota_remaining": number // 剩余API积分
}
// 错误响应
{
"error": string // 错误提示信息
}# JSON 格式 - 使用 s1 模型(推荐)
curl -X POST https://fishspeech.net/api/open/tts \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-d '{
"reference_id": "your_model_id",
"text": "要转换的文本内容",
"speed": 1.0,
"volume": 0,
"version": "s1",
"format": "mp3",
"cache": false
}' \
--output output.mp3
# 支持的音频格式:mp3, wav, pcm
# 支持的TTS版本:v1, v2, s1
# 根据选择的格式,输出文件扩展名应相应更改
# MessagePack 格式 (需要使用支持 MessagePack 的客户端库)状态码说明:
200 OK - 请求成功
400 Bad Request - 请求参数错误
401 Unauthorized - API Token 无效
403 Forbidden - 禁止访问
404 Not Found - 资源不存在
413 Payload Too Large - 上传文件过大
429 Too Many Requests - 请求频率超限/积分不足
500 Server Error - 服务器内部错误
错误响应格式:
{
"error": string, // 错误信息
"details": string, // 详细错误信息(可选)
"code": string // 错误代码(可选)
}