外观
通用视频生成接口
约 616 字大约 2 分钟
FrameAI 将火山 Seedance 的多种视频生成方式统一为一个异步接口,调用方只需要准备 API 地址、密钥和模型名。
创建任务
POST https://mivsub.com/v1/video/generations
Authorization: Bearer sk-frameai-xxxxxxxx
Content-Type: application/json请求体:
{
"model": "doubao-seedance-2-0-260128",
"prompt": "一只纸飞机穿过清晨的城市,镜头平稳推进,电影感光影",
"seconds": "5",
"metadata": {
"resolution": "720p",
"ratio": "16:9",
"generate_audio": false,
"watermark": false
}
}公共字段
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
model | string | 是 | 火山视频模型,例如 doubao-seedance-2-0-260128。 |
prompt | string | 是 | 视频画面、动作、镜头和风格描述。 |
image | string | 否 | 单图生视频时使用的公网图片 URL。 |
seconds | string | 否 | 视频时长,例如 5 或 10,以当前模型支持范围为准。 |
metadata | object | 否 | 传递给视频适配器的生成参数和参考素材。 |
metadata.resolution | string | 否 | 例如 720p。 |
metadata.ratio | string | 否 | 例如 16:9、9:16 或 1:1。 |
metadata.generate_audio | boolean | 否 | 是否生成视频声音。 |
metadata.watermark | boolean | 否 | 是否添加水印。 |
metadata.content | array | 否 | 多图、视频或音频参考素材列表。 |
任务响应
创建接口返回任务 ID 后,先保存 id,不要把创建接口当作同步下载接口:
{
"id": "task_01jvideo8f3x9",
"object": "video.generation",
"status": "queued"
}随后调用 视频任务查询。任务完成后,视频地址通常位于 content.video_url;具体响应以接口返回的上游字段为准。
参考素材格式
参考素材统一放在 metadata.content[]。每个素材对象的 role 必须与 type 放在同一层:
{
"type": "image_url",
"role": "reference_image",
"image_url": {
"url": "https://cdn.example.com/reference.jpg"
}
}视频和音频分别使用 video_url、audio_url。素材 URL 必须公网可访问,不能依赖 Cookie、登录态或浏览器 Referer。
FrameAI API 配置要点
| 配置项 | 建议 |
|---|---|
| 对外地址 | 使用 FrameAI API 的 HTTPS 公网地址。 |
| 鉴权 | 下游使用 FrameAI 分发的 Bearer Key。 |
| 上游渠道 | 指向 FrameAI 的视频渠道配置,再由 FrameAI 转发至火山 Ark。 |
| 模型名 | 使用渠道实际支持的 Seedance 模型名。 |
| 请求体 | 保留 metadata.content[].role,不要在中转层过滤未知字段。 |
路径说明:
/v1/video/generations 是 FrameAI 对外的通用入口;火山原生兼容路径 /api/v3/contents/generations/tasks 只在对应渠道或兼容路由已开启时使用,详见火山标准格式。