• 替换歌曲中的某一段,而不是删掉,异步任务
  • 用新歌词填补指定区间,前后保持连贯
  • 比「删除片段」更适合修补
POST/v1/music/generations/replaceMusic

认证

string必填

所有接口均使用 Bearer Token 进行认证。

获取 API Key:访问控制台 创建。

请求时在请求头中添加:

Authorization: Bearer YOUR_OAIRoute_KEY

引用源音轨

string必填

源音轨所属任务的 ID。缺失或解析不到源时,提交阶段返回 400。

integer可选

从源任务结果的 data.result.music[] 中选取第几首,默认 1,从 1 开始计数。一次生成通常为 1、2 两首。

替换区间

number必填

替换起点,单位秒。缺失时返回 400。

number必填

替换终点,单位秒。需满足 0 ≤ start_s < end_s,且不能超出已知的源时长。

string可选

用于替换片段的新歌词。这是本接口的核心字段,写清楚这一段要唱什么。

生成参数

string可选

音频模型,默认 suno。

string可选

公共版本,默认 v6,可选 v6-wild、v6-mini。若使用 custom_model_id,则省略本字段。

string可选

创建自定义模型任务时返回的完整 UUID,不能与 version 同时使用。

string可选

原歌词上下文。把这一段前后各一句贴进来,模型能更好地衔接。

string可选

标题。

string可选

风格标签。

string可选

需要排除的风格标签。

string可选

风格变化程度,可选 off、normal、high、extra、max。

boolean可选

启用 Max 模式,默认 false。按普通售价的 2 倍计费。

string可选

输出格式,可选 mp3、m4a、wav。本接口没有目标时长字段。

响应

integer

响应状态码。

data[] 的元素字段 · 2 项
string

任务状态,提交成功时返回 submitted。

string

任务唯一标识,用于轮询 GET /v1/music/tasks/{task_id}。

取结果

轮询时 status 可能为 pending、processing、completed 或 failed。progress 是 0 到 100 的整数,不保证按固定节点变化。

完成后从 data.result.music[].audio_url 取替换后的音频。失败时 data.error.message 给出原因,预扣额度自动退回。生成通常需要 30 到 120 秒。

与删除片段的对照

项目删除片段段落替换
路径removeSectionreplaceMusic
效果区间被去掉,前后直接接区间被新内容填上
接缝可能突兀相对自然
关键字段start_s、end_s再加 infill_lyrics

修一段唱错的词、换掉一段不满意的副歌,用替换。整段多余的内容,用删除。

prompt 传的是原歌词上下文,不是新歌词。新歌词放 infill_lyrics。两个字段搞反是很常见的错误,表现为替换后唱的完全是另一段内容。

错误码

错误响应的格式、状态码与重试建议见错误码与限流,常见报错的排查步骤见常见问题。

使用示例

提交一个任务并拿到 task_id:

提交成功只表示任务已受理。真正的产物要拿返回的 task_id 去任务查询接口轮询,status 变成 completed 之后才有结果。