Skip to Content
API 参考语音语音合成

创建语音合成

使用本接口将文本合成为语音。接口格式与 OpenAI audio/speech 协议兼容。

请求地址

方法地址
POSThttps://api.ant-ling.com/v1/audio/speech

授权

Authorization

  • 类型:HTTP Bearer Auth,值类型 string
  • 必填
  • 说明:用于验证账户信息。前往 API 控制台 ,点击创建令牌获取。
Authorization: Bearer <YOUR_API_KEY>

请求头

Content-Type

  • 类型:enum<string>
  • 必填,固定值 application/json
  • 说明:请求体的媒体类型,必须为 application/json。

请求体

概览

参数类型必填默认值说明
modelstring是—TTS 模型 ID
inputstring是—要合成语音的文本内容
voicestring否—生成语音时使用的音色
referencesobject[]否—声音克隆 / 声音设计的参考音频
instructionsstring否—语音控制指令
response_formatstring否流式 pcm,同步 wav输出音频的格式
sample_ratenumber否22050输出音频的采样率,单位为 Hz
speednumber否1.0生成语音的速度
volumenumber否1.0生成语音的音量
pitchnumber否1.0生成语音的音调
stream_formatstring否不开启流式音频数据的流式返回方式

model

  • 类型:string
  • 必填
  • 说明:要使用的 TTS 模型。
  • 可选值:Ming-3.0-tts

input

  • 类型:string
  • 必填
  • 说明:要合成语音的文本内容。最大长度 2048 字符。不能为 null 或空字符串。

voice

  • 类型:string
  • 选填
  • 说明:生成语音时使用的音色,支持系统音色。如需使用自定义音色,请改用 references 参数。

references

  • 类型:object[]
  • 选填
  • 说明:用于无状态声音克隆或声音设计的参考音频列表,作为生成语音时使用的自定义音色。当前模型最多支持 1 条,每条最长 30 秒、不超过 10 MB,支持格式:WAV。

references[].audio

  • 类型:string
  • 必填
  • 说明:语音样本的音频 Base64 编码数据。为获得最佳效果,请使用 10–30 秒清晰、背景噪声尽可能少的语音。支持格式:WAV。

将音频文件转换为 Base64 编码字符串后传入,转换后的 Base64 编码字符串大小不能超过 10 MB。请在 Base64 编码前携带前缀:data:{MIME_TYPE};base64,$BASE64_AUDIO:

  • {MIME_TYPE} — 音频的 MIME 类型(媒体类型),用于标识音频格式,需替换为实际音频对应的 MIME 值,例如 audio/wav。
  • $BASE64_AUDIO — 音频文件的纯 Base64 编码字符串(不含任何前缀)。

references[].text

  • 类型:string
  • 必填
  • 说明:音频样本中所说内容的逐字转录文本。音频与该文本的准确性对声音克隆质量非常重要。

instructions

  • 类型:string
  • 选填
  • 说明:生成语音时的语音控制指令。通过音色风格描述,使用所设计的音色进行语音播报。

response_format

  • 类型:string
  • 选填,流式默认 pcm,同步默认 wav
  • 说明:输出音频的格式。
  • 可选值:mp3、wav、pcm、opus、aac

sample_rate

  • 类型:number
  • 选填,默认 22050 Hz
  • 说明:输出音频的采样率,单位为 Hz。
  • 可选值:8000、16000、22050、24000

speed

  • 类型:number
  • 选填,默认 1.0
  • 说明:生成语音的速度。范围 [0.25, 4.0]。

volume

  • 类型:number
  • 选填,默认 1.0
  • 说明:生成语音的音量。范围 [0.5, 2.0]。

pitch

  • 类型:number
  • 选填,默认 1.0
  • 说明:生成语音的音调。范围 [0.5, 2.0]。

stream_format

  • 类型:string
  • 选填
  • 说明:开启流式返回音频数据,适用于低延迟、边生成边播放的场景。
  • 可选值:
值说明
sse以 Server-Sent Events 格式流式返回,音频数据经 Base64 编码后通过 SSE 事件推送
audio以 chunked transfer encoding 直接流式返回原始音频二进制数据

Ming-3.0-tts 目前仅支持 sse,不支持 audio。

sse 模式适合浏览器端通过 EventSource 接收,有明确的事件边界和结束信号;audio 模式适合服务端或原生客户端直接消费音频流,开销更低。


响应体

非流式

响应类型为 file — 音频二进制内容。HTTP 响应的 Content-Type 根据 response_format 参数变化:

response_formatContent-Type
mp3audio/mpeg
opusaudio/opus
aacaudio/aac
wavaudio/wav
pcmaudio/pcm

SSE 流

  • Content-Type:text/event-stream
  • 说明:Server-Sent Events 流。每帧为 data: <json>\n\n,JSON 内容遵循 TTS Event 结构。

speech.audio.delta

  • 类型:object
  • 说明:增量音频片段事件。
data: {"type": "speech.audio.delta", "audio": "//uQxAAAAAANIAAAAAExBTUUzLjEw..."}
  • 字段:
    • type — 固定值 speech.audio.delta。
    • audio — 一段 Base64 编码的音频数据片段。

speech.audio.done

  • 类型:object
  • 说明:音频合成完成的终止事件。
data: {"type": "speech.audio.done", "usage": {"prompt_tokens": 12, "completion_tokens": 80, "total_tokens": 92}}
  • 字段:
    • type — 固定值 speech.audio.done。
    • usage — Token 用量统计:prompt_tokens(输入)、completion_tokens(输出)、total_tokens(总用量)。

音频二进制流

  • Content-Type:与 response_format 对应(见上表)
  • 说明:响应为原始音频二进制流,通过 HTTP chunked transfer encoding 流式返回。

示例


请求示例

curl --request POST \ --url https://api.ant-ling.com/v1/audio/speech \ --header 'Authorization: Bearer <YOUR_API_KEY>' \ --header 'Content-Type: application/json' \ --data '{ "model": "Ming-3.0-tts", "input": "你好,你是谁?", "voice": "UK_Charlotte", "response_format": "pcm", "stream_format": "sse" }'

响应示例

stream_format 不设置时,默认不开启流式,返回对应格式的音频文件二进制内容。

HTTP/1.1 200 OK Content-Type: audio/wav <音频二进制数据>
这个页面对你有帮助吗?
Last updated on