语音合成

声音克隆

对口型视频

其他

语音合成 (WebSocket)

通过 WebSocket 连接实时生成语音,适用于聊天机器人等场景

WebSocket 实时语音合成接口

WebSocket 地址

wss://fishspeech.live/v1/tts/ws?token=YOUR_API_TOKEN

连接流程

1. 建立连接,并在 URL 中包含 API Key
2. 服务端事件:连接建立
3. 客户端事件:初始化 TTS 配置
4. 服务端事件:服务就绪
5. 客户端事件:发送文本
6. 服务端事件:返回音频数据
7. 客户端事件:停止处理

客户端事件

// start 事件 - 初始化 TTS 配置
{
  "event": "start",
  "token": "YOUR_API_TOKEN",
  "request": {
    "reference_id": "your_model_id",  // 可选,模型 ID
    "latency": "normal",              // 可选,延迟模式:"normal" 或 "balanced"
    "format": "mp3",                  // 可选,音频格式:"mp3" 或 "wav"
    "version": "s1"                   // 可选,TTS 版本:"v1"、"v2"、"s1"
  }
}

// text 事件 - 发送文本
{
  "event": "text",
  "text": "要转换的文本内容"
}

// stop 事件 - 停止当前处理
{
  "event": "stop"
}

服务器事件

// connected 事件 - 连接建立
{
  "event": "connected",
  "message": "WebSocket connection established"
}

// ready 事件 - 服务就绪
{
  "event": "ready",
  "message": "TTS service ready"
}

// processing 事件 - 正在处理文本
{
  "event": "processing",
  "text": "已处理的文本"
}

// audio 事件 - 音频元数据
{
  "event": "audio",
  "format": "mp3",
  "text": "已处理的文本"
}

// 二进制数据 - 音频格式
<二进制音频数据>

// done 事件 - 处理完成
{
  "event": "done",
  "text": "已处理的文本"
}

// error 事件 - 发生错误
{
  "event": "error",
  "message": "错误信息",
  "text": "要转换的文本内容"  // 可选
}

// stopped 事件 - 停止确认
{
  "event": "stopped"
}

在线调试

WebSocket 调试

状态日志

暂无日志

状态码说明

状态码说明:
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       // 错误代码(可选)
}