简短回答
Seedance 2.5 没有单独的「参考生视频」开关。只要content 里带了参考视频,模型就会根据提示词意图判断这是参考生视频、视频编辑还是视频延长:
- 提示词是在改原视频(增加、删除、修改、替换、保持某些东西不变)→ 判为视频编辑
- 提示词是在接着原视频往前或往后拍(延长、续写、延续)→ 判为视频延长
- 提示词只是借用素材的人物、动作、风格去拍一段新视频 → 判为参考生视频
ratio 必须是 adaptive、duration 必须是 -1,传了具体画幅或时长就会返回 400,报错信息里通常带 TaskTypeConstraint。
本页只适用于 Seedance 2.5(
doubao-seedance-2-5-260628)。Seedance 2.0 系列没有视频编辑和视频延长这两类任务,不存在这个问题。两者的根本区别:素材会不会成为成片的一部分
一句话判断:成片里还能不能看到原视频本身? 能看到就是编辑(或延长),看不到、只保留了某种「感觉」就是参考生视频。
视频延长与编辑类似,画幅同样锁定为原视频的画幅,但时长可以自己指定。
模型是怎么判定的
判定分两步:先看素材的role,再看提示词。
只传参考图、不传参考视频时,不会被判成编辑或延长;只有带了
reference_video 才需要留意这个问题。
一个真实案例
下面这个请求想做「视频高清化」,同时指定了 4:3 和 15 秒:能不能用参数固定成参考生视频?
不能。 2.5 的omni_reference_task_type 只有三个取值:
没有「参考生视频」这个取值。而且
edit / extend 只是提前校验,并不能强制任务类型:如果声明的类型与模型按提示词判定的不一致,任务仍会失败,错误码为 InvalidParameter.TaskTypeMismatch。
所以,任务类型最终由提示词决定,参数只能配合它。
三种稳妥写法
- 不在乎画幅和时长
- 要固定画幅和时长
- 代码里兜底重试
原厂文档推荐的通用配置:只要带了参考素材,就一律这样传,无论模型判成哪个子任务都不会因参数限制报错。代价是:判为参考生视频时,时长由模型自己决定(实测会选到 10 秒以上),费用会随时长变化。对成本敏感的业务不建议用这套。
报错时机
两类错误的处理方式不同:
TaskTypeConstraint 改参数,TaskTypeMismatch 改提示词(或把 omni_reference_task_type 改回 auto)。
费用提醒
- 视频编辑的输出时长等于原视频时长,不是你想要的时长。原视频 25 秒,就按 25 秒左右计费。
- 带参考视频的任务,输入视频的帧数也会折算成 tokens 一起计费,原视频越长、分辨率越高,费用越高。
duration: -1用在参考生视频上时,时长由模型决定,可能比预期长。
相关文档
视频生成接口
任务类型与参数约束对照表、全部请求参数
Seedance 2.0 / 2.5 概览
2.5 与 2.0 的差异、编辑和延长的完整用法