KIE Kling 2.6 Motion-Control (I2V) [SL]
Steal a video's motion with Kling 2.6 Motion-Control
- images
- video
- video
Most I2V nodes give you a still and a prompt, then hope. This one gives you a still, a prompt, and a reference video whose motion gets transplanted onto your image. That's the motion-control pitch: instead of describing "the camera orbits slowly to the left" and praying, you feed it a clip that already does the orbit, and Kling 2.6 borrows the choreography.
It's the node you reach for when prompt-only motion keeps coming out wrong. Compositors love it for matching a generated subject to an existing camera move - you have plate footage of a dolly-in, you have a still of your character, and you want the character to ride that same dolly-in. Character animators love it for loopable actions you can't describe in words. It's also the pickier Kling, because it needs three things to line up at once.
The inputs that matter
- images - your subject still (first image in the batch wins).
- video - the motion reference. This is a full ComfyUI VIDEO input, so wire in whatever a previous video node produced. It gets coerced to MP4 and uploaded.
- prompt - what's happening, up to 2500 characters.
- character_orientation -
video(match the reference's orientation, default) orimage(keep your still's orientation even if it fights the reference). This is the knob for the classic failure where the subject rotates to match the reference when you didn't want it to. - mode -
720por1080poutput resolution.
Output is video, a standard ComfyUI VIDEO you can save with SaveVideo or feed to another node. Expect it to take a while - this is the slowest Kling in the pack, and the timeout floor is 1000 seconds.
How it works
Same async job machinery as the rest of the pack, with two uploads instead of one: your reference image and the motion clip both go up, and a task is created against the kling-2.6/motion-control model. Transient 429/5xx failures auto-retry with backoff. The [SL] suffix means your API key is a node input field (this whole pack is a serverless-friendly fork that ditched the config file) - which also means the key is embedded in the workflow JSON you save.
Install
Standard for the pack:
cd ComfyUI/custom_nodes
git clone https://github.com/v3devv/ComfyUI-Kie-API-Serverless
Or Manager search "Kie-API-Serverless", then restart. No models, no extra deps.
Where people get burned
Motion-control is the most literal "garbage in, garbage out" node in this pack. The reference clip's framing and camera move get borrowed almost directly, so a shaky or low-quality reference produces shaky results regardless of your prompt. Match your still's framing to the reference's as closely as you can - that's where the quality actually comes from. And if your subject keeps rotating or warping toward the reference's character, flip character_orientation to image before you blame the model. The per-call cost is real too; iterate on the prompt before you spend, because video re-runs are the fastest way to drain a KIE balance.
Inputs (7)
| Name | Type | Default | Description |
|---|---|---|---|
| api_key | STRING | — | |
| prompt | STRING | — | |
| images | IMAGE | — | |
| video | VIDEO | — | |
| character_orientationopt | COMBO | video | 2 options: image, video |
| modeopt | COMBO | 720p | 2 options: 720p, 1080p |
| logopt | BOOLEAN | true | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| video | VIDEO | — |