You need to enable JavaScript to run this app.
文档中心
复制全文
下载 pdf
API接入
生成纯音乐
复制全文
下载 pdf
生成纯音乐
注意​
发起请求前,必须在请求中添加公共字段部分的内容。​
接口信息:​
  • 预付费API:https://open.volcengineapi.com?Action=GenBGM&Version=2024-08-12​
  • 后付费API:https://open.volcengineapi.com?Action=GenBGMForTime&Version=2024-08-12​
  • Method:POST​
  • Aciton:预付费:GenBGM 后付费:GenBGMForTime​
  • Version:2024-08-12​
请求参数:​
  • Query:​
​
参数​
类型​
是否必填​
参数内容​
Action​
String​
必选​
预付费:GenBGM​
后付费:GenBGMForTime​
Version​
String​
必选​
2024-08-12​
​
  • Body:​
注意​
请注意v5.0版本不再需要Genre、Mood、Instrument、Theme传参数,您可以直接在Text中描述预期生成的效果​
​
参数​
类型​
必填​
模型版本​
描述​
Text​
String​
必选​
全部​
BGM信息描述,仅支持中文。​
可选描述信息: 曲风、心情、场景、乐器​
TosBucket​
Sting​
否​
全部​
用户自定义火山tos桶名称。可参考tos开通文档完成相关操作​
CallbackURL​
String​
否​
全部​
回调地址,可选。配置回调地址后,会在任务完成后,通过http请求回调该地址,回调内容为json格式​
Duration​
Int​
否​
全部​
音频时长,默认值为60s​
删除v4.0版本时:有效时长范围为[1,60]​
新增v5.0版本时:有效时长范围为[30,120], 优先级从高到低遵循“Segments中的Duration总和 > Text中指定的时长 > 最外层的Duration参数”​
EnableInputRewrite​
Bool​
否​
全部​
是否使用模型去做输入prompt的改写,默认为false​
Segments​
list[map]​
否​
v5.0​
可指定BGM的结构注意:仅v5.0生效,v4.0不生效​
┣Duration​
Int​
Segments存在时值必填​
v5.0​
生成音乐的时长 (秒)​
  • 优先级从高到低遵循:Segments中的Duration总和 > Text中指定的时长 > 最外层的Duration参数​
  • 支持传入多组Duration参数,每个Duration时长有效范围是[5,120]​
  • 当仅有一个Duration参数,时长有效范围[30,120]​
  • Segments中所有的Duration之和的有效范围是[30,120]​
举例:text指定50s,外层Duration为60s,Segments中Duration全部累加后为40s,最终成曲时长为40s​
┗Name​
string​
Segments存在时值必填​
v5.0​
可选参数:["intro", "verse", "chorus", "inst", "bridge", "outro"]​
分别对应:前奏,主歌,副歌,间奏,桥段,尾奏​
Version​
string​
否​
全部​
当前默认v5.0版本(可以不用传该参数)​
注意:已全面升级为v5.0​
ImplicitWaterMark​
map​
否​
v5.0​
隐私水印​
┣ContentProducer​
String​
否​
v5.0​
生成合成服务提供者​
┣ProduceId​
String​
否​
v5.0​
内容制作编号​
┣ContentPropagator​
String​
否​
v5.0​
内容传播服务提供者​
┣PropagateId​
String​
否​
v5.0​
内容传播编号​
┗Enable​
Bool​
否​
v5.0​
启用开关​
AigcWatermark​
bool​
否​
​
显式水印添加 默认false​
​
请求示例:​
  • Request Body​
  • 不传Segments:​
​
{​
"Text": "关于星空的背景纯音乐,时长80秒,乐器为钢琴加吉他",​
"Duration": 45,​
"TosBucket": "",​
"CallbackURL": "",​
"EnableInputRewrite": false,​
"Version": "v5.0"​
}​
​
  • 传入Segments:​
​
{​
"Text": "咖啡馆里的音乐,歌词:天青色等烟雨,而我在等你,炊烟袅袅升起,隔江千万里",​
"Version": "v5.0",​
"Duration": 90,​
"Segments": [​
{​
"Name": "verse",​
"Duration": 20​
},​
{​
"Name": "chorus",​
"Duration": 20​
}​
],​
"TosBucket": "",​
"CallbackURL": "",​
"EnableInputRewrite": false​
}​
​
  • Response:​
​
{​
"Code": 0,​
"Message": "success",​
"Result": {​
"TaskID": "202408308513817850019840", // 任务ID​
"PredictedWaitTime": 0 // 预计等待时间(单位秒)​
},​
"ResponseMetadata": {​
"RequestId": "02172491885215426050340cd5020003c070b82113f9c52acdbc4",​
"Action": "GenSongForTime",​
"Version": "2024-08-12",​
"Service": "imagination",​
"Region": "cn-beijing",​
"Error": null​
}​
}​
​
注意​
入参简单的30s短音乐容易触发版权校验(错误码code:50000001),建议通过丰富text、增加参数数量、延长生成音乐时长等手段进行规避。​
curl:​
​
curl --location --request POST 'https://open.volcengineapi.com/?Action=GenBGM&Version=2024-08-12' \#后付费Action=GenBGMForTime​
--header 'Host: open.volcengineapi.com' \#Api Host,详见请求Host说明​
--header 'Content-Type: application/json' \​
--header 'X-Date: 20251201T103833Z' \ #请求时间戳,详见请求Header X-Date说明​
--header 'X-Content-Sha256: ******' \ #对完整请求Body的加密结果,详见请求Header X-Content-Sha256说明​
--header 'Authorization: ******' \ #签名信息,详见请求Header Authorization说明​
--data-raw '{​
"Text": "关于星空的背景纯音乐,时长80秒,乐器为钢琴加吉他",​
"Duration": 45,​
"TosBucket": "",​
"CallbackURL": "",​
"EnableInputRewrite": false,​
"Version": "v5.0"​
}'​
​
demo:​
  • Golang:​
​
​
GenBGM.zip
​
​
​
​
GenBGMForTime.zip
​
​
  • Java:​
​
​
GenBGM.zip
​
​
​
​
GenBGMForTime.zip
​
​
  • Python:​
​
​
GenBGM.zip
​
​
​
​
GenBGMForTime.zip
​
​
注:未提供demo的编程语言,烦请根据文档说明和参照curl示例、已有语言demo示例自行编写。​
​
最近更新时间:2026.07.24 18:06:46
这个页面对您有帮助吗?
有用
有用
无用
无用