跳转到主要内容
POST
/
v1
/
t2a_v2
语音合成 HTTP 流式 (TTS-SSE)
curl --request POST \
  --url https://api.senseaudio.cn/v1/t2a_v2 \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "model": "senseaudio-tts-1.5-260319",
  "text": "这是一个流式输出的例子。",
  "stream": true,
  "voice_setting": {
    "voice_id": "male_0004_a",
    "latex_read": false
  },
  "stream_options": {
    "exclude_aggregated_audio": true
  }
}
'
[
  {
    "data": {
      "audio": "49443304...",
      "status": 1
    },
    "extra_info": null,
    "trace_id": "69c20e38c8761996a85d57881fe4d817",
    "base_resp": {
      "status_code": 0,
      "status_msg": ""
    }
  },
  {
    "data": {
      "audio": "fffb9864...",
      "status": 2
    },
    "extra_info": {
      "audio_length": 2306,
      "audio_sample_rate": 32000,
      "audio_size": 36908,
      "bitrate": 128000,
      "audio_format": "mp3",
      "audio_channel": 2,
      "word_count": 24,
      "usage_characters": 30
    },
    "trace_id": "69c20e38c8761996a85d57881fe4d817",
    "base_resp": {
      "status_code": 0,
      "status_msg": "success"
    }
  }
]

Documentation Index

Fetch the complete documentation index at: https://docs.senseaudio.cn/llms.txt

Use this file to discover all available pages before exploring further.

说明

将文本通过 SSE 协议流式合成为语音,适用于低延迟、边合成边播放的实时场景。请求参数与 语音合成 HTTP 完全相同,仅需将 stream 设为 true;响应为 text/event-stream
  • 接口地址https://api.senseaudio.cn/v1/t2a_v2
  • Content-Type(请求)application/json
  • Content-Type(响应)text/event-stream; charset=utf-8
  • 鉴权方式:Bearer Token,详见 快速接入
  • 语音合成:参考 语音合成 HTTP
  • WebSocket 合成:参考 语音合成 WebSocket
流式模式要求 stream 固定为 true;响应采用 SSE 格式,每个事件以 data: 前缀 + JSON 对象返回,extra_info 仅在最后一个 chunk 返回。

SSE 响应格式

响应 Content-Type: text/event-stream; charset=utf-8。每个数据块以 data: 开头,后跟一个 JSON 对象,字段与同步返回的 TTSResponse 一致,data.status 用于标识分片顺序。
data
object
合成数据对象,可能为 null,需进行非空判断。
extra_info
object
音频附加信息,仅在最后一个 chunk 返回
trace_id
string
链路追踪 ID。
base_resp
object
本次请求的状态码和详情。

流式响应示例

data: {"data":{"audio":"49443304...","status":1},"extra_info":null,"trace_id":"69c20e38c8761996a85d57881fe4d817","base_resp":{"status_code":0,"status_msg":""}}

data: {"data":{"audio":"fffb9864...","status":1},"extra_info":null,"trace_id":"69c20e38c8761996a85d57881fe4d817","base_resp":{"status_code":0,"status_msg":""}}

data: {"data":{"audio":"fffb9864...","status":2},"extra_info":{"audio_length":2306,"audio_sample_rate":32000,"audio_size":36908,"bitrate":128000,"audio_format":"mp3","audio_channel":2,"word_count":24,"usage_characters":30},"trace_id":"69c20e38c8761996a85d57881fe4d817","base_resp":{"status_code":0,"status_msg":"success"}}

代码示例

curl -X POST https://api.senseaudio.cn/v1/t2a_v2 \
  -H "Authorization: Bearer $SENSEAUDIO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "senseaudio-tts-1.5-260319",
    "text": "这是一个流式输出的例子。",
    "stream": true,
    "voice_setting": {
      "voice_id": "male_0004_a",
      "latex_read": false
    },
    "stream_options": {
      "exclude_aggregated_audio": true
    }
  }'

相关指南

授权

Authorization
string
header
必填

格式:Bearer <API_KEY>

请求体

application/json
model
enum<string>
默认值:senseaudio-tts-1.5-260319
必填

TTS 模型 ID。senseaudio-tts-1.5-260319 为推荐版本(情绪/多音字/公式朗读支持,且支持克隆与文生音色);

可用选项:
senseaudio-tts-1.5-260319
示例:

"senseaudio-tts-1.5-260319"

text
string
必填

合成文本,最大 10000 字符,支持 停顿符

示例:

"这是一个流式输出的例子。"

stream
enum<boolean>
默认值:true
必填

流式模式必须为 true

可用选项:
true
示例:

true

voice_setting
object
必填
audio_setting
object
dictionary
object[]
stream_options
object

响应

SSE 流式响应。每行以 data: 开头,后跟一个 TTSStreamChunk JSON 对象;事件之间以空行分隔。

SSE 单个事件的 JSON 载荷(去除 data: 前缀后的内容)。

data
object
extra_info
object

仅在最后一个 chunk(data.status=2)返回。

trace_id
string
base_resp
object

通用状态结构