Nodes/Comfyui-zhenzhen/Concurrent Submit | Zhenzhen_kling_image2video
ComfyUI Node

Concurrent Submit | Zhenzhen_kling_image2video

Kling image-to-video with camera moves and tail frames, batched

By T8mars·Created about a year ago·Updated 2 days ago· 740
Concurrent Submit | Zhenzhen_kling_image2video
  • image
  • image_tail
  • task
prompt
model_namekling-v1-6
imagination0.50
aspect_ratio1:1
modestd
duration5
num_videos1
negative_prompt
seed0
api_key
cameranone
camera_value0.0
skip_errorfalse

Kling is the image-to-video workhorse of this pack - the "start from a still, get motion" path that's become the standard way people make consistent video from a single reference. This node wraps Zhenzhen_kling_image2video in the concurrent pattern, so up to ten image-to-video jobs run at once in the shared video pool.

The genuinely useful extra here is the image_tail input: Kling can take a start frame and an end frame, so your clip travels from image A to image B instead of just drifting off from A. Combined with the camera controls (camera + camera_value), that's real direction inside one node - push in, pan, shake, orbit, or ease between two stills. If you've been fighting ComfyUI-native workflows to get that level of shot control, this is the easier door.

How the wrapper works

Underneath, the plain Comfly_kling_image2video node uploads your start frame, posts the request to Kling's API through Zhenzhen's proxy, and polls for the finished clip - with model-specific capability checks (which durations and camera moves each Kling version actually supports). The Submit wrapper keeps every input but returns a single task (COMFLY_VIDEO_FUTURE), deferring the call to the video pool (default 10, COMFLY_VIDEO_CONCURRENCY env var).

The task output must flow into ComflyConcurrent_Video_Await, which waits for all connected tasks and returns video_1video_10 in order plus a status JSON. failure_mode (fail_fast / placeholder) controls whether one failure aborts the batch or blanks a slot.

Inputs that matter

image is required - the start frame. prompt describes the motion. model_name defaults to kling-v1-6 with kling-v1, kling-v1-5, kling-v2-master, kling-v2-1, kling-v2-1-master available; the higher tiers cost more, and the pack's changelog calls v2-master "expensive, use as needed." imagination (0–1, default 0.5) is Kling's creativity/fidelity dial - lower sticks closer to the input image. mode is std or pro; duration is 5 or 10; num_videos is 1–4 per call; negative_prompt exists but Kling leans on it less than you'd expect.

image_tail is the end frame. camera offers eleven moves (horizontal, vertical, zoom, both shakes, rotate, plus the master_* moves) and camera_value (−10 to 10) sets the strength. Which camera/duration combos work depends on your model - the capability tables differ per version, and the node enforces them. api_key is optional once API Settings is configured.

Install and gotchas

Pack install as always: ComfyUI Manager → search Comfyui-zhenzhen, or git clone https://github.com/T8mars/Comfyui-zhenzhen into ComfyUI/custom_nodes, restart. No local models.

The model/duration/camera compatibility matrix is the top source of confusion - e.g. some std/pro+5s combos simply don't support camera moves, and the node will error rather than quietly ignore you. num_videos bills per video, and pro models bill higher per render, so keep 4-per-call for tests on std. A 500 is usually upstream Kling load; re-run. And when a slot fails at the Await node but the clip clearly exists, the download timed out - check the site's task page before spending again.

Categoryzhenzhen/Comfly_kling/Concurrent Submit

Inputs (15)

NameTypeDefaultDescription
imageIMAGE
promptSTRING
model_nameCOMBOkling-v1-66 options: kling-v2-1, kling-v2-1-master, kling-v2-master, kling-v1-6, kling-v1-5, kling-v1
imaginationFLOAT0.500–1
aspect_ratioCOMBO1:13 options: 1:1, 16:9, 9:16
modeCOMBOstd2 options: std, pro
durationCOMBO52 options: 5, 10
num_videosINT11–4
negative_promptSTRING
seedINT00–2147483647
image_tailoptIMAGE
api_keyoptSTRING
cameraoptCOMBOnone11 options: none, horizontal, vertical, zoom, vertical_shake, horizontal_shake, +5
camera_valueoptFLOAT0.0-10–10
skip_erroroptBOOLEANfalse开启后,节点失败时不报错、按旧行为返回默认空结果;关闭时(默认)失败直接抛出错误。

Outputs (1)

NameTypeDescription
taskCOMFLY_VIDEO_FUTURE