功能简介
用于提交 Omni 视频生成任务。该接口既可以只使用文字生成视频,也可以同时结合图片、主体或参考视频一起生成;提交成功后会返回一个 task_id,后续可通过查询接口查看进度和获取视频地址。
使用场景
- 纯文字生成视频
- 文字加图片生成视频
- 文字加主体库资源生成视频
- 参考已有视频做风格参考或视频编辑
参数说明
输入参数
| 参数名 | 类型 | 必填 | 用户视角说明 |
|---|---|---|---|
| access_key | String | 是 | 接口账号。 |
| secret_key | String | 是 | 接口密码。 |
| prompt | String | 否 | 你希望视频里发生什么,直接写出来,最多 2,500 个字符。正向描述和不希望出现的内容都写在这个字段里即可,例如“画面真实自然,不要字幕、水印、畸形手指”。可以用 <<<image_1>>>、<<<element_1>>>、<<<video_1>>> 指定参考图片、主体或视频。 |
| model_name | String | 否 | 要使用的 Omni 模型,可填 kling-video-o1 或 kling-v3-omni。 |
| mode | String | 否 | 生成质量模式,默认值 pro,可填 std 或 pro。std 是标准/基础模式,性价比高,适合先测试方向;pro 是专家/高品质模式,视频质量通常更好,更适合最终成片。 |
| aspect_ratio | String | 否 | 视频比例,可填 16:9、9:16、1:1。16:9 适合横屏视频,9:16 适合短视频竖屏,1:1 是方形。没有使用首帧参考、也没有做视频编辑时通常要填这个参数。 |
| duration | String | 否 | 视频时长,默认值 5,可填 3 到 15。短视频或先测试建议用 5;多镜头内容较多时再加长。如果 video_list_json 里 refer_type=base,输出会跟输入视频时长一致,这个参数不生效。 |
| image_list_json | String | 否 | 图片参考列表。推荐直接传图片链接数组,比如 ["https://example.com/a.jpg","https://example.com/b.jpg"]。图片格式支持 .jpg、.jpeg、.png,大小不超过 10MB,宽高都不小于 300px,宽高比在 1:2.5 到 2.5:1 之间。如果要控制首尾帧,可传对象数组,type 可填 first_frame 或 end_frame。 |
| sound | String | 否 | 要不要同时生成声音,默认值 off,可填 on 或 off。on 表示生成声音,off 表示不生成声音。普通图文生成可以按需求开启;如果填写了 video_list_json,官方通常要求只能填 off。 |
| multi_shot_json | String | 否 | 多镜头高级配置。普通场景不要填;需要多镜头时填一个 JSON 对象,里面用 enabled 开关多镜头,用 shot_type 选择 intelligence 智能分镜或 customize 自定义分镜,自定义分镜再写 multi_prompt。 |
| element_list_json | String | 否 | 主体参考列表。适合你已经有主体 ID 的场景。可直接填一个主体 ID,比如 123456789;多个主体 ID 用英文逗号分隔,比如 123456789,987654321。 |
| video_list_json | String | 否 | 视频参考列表。适合参考视频或做视频编辑。refer_type 可填 feature 或 base,base 表示待编辑视频,feature 表示特征参考视频;keep_original_sound 可填 yes 或 no。视频格式仅支持 MP4/MOV,时长不少于 3 秒,分辨率 720px 到 2160px,帧率 24 到 60fps,最多 1 段,大小不超过 200MB。 |
| watermark_info_json | String | 否 | 是否生成带水印版本。推荐直接填 true 或 false,工具会自动转换成官方需要的格式;true 表示生成带水印版本,false 表示不生成。 |
输出参数
| 参数名 | 类型 | 用户视角说明 |
|---|---|---|
| task_id | String | 任务编号。后面查结果主要靠它。 |
| task_status | String | 当前任务状态。可返回 submitted、processing、succeed、failed;分别表示已提交、生成中、生成成功、生成失败。创建成功时一般是 submitted。 |
| raw_json | String | 官方原始返回内容。创建时间、更新时间等不常看的信息都在这里,一般只有排查问题时才会看。 |
最简单的填写方式
基础填写项
如果你只是想先跑通一个基础 Omni 场景,可以先填:
access_keysecret_keypromptmodel_namemodeaspect_ratiodurationimage_list_jsonsound
没有参考图片时
如果不需要参考图片,image_list_json 可以不填。
参数组合规则
多镜头
- 不做多镜头时,不填
multi_shot_json;这时正常填写prompt。 - 做智能多镜头时,
multi_shot_json里填{"enabled": true, "shot_type": "intelligence"},并且必须填写prompt。 - 做自定义多镜头时,
multi_shot_json里填{"enabled": true, "shot_type": "customize", "multi_prompt": [...]},并且所有分镜时长加起来要等于外层duration。
图片参考
- 如果
image_list_json里把某张图标成end_frame,同一个列表里必须也有一张first_frame,不能只传尾帧。
视频参考
- 如果填写了
video_list_json,sound通常要填off。 - 如果
video_list_json里的refer_type是base,表示视频编辑,duration不会生效。
画面比例
- 没有使用首帧参考,也没有做视频编辑时,建议填写
aspect_ratio,可填16:9、9:16、1:1。
提示词怎么写
基础写法
直接写你希望视频里发生什么,也可以把不希望出现的内容一起写进去:
画面真实自然,年轻人拿着咖啡走过街角,不要字幕、水印、畸形手指。引用参考素材
如果要明确引用某张图片、某个主体或某段视频,可以在提示词里写 <<<image_1>>>、<<<element_1>>>、<<<video_1>>>。这里的数字顺序分别对应 image_list_json、element_list_json、video_list_json 里的素材顺序。
复杂参数怎么填
multi_shot_json:多镜头配置
普通生成不要填。只想让模型自动分镜时,可以这样写:
{
"enabled": true,
"shot_type": "intelligence"
}如果要自己写每个镜头,就用 customize。每个镜头都要有 index、prompt、duration。duration 表示这个镜头几秒,所有镜头时长加起来要等于外层 duration。
{
"enabled": true,
"shot_type": "customize",
"multi_prompt": [
{
"index": 1,
"prompt": "第一张参考图中的人物向镜头挥手",
"duration": "2"
},
{
"index": 2,
"prompt": "镜头缓慢拉远,人物继续微笑",
"duration": "3"
}
]
}image_list_json:图片参考
普通图片参考推荐直接传图片链接数组:
[
"https://example.com/image-1.jpg",
"https://example.com/image-2.jpg"
]如果要控制首尾帧,就使用对象格式。type 可填 first_frame 或 end_frame;first_frame 表示首帧,end_frame 表示尾帧。不能只传尾帧;有 end_frame 时必须也有 first_frame。
[
{
"image_url": "https://example.com/first.jpg",
"type": "first_frame"
},
{
"image_url": "https://example.com/end.jpg",
"type": "end_frame"
}
]element_list_json:主体库 ID
只有已经在可灵主体库里创建过主体时才填。推荐直接填主体 ID;多个主体 ID 用英文逗号分隔。
123456789,987654321如果需要按官方对象数组填写,也可以写成 [{"element_id":123456789}]。
video_list_json:参考视频
每项都要有 video_url。refer_type 可填 feature 或 base;feature 表示把视频当参考素材,base 表示把视频当作要编辑的原视频。keep_original_sound 可填 yes 或 no。
[
{
"video_url": "https://example.com/input.mp4",
"refer_type": "feature",
"keep_original_sound": "yes"
}
]watermark_info_json:带水印版本
用来控制是否生成带水印结果。推荐直接填 true 或 false;true 表示生成,false 表示不生成。
false如果需要按官方对象格式填写,也可以写成 {"enabled": false}。
注意事项
- 这个接口不会直接返回视频地址。
- 想拿最终视频地址,要再调用查询接口。
- 如果还不熟悉 Omni,建议先从“文字”或“文字+图片”这两种简单组合开始,不要一开始就把图片、主体、视频、分镜全部混在一起。
