视频生成
本平台统一视频生成 API 规范
视频生成采用异步任务模式。所有请求使用本平台令牌鉴权:
Authorization: Bearer sk-你的令牌线路 ID
同一个视频模型可能提供多条可用线路。线路 ID 是正整数,用于在创建任务时指定其中一条线路;它不是 model 值,也不是视频任务 ID。
可使用同一个平台令牌查询指定模型当前公开且可用的线路:
curl "https://your-domain.example/api/platform/model-lines?model=video-model-id" \-H "Authorization: Bearer sk-你的令牌"响应中 data.items[].id 就是创建视频任务时可使用的线路 ID:
{
"success": true,
"data": {
"auto_switch_enabled": true,
"current_id": 0,
"items": [
{
"id": 12,
"name": "线路 1"
}
]
}
}创建任务时,在请求头中传入要使用的线路 ID:
X-Hub-Model-Line-Id: 12- 不传该请求头时,平台按该模型当前的线路策略自动选择。
- 传入当前模型的可用线路 ID 时,本次任务固定使用该线路,不再在其他线路之间自动切换。
- 非正整数会返回
400错误;线路已停用、已删除或不属于当前模型时,平台会改用自动线路策略。
创建视频任务
POST /v1/videos
Content-Type: application/json请求字段
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
model | string | 是 | 本平台视频模型值。 |
prompt | string | 视模式而定 | 视频提示词;纯参考素材模式下可选。 |
mode | string | 否 | 生成模式,默认 auto。 |
imageUrl | string | 否 | 单张参考图 URL。 |
imageUrls | string[] | 否 | 多张参考图 URL。 |
firstFrameUrl | string | 否 | 首帧图片 URL;使用首尾帧模式时必填。 |
lastFrameUrl | string | 否 | 尾帧图片 URL;必须与 firstFrameUrl 一起传入。 |
videoUrls | string[] | 否 | 参考视频 URL 列表。 |
audioUrls | string[] | 否 | 参考音频 URL 列表。 |
aspectRatio | string | 否 | 画面比例,如 16:9、9:16、1:1。 |
seconds | string 或 number | 否 | 视频时长(秒);可用值以所选模型为准。 |
resolution | string | 否 | 输出清晰度,如 720p、1080p。 |
generate_audio | boolean | 否 | 是否生成音频。 |
negative_prompt | string | 否 | 反向提示词。 |
seed | number | 否 | 随机种子。 |
字段支持范围
不同模型支持的模式、参考素材类型、时长和分辨率可能不同。请求中只需使用本页列出的统一字段。
mode 取值
| 值 | 说明 |
|---|---|
auto | 根据请求中提供的文本和参考素材生成视频。 |
text-to-video | 文生视频。 |
image-to-video | 单图图生视频。 |
reference-to-video | 使用一项或多项参考图、参考视频或参考音频生成视频。 |
start-end-to-video | 使用首帧和尾帧生成视频。 |
edit-video | 使用一个参考视频和提示词编辑视频。 |
video-extension | 使用参考视频和提示词向前或向后延长视频。 |
请求示例
curl https://your-domain.example/v1/videos \-H "Authorization: Bearer sk-你的令牌" \-H "Content-Type: application/json" \-d '{ "model": "video-model-id", "prompt": "黄昏海边,一架纸飞机从镜头前飞过", "aspectRatio": "16:9", "seconds": 5, "resolution": "720p"}'创建成功后返回视频任务对象:
{
"id": "task_xxx",
"object": "video",
"model": "video-model-id",
"status": "queued",
"progress": 0,
"created_at": 1782658000
}查询视频任务
GET /v1/videos/{task_id}任务状态包括 queued、in_progress、completed 和 failed。任务完成后,响应中会包含视频结果:
{
"id": "task_xxx",
"object": "video",
"model": "video-model-id",
"status": "completed",
"progress": 100,
"created_at": 1782658000,
"completed_at": 1782658060,
"metadata": {
"videos": [
{
"url": "https://example.com/result.mp4"
}
]
}
}获取视频内容
任务完成后可通过以下接口读取视频内容:
GET /v1/videos/{task_id}/content