EvoLink Kling O3 Image-to-Video (Official)
4K image-to-video with a first and last frame
- first_frame
- last_frame
- video
- task_id
- status_info
- result_urls
- response_json
Kling O3 is Kuaishou's newest generation of video model, and EvoLink_KlingO3I2V is its image-to-video entry in this pack. It's the full-featured one: up to 4K output, optional last frame, per-model aspect ratio, and sound generation - a capability the cheaper Kling tiers drop. If you've got a strong reference image and want a high-end animated result rather than a draft, this is the Kling node to reach for.
The inputs that matter
first_frame(required) - the IMAGE input that starts the clip. It must be at least 300px on each side with a width:height ratio between 1:2.5 and 2.5:1, per the tooltip. Square or near-square frames sit safest in that range.prompt(required) - shot and motion description, up to 2500 characters, Chinese-friendly.last_frame(optional) - a second IMAGE input. Connect it and the model animates from the first frame to the last, which is the classic first/last-frame trick for controlled endings.duration- 3–15 seconds, default 5, billed by duration.quality-720p(default),1080p, or4k.aspect_ratio-16:9(default),9:16, or1:1.sound-off(default) oron. Generated sound effects; on the standard O3 node this is available (unlike Turbo).
Then api_key and timeout_seconds (1200).
How it works
Your frames upload through EvoLink's file channel (auto-deleted after 72h, no third-party host), the job posts to POST /v1/videos/generations as kling-o3-image-to-video, and the pack polls until the clip completes, downloading it as a VIDEO object. Wire video into a native Save Video node. The other four outputs - task_id, status_info, result_urls (24h expiry), response_json - are the pack-wide standard.
Installing
No GPU, no model files, only requests:
cd ComfyUI/custom_nodes
git clone https://github.com/deeplearning-goethe/comfyui-evolink.git
then fully restart ComfyUI, or install via ComfyUI Manager by searching EvoLink. If nodes don't appear, check the pack isn't nested two folders deep.
Troubleshooting
The pack-standard error set (401/402/403/429) and the VPN note - whitelist api.evolink.ai and files-api.evolink.ai. The Kling-specific gotchas: respect the first-frame minimum size and ratio - the API rejects frames outside 1:2.5 to 2.5:1, and the error you get back may not say "resize your image" in so many words. And remember 4K costs meaningfully more per run than 1080p; for drafts, 720p is the sane default. Also be aware the video output needs a recent ComfyUI with comfy_api VIDEO support.
Inputs (9)
| Name | Type | Default | Description |
|---|---|---|---|
| prompt | STRING | 镜头/画面描述,支持中文,最长 2500 字符。多分镜等高级用法见 evolink.ai/docs。 | |
| first_frame | IMAGE | 首帧图(必接);宽高≥300px,比例 1:2.5~2.5:1 | |
| durationopt | INT | 53–15 | 视频时长(秒),3~15 任意整数,按时长计费 |
| aspect_ratioopt | COMBO | 16:9 | 画幅比例 |
| qualityopt | COMBO | 720p | 分辨率 |
| soundopt | COMBO | off | 生成音效 |
| last_frameopt | IMAGE | 尾帧图(可选) | |
| api_keyopt | STRING | EvoLink API Key(sk- 开头)。首次填写后自动保存到本机配置,之后可留空。分享工作流前请清空此框。获取:evolink.ai/dashboard/keys | |
| timeout_secondsopt | INT | 120060–3600 | 最长等待时间;生成失败或审核拦截的任务不扣费 |
Outputs (5)
| Name | Type | Description |
|---|---|---|
| video | VIDEO | 生成结果(已下载落地,可直连保存节点) |
| task_id | STRING | EvoLink 任务 ID,可到 evolink.ai/zh/dashboard/logs 查询 |
| status_info | STRING | 人读状态摘要(模型/用时/消耗 credits) |
| result_urls | STRING | 结果原始链接,每行一个(24 小时过期) |
| response_json | STRING | 平台 GET /v1/tasks/{id} 的完整 JSON 响应(status/usage/results 等),供下游节点解析 |