Kling 2.1 Master · Image to Video
1080p, silent, and priced like it means it
- image_url
- video
- task id
Know what you're buying before you queue
Kling Master is the premium lane: fixed 1080p, no audio, and finer prompt adherence than the standard model. It also costs 32.4 credits per second, so a five-second clip is about 162 credits and a ten-second clip is 324. This is not a node you explore with. It's the node you use once you already know which frame and which sentence work.
Which is fine, as long as you're honest about the workflow that gets you there: iterate on the cheap Kling 2.1 node at 720p, or on an open model you run locally, and bring the final composition here. Same for the prompt - write it against something cheap, then spend.
The mechanism
Same machinery as every node in this pack: your opening frame is encoded and uploaded (cached twelve hours on the file hash, so re-prompts don't resend it), the run is quoted, the task is created with an idempotency key so a retry can't produce two bills, the node polls it to completion, and the MP4 is downloaded and decoded into a VIDEO output. Nothing loads locally - no weights, no VRAM, and dependencies = [] in the pack's pyproject.toml isn't a typo, because everything it needs ships with ComfyUI.
Note what the schema doesn't have: no resolution widget, because Master is 1080p as a fixed property, and no aspect_ratio, because your source image decides the shape. Fewer dials, fewer ways to spend money on a mistake.
Inputs
prompt- describe what happens after the opening frame: the action, the camera. Master responds to finer instruction than the standard model, so specifics pay off here in a way they don't on cheaper tiers. "She turns her head to camera, hair lifts, slow push in" does more than "cinematic motion".image_url- the opening frame. The clip starts from this image.duration_seconds-5or10, billed per second. The jump from five to ten is literally double the bill; decide deliberately.negative_prompt- a short list. Keep it to the three or four things that actually recur.guidance_scale- 0 to 1, default0.5. Not a CFG scale. Higher follows the prompt more literally, lower gives the model latitude to invent. If your clip is ignoring the prompt, nudge up; if it's stiff and literal, drop it.
Outputs: video (VIDEO) and task id (STRING). Wire video to Save Video; keep task id visible if you're iterating, since it's the exact handle for the API console and for support.
Audio is not included. Kling 2.5 Turbo is the node to reach for if you want the clip to arrive with a soundtrack attached, and it's a quarter of the price per second.
Install
cd ComfyUI/custom_nodes
git clone https://github.com/popnow-ai/popnow-comfyui
Restart, add a key from popnow.ai/api/console/keys under Settings > PopNow (or set POPNOW_API_KEY), restart again so the catalog loads. Remove any legacy custom_nodes/popnow_api.py. Recent ComfyUI required - V3 node API.
Damage control
Set Settings > PopNow > Max credits per run before your first queue. A 10-second Master run at 32.4 credits a second will sail past any reasonable casual budget, and that setting stops the run before credits are held. Every run is also quoted first, and the node prints the final charge when it finishes.
Error codes: PopNow 401 bad key, 40201 insufficient credits, 400 a rejected field value, 40004 an unservable combination, 40310 unverified email, content_rejected declined and refunded, generation_failed failed and refunded. An error ending in request_id is worth copying verbatim into a support message.
Then the two behaviours everyone should learn once: cancel stops you waiting but not the job (it keeps rendering on PopNow and bills if it succeeds), and there's no local fallback if the vendor is down - this is a hosted endpoint, full stop.
One thing to weigh before spending: PopNow is a brand-new pack with no community history at all, so nobody has stress-tested these endpoints for you. The source is small and MIT-licensed, the key lives in a settings file or the environment rather than a widget, and the honest recommendation is a small credit pack until you've had a dozen runs behave.
Inputs (5)
| Name | Type | Default | Description |
|---|---|---|---|
| prompt | STRING | Describe what happens after the opening frame: the action, the camera. | |
| image_url | IMAGE | Opening frame. The clip starts from this image. JPEG or PNG only. | |
| duration_seconds | COMBO | 5 | Output length: 5 or 10 seconds. Billed per second. |
| negative_prompt | STRING | Things the clip should avoid, written as a short list. | |
| guidance_scale | FLOAT | 0.500–1 | How strictly the clip follows the prompt, from 0 to 1. Higher is more literal, lower gives the model more freedom. |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| video | VIDEO | — |
| task id | STRING | The PopNow task id, for the API console logs or support. |