You need to enable JavaScript to run this app.
文档中心
豆包语音

豆包语音

复制全文
下载 pdf
音频生成
音频生成
复制全文
下载 pdf
音频生成
基于 HTTP 协议的非流式音频生成接口。支持通过参考音频、参考图片或自然语言描述生成定制化音频,涵盖音效、音色等多种创作维度,单次最长可生成 120 秒音频,适用于有声书、影视配音、游戏音效等场景。​
POST https://openspeech.bytedance.com/api/v3/tts/create​
请求头​
X-Api-Key string 必选​
API Key 可从 控制台>API Key管理 获取​
新版控制台使用 X-Api-Key 单头鉴权,旧版控制台使用 X-Api-App-Id + X-Api-Access-Key 双头鉴权,参考示例详见:旧版控制台鉴权参考示例​
注意​
旧版控制台后续会下线,建议尽快切换到新版控制台获取 API Key​
​
X-Api-Request-Id string​
客户端请求追踪ID,用于跨系统关联。建议传入内部业务系统的 TraceID,或使用UUID生成​
​
​
请求体​
model string 必选​
模型版本标识,当前支持模型如下:​
  • seed-audio-1.0​
  • 支持语种: 中文 英文 日语 韩语 墨西哥-西班牙语 西班牙语 德语 法语 巴西-葡萄牙语 泰语 越南语 马来语 菲律宾语 意大利语 俄语 荷兰语 波兰语 土耳其语​
  • 支持时间轴控制,可通过text_prompt自然语言描述控制音频总时长及人声说话的具体时间段​
​
text_prompt string 必选​
用于合成音频的提示词或者待合成的文本内容,最大支持3000字符。当前支持以下生成模式:​
  • 纯文本生成:直接传入提示词,系统按 text_prompt 中的描述生成音频​
  • 参考音频生成:通过 @音频N 引用 references 中对应位置的参考音频,编号从 1 开始,按上传顺序依次为@音频1、 @音频2......​
  • 参考图片生成:使用图片参考时,本字段可只传入待合成的文本内容​
说明​
当前支持的语种请参考model的参数描述​
​
references object list​
参考资源列表,根据传入内容自动匹配生成模式:​
  • 纯文本生成:不传参考资源,按 text_prompt 中的提示词生成音频​
  • 参考音频生成:传入音频参考,按参考音频和 text_prompt 中的提示词生成音频,同时支持通过音色ID指定音色​
  • 参考图片生成:传入图片参考,按 text_prompt 中的文本内容生成音频​
支持纯文本、文本 + 图片、文本 + 音频的组合生成音频​
说明​
  • 参考音频的上传顺序须与text_prompt中@音频N的编号顺序严格对应,即上传的第一条音频对应@音频1,以此类推​
  • 最多支持上传3条参考音频,单条时长 ≦ 30秒,单条大小 ≦ 10 MB。支持格式:wav/mp3/pcm/ogg_opus​
  • 最多支持上传1张参考图片,图片大小 ≦ 10MB。支持格式jpeg/png/webp​
speaker string​
音色 ID,支持使用"豆包语音合成模型2.0"的音色或声音复刻音色​
注意​
speaker、 audio_data、audio_url 参数互斥,仅需传入其中一个参数​
​
audio_data string​
参考音频 Base64 编码​
注意​
speaker、 audio_data、audio_url 参数互斥,仅需传入其中一个参数​
​
audio_url string​
参考音频 URL,支持引用远端音频​
注意​
speaker、 audio_data、audio_url 参数互斥,仅需传入其中一个参数​
​
image_data string​
参考图片 Base64 编码​
注意​
  • 该参数与image_url互斥,仅需传入其中一个参数​
  • 图片参考不能与音频参考混用,即image_data 参数不能与audio_data 、audio_url 或 speaker同时传入​
​
image_url string​
参考图片URL​
注意​
  • 该参数与image_data互斥,仅需传入其中一个参数​
  • 图片参考不能与音频参考混用,即image_url 参数不能与audio_data 、audio_url 或 speaker同时传入​
​
​
audio_config object​
输出音频配置​
format string​
指定输出音频的格式,默认为wav​
可选值:wav/mp3/pcm/ogg_opus​
​
sample_rate int​
指定输出音频的采样率,单位为Hz,不同音频格式支持的采样率不同,详细如下:​
  • wav/pcm默认值为40000,取值范围为[8000,16000,24000,32000,40000,44100,48000]​
  • mp3默认值为44100,取值范围为[8000,16000,24000,32000,44100,48000]​
  • ogg_opus仅支持48000​
​
speech_rate int​
指定语速,默认值为0,取值范围:[-50,100],取值越大,语速越快​
-50代表0.5倍速,100代表2.0倍速,默认不调整语速​
​
loudness_rate int​
指定音量,默认值为0,取值范围:[-50,100],取值越大,音量越大​
-50代表0.5倍音量,100代表2.0倍音量,默认不调整音量​
​
pitch_rate int​
指定音调,默认值为0,默认不调整音调,取值范围:[-12,12],取值越大,音调越高​
​
enable_subtitle bool​
启用字幕服务,默认值为false,开启后,将返回字级别的时间戳​
可选值:true, false​
​
​
watermark object​
水印配置,不传时默认不添加水印​
aigc_watermark bool​
显式水印开关,默认值为 False,开启后可在合成结尾增加音频节奏标识​
可选值:true, false​
​
aigc_metadata object​
隐式水印,开启后可在合成音频 header 加入元数据,不开启时默认不添加水印​
enable bool​
启用隐式水印,默认值为 False​
可选值:true, false​
​
content_producer string​
指定合成服务提供者的名称或编码​
​
produce_id string​
指定内容制作编号​
​
content_propagator string​
指定内容传播服务提供者的名称或编码​
​
propagate_id string​
指定内容传播编号​
​
​
​
​
响应头​
X-Tt-Logid string​
服务端返回的 Logid,用于在咨询或者反馈时定位问题​
​
​
响应体​
code int​
错误状态码,如需了解更多状态码的具体含义,可查阅错误码查询文档​
​
message string​
错误状态详情,如需了解更多状态详情的具体含义,可查阅错误码查询文档​
​
audio string​
合成后的音频数据,以 Base64 编码返回​
​
duration float​
处理后音频时长(秒),变速/后处理时可能与 original_duration 不同,计费以 original_duration 为准​
​
original_duration float​
模型输出的原始音频时长(秒),该值为计费依据,上限为120秒​
​
url string​
带过期时间的音频地址,有效期2小时​
​
subtitle object​
音频字幕信息,仅当enable_subtitle设置为true 时才会返回字幕信息​
text string​
音频对应的字幕文本​
​
sentences object list​
子句字幕信息​
start_time int​
该句起始时间,距音频开始的毫秒偏移值​
​
end_time int​
该句结束时间,距音频开始的毫秒偏移值​
​
text string​
该句的完整文本​
​
words object list​
词粒度​
start_time int​
该 token 起始时间,距音频开始的毫秒偏移值​
​
end_time int​
该 token 结束时间,距音频开始的毫秒偏移值​
​
text string ****​
该 token 的文本内容​
​
​
​
​
​
​

请求示例

curl --request POST \
  --url 'https://openspeech.bytedance.com/api/v3/tts/create' \
  --max-time 300 \
  --header 'Content-Type: application/json' \
  --header 'X-Api-Key: <your_api_key>' \
  --data-raw '{
    "model": "seed-audio-1.0",
    "text_prompt": "先是一声手机震动的声音,环境中持续的 鸟鸣声 。音乐以 马林巴为主奏乐器 ,加入合成器lead、电贝斯、打击乐,整体情绪紧张悬疑。 男子1 (中青年男性,台湾口音,嗓音低沉,浑厚)用严肃语气说道:“钟sir,你是什么时候被收买的?” 男子2 (中年男性,台湾口音,嗓音沙哑,成熟)平静无奈的语气说:“既然你都知道了,我也没有什么好隐瞒的。阿标手上有些证据,搭配上李勋的人证,足够让青龙帮垮台。” 男子1 继续追问,语气中带着怀疑困惑:“你现在说这些,是要我继续相信你?” 男子2 以一种告诫的口吻说:“信不信都无所谓。我打来只是想提醒你,阿标已经失去耐心,最好待在男公馆别乱跑。在那里,青龙帮的人,不敢轻举妄动。” 男子1 简短地问道:“为什么?” 男子2 解释道:“据说跟青龙帮的帮规有关,细节我也不清楚。只知道男公馆对他们来说,是个不能动手的地方。” 男子1 的语气变得更加尖锐和不解,他说:“我就当你被阿标收买了,那你打这通电话的意图是什么?不是应该希望李峋落入他们手里吗?” 男子2 的声音听起来充满了无力感和宿命感,他缓缓说道:“有些事,不是我能选择的。宇川,这是我唯一能做的。保护好李峋,也保重自己。”然后出现一阵 轻微的汽车行驶声 ,接着是一声 轻微的汽车刹车声 ,随后是 两声高跟鞋走路脚步声。",
    "references": [{
      "speaker": "<speaker_id>"
    }],
    "audio_config": {
      "format": "mp3",
      "sample_rate": 48000,
      "pitch_rate": 0,
      "speech_rate": 0,
      "loudness_rate": 0
    },
    "watermark": {}
  }' \
  | python3 -m json.tool

响应示例

status: 200
X-Tt-Logid: 2026070219553428A01BE5CBAB2D831E92
{
  "audio": "<base64_encoded_audio_data>",
  "duration": 82.8,
  "original_duration": 82.8,
  "url": "<audio_url>"
}
最近更新时间:2026.09.28 19:12:54
这个页面对您有帮助吗?
有用
有用
无用
无用