Seedance Video
Seedance Video 使用异步视频任务接口。先创建任务,再通过任务查询接口轮询状态和最终视频地址。
推荐接入方式
新接入请使用统一视频接口 /v1/video/generations,并使用官方风格的顶层 content 数组组织文本、图片、视频和音频素材。
选择哪个接口
| 场景 | 推荐接口 | 说明 |
|---|---|---|
| 新项目接入 | /v1/video/generations | 平台统一视频接口,返回 OpenAI 风格任务对象,便于和其他视频模型共用一套逻辑 |
| 已按官方 Seedance / Ark 风格开发 | /api/v3/contents/generations/tasks | 兼容官方路径和官方任务对象字段,便于低成本迁移 |
| 已有简单图生视频表单 | /v1/video/generations + 简化字段 | 可以先传 prompt、image_url、images、video_url、audio_url,平台会转换为官方风格 content |
接口地址
| 能力 | 方法 | 路径 |
|---|---|---|
| 创建视频任务(兼容官方) | POST | /api/v3/contents/generations/tasks |
| 查询视频任务(兼容官方) | GET | /api/v3/contents/generations/tasks/{task_id} |
| 创建视频任务 | POST | /v1/video/generations |
| 查询视频任务 | GET | /v1/video/generations/{task_id} |
| 审核图片 | POST | /v1/images/moderations |
支持模型
| 模型 | 说明 |
|---|---|
doubao-seedance-2.0 | Seedance 2.0 标准模型 |
doubao-seedance-2.0-fast | Seedance 2.0 快速模型;是否可用以账户权限和平台配置为准 |
支持模式
| 模式 | 输入方式 |
|---|---|
| 文生视频 | content 中只传 text |
| 单图图生视频 | content 中传 1 个 image_url,可使用 first_frame 或 reference_image |
| 首尾帧视频 | content 中传 2 个 image_url,分别使用 first_frame 和 last_frame |
| 视频参考输入 | content 中传 video_url,角色使用 reference_video |
| 图片和音频参考 | content 中组合 image_url 与 audio_url |
| 图片审核入库 | 先调用 /v1/images/moderations,再使用返回的 asset://<asset ID> |
文档中的 asset://{...} 都是占位示例;实际请求时请替换为图片审核接口返回的完整 asset:// 地址。
顶层参数
| 参数 | 必填 | 说明 |
|---|---|---|
model | 是 | Seedance 模型名称,例如 doubao-seedance-2.0 |
content | 推荐 | 多模态内容数组,用于组织提示词和素材,并精确控制素材类型和角色 |
duration | 否 | 视频时长,整数秒。默认通常为 5,Seedance 2.0 常用范围为 4 到 15 |
ratio | 否 | 输出比例,可选 adaptive、21:9、16:9、4:3、1:1、3:4、9:16 |
resolution | 否 | 输出分辨率,常用 480p、720p、1080p;doubao-seedance-2.0-fast 不支持 1080p |
generate_audio | 否 | 是否生成同步音频,布尔值。需要无声视频时传 false |
watermark | 否 | 是否添加水印,布尔值 |
seed | 否 | 随机种子,适合需要尽量复现风格时传入 |
callback_url | 否 | 任务回调地址;也可以只使用查询接口轮询 |
兼容写法
平台同时支持两种请求写法。推荐长期使用官方风格 content;如果你的客户端已经有简化字段,也可以继续使用。
官方风格 content
content 是一个有序数组。提示词、图片、视频和音频都按数组顺序组织,提示词中可以用“图片 1”“视频 1”“音频 1”引用对应素材。
{
"model": "doubao-seedance-2.0",
"content": [
{
"type": "text",
"text": "参考图片 1 的主体和视频 1 的运镜,生成 5 秒产品展示视频。"
},
{
"type": "image_url",
"role": "reference_image",
"image_url": {
"url": "asset://{product_asset_id}"
}
},
{
"type": "video_url",
"role": "reference_video",
"duration": 5,
"video_url": {
"url": "https://example.com/camera-motion.mp4"
}
}
],
"duration": 5,
"resolution": "720p",
"ratio": "16:9"
}简化字段
简化字段适合普通表单接入。平台会自动把这些字段转换为官方风格 content,并把 prompt 作为文本内容追加进去。
| 简化字段 | 转换结果 |
|---|---|
prompt | content 中的 text 内容项 |
image_url | 一个 image_url 内容项 |
images | 多个 image_url 内容项;字符串数组或 { "url": "...", "role": "..." } 数组均可 |
video_url | 一个 video_url 内容项 |
videos | 多个 video_url 内容项 |
audio_url | 一个 audio_url 内容项 |
audios | 多个 audio_url 内容项 |
resolution_name、size | 当 resolution 为空时作为分辨率使用 |
seconds | 当大于 0 时作为 duration 使用 |
{
"model": "doubao-seedance-2.0",
"prompt": "根据图片 1 和图片 2 生成首尾帧过渡视频。",
"images": [
{ "url": "asset://{first_frame_asset_id}", "role": "first_frame" },
{ "url": "asset://{last_frame_asset_id}", "role": "last_frame" }
],
"duration": 8,
"resolution": "720p",
"ratio": "16:9"
}metadata 透传
如果你需要传官方字段,但统一接口顶层没有对应字段,可以放到 metadata。平台会把 metadata 合并到上游请求体中;metadata.model 会被忽略,模型仍以顶层 model 和平台模型映射为准。
{
"model": "doubao-seedance-2.0",
"prompt": "生成固定机位的产品展示视频。",
"metadata": {
"camera_fixed": true,
"service_tier": "default",
"return_last_frame": true
},
"duration": 5,
"resolution": "720p"
}调用示例
文生视频
curl -X POST https://cubicspaces.cloud/v1/video/generations \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d '{
"model": "doubao-seedance-2.0",
"content": [
{
"type": "text",
"text": "A cinematic aerial shot of a futuristic cubic city at sunrise"
}
],
"duration": 5,
"resolution": "720p",
"ratio": "16:9",
"generate_audio": false,
"watermark": false
}'官方兼容接口
如果客户端已经按官方任务接口组织请求,可以直接调用兼容官方路径。创建成功后,使用响应中的 id 查询任务。
curl -X POST https://cubicspaces.cloud/api/v3/contents/generations/tasks \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d '{
"model": "doubao-seedance-2.0",
"content": [
{
"type": "text",
"text": "A cinematic aerial shot of a futuristic cubic city at sunrise"
}
],
"duration": 5,
"resolution": "720p",
"ratio": "16:9",
"generate_audio": false
}'单图生成视频
curl -X POST https://cubicspaces.cloud/v1/video/generations \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d '{
"model": "doubao-seedance-2.0",
"content": [
{
"type": "text",
"text": "参考图片 1 的产品外观,生成 5 秒干净影棚展示视频,保持主体一致。"
},
{
"type": "image_url",
"role": "reference_image",
"image_url": {
"url": "asset://{image_asset_id}"
}
}
],
"duration": 5,
"resolution": "720p",
"ratio": "1:1",
"watermark": false
}'首尾帧视频
{
"model": "doubao-seedance-2.0",
"content": [
{
"type": "text",
"text": "根据图片 1 和图片 2 生成流畅过渡的视频。"
},
{
"type": "image_url",
"role": "first_frame",
"image_url": {
"url": "asset://{first_frame_asset_id}"
}
},
{
"type": "image_url",
"role": "last_frame",
"image_url": {
"url": "asset://{last_frame_asset_id}"
}
}
],
"duration": 8,
"resolution": "720p",
"ratio": "16:9"
}视频参考输入
{
"model": "doubao-seedance-2.0",
"content": [
{
"type": "text",
"text": "全程参考视频 1 的运镜和动作节奏,生成同风格的新场景。"
},
{
"type": "video_url",
"role": "reference_video",
"video_url": {
"url": "https://example.com/reference.mp4"
}
}
],
"duration": 5,
"resolution": "720p",
"ratio": "16:9"
}图片和音频参考
{
"model": "doubao-seedance-2.0",
"content": [
{
"type": "text",
"text": "参考图片 1 和音频 1,生成一段产品展示视频。"
},
{
"type": "image_url",
"role": "reference_image",
"image_url": {
"url": "asset://{image_asset_id}"
}
},
{
"type": "audio_url",
"role": "reference_audio",
"audio_url": {
"url": "https://example.com/reference.wav"
}
}
],
"duration": 5,
"ratio": "1:1",
"generate_audio": true
}content 内容项
| 字段 | 必填 | 说明 |
|---|---|---|
content[].type | 是 | text、image_url、video_url、audio_url |
content[].text | 条件必填 | type 为 text 时使用 |
content[].image_url.url | 条件必填 | 图片公网 URL,或图片审核通过后的 asset://<asset ID> |
content[].video_url.url | 条件必填 | 视频公网 URL。平台会预检 URL 是否可下载 |
content[].audio_url.url | 条件必填 | 音频公网 URL,或上游支持的音频素材地址 |
content[].role | 条件必填 | 素材角色,见下方组合规则 |
content[].duration | 否 | 当前素材的参考时长,视频或音频参考素材常用;单位秒 |
素材组合规则
| 场景 | 推荐写法 | role 要求 |
|---|---|---|
| 文生视频 | content 中只传文本 | 不需要素材角色 |
| 单图图生视频 | content 中传 1 个 image_url 内容项 | first_frame,也可以省略 |
| 首尾帧视频 | content 中传 2 个 image_url 内容项 | 第一张 first_frame,第二张 last_frame |
| 多模态参考视频 | content 中传参考图/视频/音频 | 图片 reference_image,视频 reference_video,音频 reference_audio |
限制和建议:
- 参考图片最多 9 张;首尾帧场景只传 2 张。
- 视频参考最多 3 个,单个视频最长 15 秒,所有参考视频总时长不超过 15 秒。
- 音频参考最多 3 个,单个音频最长 15 秒,所有参考音频总时长不超过 15 秒。
- 音频不能单独作为唯一素材,至少同时提供 1 个图片或视频素材。
- 首帧/首尾帧场景不要和
reference_image、reference_video、reference_audio混用。 - 提示词中引用素材时,用“图片 1”“视频 1”“音频 1”这类顺序编号,不要直接写 Asset ID。
素材文件限制
| 素材 | 限制 |
|---|---|
| 图片 | 常见格式包括 jpeg、jpg、png、webp、bmp、tiff、gif;单张小于 30 MB;宽高比建议在 0.4 到 2.5 之间;宽高建议在 300 到 6000 px 之间 |
| 视频 | mp4 或 mov;建议 480p 或 720p,标准版在账号和模型支持时也可使用 1080p,fast 版不支持 1080p;单个小于 50 MB;帧率建议 4 到 60 FPS;公网 URL 必须可直接下载,不能返回 HTML 登录页 |
| 音频 | mp3 或 wav;单个小于 15 MB |
当前公开接口不支持直接传 base64 或内联二进制素材。请先上传到可公网访问的地址;图片也可以先走图片审核接口,使用返回的 asset_url。
审核图片
Seedance 使用真人或需要入库的图片素材时,建议先使用图片审核接口提交公开图片 URL。审核通过并入库后,将返回的 items[].asset_url 用作 content[].image_url.url。
同一个 Seedance 生成请求中会用到的所有图片,必须在同一次图片审核请求中一起提交到 images 数组。不要把同一个生成请求的多张图片拆成多次审核;否则可能出现素材审核批次或资产绑定不一致的问题。
POST /v1/images/moderations
Authorization: Bearer YOUR_API_KEY
Content-Type: application/json请求参数
| 参数 | 必填 | 说明 |
|---|---|---|
model | 是 | 用于选择 Seedance 能力,建议传 doubao-seedance-2.0 |
images | 是 | 图片 URL 数组;同一个生成请求内会用到的所有图片必须同批提交 |
asset_type | 否 | 资源类型,默认 Image;图片审核场景保持默认即可 |
图片必须是公网可访问的 http 或 https URL,不支持 base64 或内联二进制内容。
请求示例
curl -X POST https://cubicspaces.cloud/v1/images/moderations \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d '{
"model": "doubao-seedance-2.0",
"images": [
"https://example.com/person.png",
"https://example.com/product.png"
]
}'返回示例
{
"code": "success",
"message": "",
"data": {
"object": "asset_moderation",
"status": "approved",
"review_batch_id": "review-batch-id",
"task_id": "moderation-task-id",
"items": [
{
"source_url": "https://example.com/person.png",
"asset_url": "asset://{person_asset_id}",
"submit_review_status": 1,
"passed": true
},
{
"source_url": "https://example.com/product.png",
"asset_url": "asset://{product_asset_id}",
"submit_review_status": 1,
"passed": true
}
]
}
}当 passed 为 true 且 submit_review_status 为 1 时,表示该图片审核通过。
返回和查询
创建成功后返回标准视频任务对象:
{
"id": "video_xxx",
"task_id": "video_xxx",
"object": "video",
"model": "doubao-seedance-2.0",
"status": "queued",
"progress": 0,
"created_at": 1770000000
}查询任务:
curl https://cubicspaces.cloud/v1/video/generations/video_xxx \
-H "Authorization: Bearer YOUR_API_KEY"如果使用兼容官方路径提交任务,也可以使用响应中的 id 继续通过兼容官方路径查询:
curl https://cubicspaces.cloud/api/v3/contents/generations/tasks/video_xxx \
-H "Authorization: Bearer YOUR_API_KEY"完成后从响应的 data.result_url 读取视频地址。如果上游返回 token 用量,响应还会包含 data.usage.completion_tokens 和 data.usage.total_tokens。
状态值
| 状态 | 说明 |
|---|---|
queued | 排队中 |
running | 生成中 |
succeeded | 已完成 |
failed | 失败,查看 error.message |
注意事项
- 不确定比例时可以使用
ratio: "adaptive",或省略ratio让上游默认处理。 - 视频参考 URL 必须可由平台服务端直接下载;不要传需要登录、会跳转到 HTML 页面、或限制防盗链的地址。
- 图片参考可使用公网 URL 或图片审核接口返回的
asset://<asset ID>。 - 实际可用模型、分辨率、工具能力会随账户权限和平台配置变化。