Kling Keyframe Video (Start+End)
Animating Between Keyframes
- auth
- start_image
- end_image
- camera_control
- video
- video_file
- audio
- url
- task_id
Kling Keyframe Video (Start+End) is the pack's interpolation node: you give it a start image and an end image, and Kling generates the video that connects them. Where plain Image-to-Video animates from a still, this one books the scene - it knows where it starts and where it's headed, and it invents a believable path between the two. Think of it as Kling's answer to the classic "morph between two frames" shot, minus the manual work.
It's a convenience wrapper over Image-to-Video's image_tail feature (the end-frame input), promoted to its own node so you don't have to remember the option exists. If you've ever built a keyframe-style animation in ComfyUI - generating pose or composition keyframes and tweening between them - this is that idea with Kling's model doing the tweening. It's a genuinely useful creative tool: two images you know you like, and the model handles the uncertain middle.
How it works
Inputs:
auth- the KLING_AUTH object.start_image(IMAGE) - where the video begins.end_image(IMAGE) - where it ends. Kling'simage_tailis the mechanism under the hood: it uploads both frames and asks the model to interpolate.prompt- optional motion description ("the car drives right, the camera follows"). This steers how the transition happens, not just that it happens.negative_prompt- things to avoid.model_name- the I2V roster:kling-v3,kling-v2-6,kling-v2-master,kling-v1-6.duration-5or10seconds. (Shorter list than plain I2V - the interpolation sells better in shorter bursts.)mode-proorstd.cfg_scale- 0..1, default 0.5. Higher = tighter adherence to your motion description.camera_control(optional) - a KLING_CAMERA from the Camera Preset / Control nodes, if you want the camera to move during the interpolation.
Outputs: the standard video quintet - video (IMAGE frame batch), video_file, audio (AUDIO), url, task_id.
How to get a transition that holds together
- Keep the keyframes related. The model interpolates; if your two images share subject, lighting, and composition, the middle is smooth. If they're unrelated, the middle is a hallucination lottery. Same person, same angle, changed pose or scenery = good. Different person entirely = bad.
- Describe the motion in the prompt. "She turns and walks right" tells the model the trajectory it can't infer from two stills. Empty prompts make the model pick the safest (often static-feeling) path.
- 5 seconds is the sweet spot. Longer interpolation between two fixed points drifts - the model has more room to wander off both anchors. Nail the short version, then decide if you need the long one.
- This is not "make the end frame move." If your end frame is itself animated content, you want plain Image-to-Video. Keyframe Video is for fixed start and end anchors.
Common issues
- The middle looks warped or flickery - the two keyframes are too far apart in style or composition. Bring them closer together.
- Nothing visibly interpolates - check the
durationand that both images actually reached the API; a missing end frame silently degrades to start-only animation. - Motion goes the "wrong" way - describe the intended trajectory in the prompt; two stills genuinely don't encode direction on their own.
Install
Ships in ComfyUI-Kling-Direct:
cd ComfyUI/custom_nodes
git clone https://github.com/IxMxAMAR/ComfyUI-Kling-Direct
or ComfyUI Manager → search "Kling Direct" → install → restart. No models, no GPU, no extra dependencies. It's a thin wrapper over a real Kling feature, and once you've got two good images, it's one of the most satisfying nodes in the pack to run.
Inputs (10)
| Name | Type | Default | Description |
|---|---|---|---|
| auth | KLING_AUTH | — | |
| start_image | IMAGE | — | |
| end_image | IMAGE | — | |
| prompt | STRING | Optional motion description. | |
| negative_prompt | STRING | — | |
| model_name | COMBO | kling-v3 | 4 options: kling-v3, kling-v2-6, kling-v2-master, kling-v1-6 |
| duration | COMBO | 5 | 2 options: 5, 10 |
| mode | COMBO | pro | 2 options: pro, std |
| cfg_scale | FLOAT | 0.500–1 | — |
| camera_controlopt | KLING_CAMERA | — |
Outputs (5)
| Name | Type | Description |
|---|---|---|
| video | IMAGE | — |
| video_file | STRING | — |
| audio | AUDIO | — |
| url | STRING | — |
| task_id | STRING | — |