Seedance 低价 · POST /v1/video/generations · 创建视频任务
POST/v1/video/generations
Seedance 低价视频 · /v1/video/generations
基本信息
- Base URL:
https://api.dshub.top - 创建:
POST /v1/video/generations。POST /v1/videos使用同一请求体和同一返回。 - 查询:
GET /v1/videos/tasks/{task_id} - 同样可用:
GET /v1/videos/{task_id}、GET /v1/video/generations/{task_id}、GET /v1/tasks/{task_id} - Content-Type:
application/json - 鉴权:
Authorization: Bearer sk-xxx。Key 必须属于分组seedance低价。 - 返回是扁平 JSON,没有
code/data外层。completed时读取result_urls,地址只以https://api.dshub.top开头。失败时读取error.message。 - 金额以控制台价格表为准。本文不列具体价格。
模型
只使用下面三个官方名称。旧名称 seedance-2.0-9img、seedance-2.5-9img、seedance-2.0-9img-3vid-3aud、seedance-2.5-10img-10vid-10aud、seedance-2.5-30img-10vid-10aud 已下线,请改用这三个名称。
| 模型 | 分辨率 | 时长 | 图 / 视频 / 音频 | 计价方式 |
|---|---|---|---|---|
seedance-2.0-fast | 仅 720p | 4–15 秒 | 9 / 3 / 3 | 按次 |
seedance-2.0 | 仅 720p | 有参考视频时 5–15 秒;无参考视频时 4–15 秒 | 有参考视频 9 / 3 / 3;无参考视频 9 / 0 / 3 | 有参考视频,或无视频且 5–13 秒,按秒;无视频且为 4 秒或 14–15 秒,按次 |
seedance-2.5 | 无参考视频时 480p 或 720p;有参考视频时仅 720p | 无参考视频 4–30 秒;有参考视频 5–30 秒 | 无参考视频 30 / 0 / 10;有参考视频 30 / 10 / 10 | 无参考视频按秒;有参考视频且 5–10 秒按秒;有参考视频且 11–30 秒按次 |
不支持的分辨率、时长、素材数量或 face 组合会直接拒绝,不会降级。
seedance-2.0与seedance-2.0-fast不支持face。seedance-2.5只在没有参考视频时接受face。- 4 秒且带参考视频会拒绝。
- 480p 带参考视频会拒绝。
- 1080p 会拒绝。
seedance-2.0-mini 与 minimax-h3 继续使用各自现有计费,金额以控制台价格表为准。在 seedance低价 分组中,请求参数可接受时自动选择供货,调用字段不变。省略分辨率时 minimax-h3 为 480p。传入 720p 时按 768p 处理。
参考素材 URL
images / videos / audios / materials 中的 URL 必须可被公网拉取(服务端会在提交层校验)。本地路径、内网地址、需登录才能打开的链接不可用。
没有公网地址时,先调用 POST /v1/files 或 POST /v1/files/upload 上传文件。成功后优先使用返回的 url 或 cdn_url,一般为 https://api-oss.dshub.top/... 形式的 OSS 公开链,再填回本接口。
上传示例见文档站「文件上传」:POST /v1/files/upload。
提交时媒体字段校验
提交会先校验字段形状与 URL,再探测参考音视频时长。不合法直接 HTTP 400,错误信息会指明字段(如 audios[0]、materials[1])与原因。
| 规则 | 说明 |
|---|---|
| 数组形状 | images / videos / audios / materials 若传入,必须是 JSON 数组(不能是单个字符串或对象) |
materials | 必须是对象数组;每项含 type(image / video / audio)与 url(或 uri / src) |
图片 images | 元素为公网 http(s) URL,或 {url,name?,type?};type 为 first_frame / end_frame(别名 last_frame)。也接受合法 data:image/<type>;base64,...;空 data URL、非 image data URL、裸 base64、本地文件名会拒绝 |
视频 videos | 元素为公网 http(s) URL,或 {url,name?};扩展名须像视频(明显非视频扩展名会拒绝)。不接受 data URL |
音频 audios | 元素为公网 http(s) URL,或 {url,name?};扩展名须像音频。不接受 data URL;不要和 first/end 帧同时使用 |
| 非法 URL | 非 http(s)、缺 host、明显错误的 scheme → 拒绝(「参考 URL 非法」或「请使用 http(s) URL」) |
参考音视频素材限制(Seedance 2.5 / seedance低价)
与成片 duration / seconds(生成时长)不同,以下限制作用于参考素材本身:
| 类型 | 格式 | 单段时长 | 数量 | 总时长 | 单文件大小 |
|---|---|---|---|---|---|
参考音频 audios / materials.type=audio | MP3 / WAV | 2–30 秒(探测容差约 1.8–30.2) | ≤10 | ≤30 秒 | ≤15MB |
参考视频 videos / materials.type=video | MP4 / MOV | 2–30 秒(探测容差约 1.8–30.2) | ≤10 | ≤30 秒 | ≤200MB |
提交时会对可公网访问的 http(s) URL 探测时长;过短(例如 0.3 秒)、过长、总时长超限或无法探测 → HTTP 400,并指明字段与允许范围。请优先使用 POST /v1/files(或 /v1/files/upload)得到的 api-oss.dshub.top 公网 URL。
参数
| 参数 | 必填 | 说明 |
|---|---|---|
| model | 是 | seedance-2.0、seedance-2.0-fast、seedance-2.5 |
| prompt | 是 | 镜头描述。可用 @图片N / @视频N / @音频N 引用材料 |
| duration | 否 | 秒。别名 seconds。省略时这三个模型默认 5 秒 |
| ratio | 否 | 16:9、9:16、1:1。别名 aspect_ratio。默认 16:9 |
| resolution | 否 | 480p、720p、768p、1080p。这三个模型默认 720p,并按上表拒绝不支持的值 |
| images | 否 | 数组。公网 URL,或 {url,name?,type?}。type 为 first_frame / end_frame(别名 last_frame)。无 type 为参考图;也可 data:image/...;base64,... |
| videos | 否 | 数组。公网 URL,或 {url,name?}。参考视频须 MP4/MOV,单段 2–30 秒(见上表) |
| audios | 否 | 数组。公网 URL,或 {url,name?}。参考音频须 MP3/WAV,单段 2–30 秒(见上表)。不要和 first/end 帧同时使用 |
| materials | 否 | 对象数组 [{type,url,name?}]。type 为 image / video / audio;url 须公网可拉取;音视频时长限制同上 |
| face | 否 | {enabled,mode}。mode 为 light 或 heavy。enabled=false 为原图。省略则使用服务端默认处理 |
请使用 JSON 提交。不要传顶层首尾帧字段。
创建任务
curl --location --request POST 'https://api.dshub.top/v1/video/generations' \
--header 'Authorization: Bearer sk-xxx' \
--header 'Content-Type: application/json' \
--data-raw '{
"model": "seedance-2.5",
"prompt": "湖边黎明,薄雾缓慢散开",
"duration": 5,
"ratio": "16:9",
"resolution": "720p"
}'
{
"id": "task_8f2a",
"task_id": "task_8f2a",
"object": "video",
"model": "seedance-2.5",
"status": "queued",
"progress": 0,
"created_at": 1710000000
}
参考图:
{
"model": "seedance-2.0",
"prompt": "让 @图片1 中的牙膏管缓缓推近",
"duration": 4,
"ratio": "9:16",
"resolution": "720p",
}
首尾帧写入 images[].type:
{
"model": "seedance-2.0",
"prompt": "从首帧过渡到尾帧",
"images": [
]
}
seedance-2.5 · 带参考视频
{
"model": "seedance-2.5",
"prompt": "参考 @视频1 的镜头节奏,人物沿河边向前走",
"duration": 8,
"ratio": "16:9",
"resolution": "720p",
}
seedance-2.5 · 带参考音频
{
"model": "seedance-2.5",
"prompt": "画面跟随 @音频1 的节奏切换景别",
"duration": 6,
"ratio": "16:9",
"resolution": "720p",
}
seedance-2.5 · 参考视频 + 参考音频
{
"model": "seedance-2.5",
"prompt": "参考 @视频1 的镜头节奏,并跟随 @音频1",
"duration": 8,
"resolution": "720p",
}
混合材料:
{
"model": "seedance-2.5",
"prompt": "使用材料里的图片、视频和音频",
"duration": 8,
"resolution": "720p",
"materials": [
]
}
人脸处理只在 seedance-2.5 且没有参考视频时可用:
{
"model": "seedance-2.5",
"prompt": "人物回头,保持真实摄影风格",
"resolution": "720p",
"face": { "enabled": true, "mode": "light" }
}
轮询任务
status:queued、in_progress、completed、failed、unknown。
progress:整数 0–100。进行中继续轮询,建议间隔 3–5 秒。
curl --location --request GET 'https://api.dshub.top/v1/videos/tasks/task_8f2a' \
--header 'Authorization: Bearer sk-xxx'
{
"id": "task_8f2a",
"object": "video",
"model": "seedance-2.5",
"status": "completed",
"progress": 100,
"created_at": 1710000000,
"result_urls": ["https://api.dshub.top/v1/videos/task_8f2a/content"]
}
Request
Responses
- 200
- 400
- 401
已创建任务
Response Headers
参数不被该模型接受
Response Headers
鉴权失败