Generate Video (from Start Frame)
DeepGen_I2V0
- start_image
- VIDEO
- output_prefix_and_model
- total_credits_used
Image-to-video is the closest thing the DeepGen pack has to magic: you hand it one frame, it hands back a moving clip. DeepGen_I2V0 is the "from Start Frame" video node - the image-to-video entry point of the pack, and the natural next stop after you've generated a still you like with DeepGen_T2I0 and want to bring it to life.
Why you'd reach for it
A still image gives you the composition, the subject, the mood - all the hard parts. The video node only has to figure out the motion, and starting from a real image instead of a text prompt keeps the identity locked. It's the standard i2v move: generate the perfect frame, then animate it. The model list is the closed-video roster - Kling 2.5 Turbo / Turbo Pro, Kling 3.0, 3.0 Pro and Omni, Veo 3.1 / 3.1 Fast, Seedance 1.5 Pro, Vidu Q3 Pro, LTX-2.3 Fast / Pro - the cloud models with no local weights, which is precisely what an API-wrapper node exists for.
How it works
Same architecture as the other generators, with one big difference in feel: video jobs are queued, then polled. The node submits the generation with a queue flag, then sleeps and checks back every 15 seconds until the clip is done - usually minutes. Your workflow blocks during that wait, which is worth knowing before you wire five of these in sequence. When it finishes, the video downloads to ComfyUI's temp dir and comes back as a ComfyVideoMock (the pack's stand-in for the VIDEO type), which the usual preview and save nodes handle.
The inputs that matter
start_image(IMAGE) - the frame to animate. Wire in anything producing an image.model- the i2v-capable dropdown.prompt- describe the motion and scene beyond the frame: "the camera slowly pushes in while she turns toward the window." The image carries the identity; the prompt carries the action.duration(1–15, default 5) - seconds, snapped to what the model supports. Your biggest cost lever, along with resolution.generate_audio(default on) - Veo and Kling Omni add native audio; flip off to save credits.aspect_ratio/resolution- free-form strings; leave blank to let the model decide or enter e.g.16:9/720p.nb_results,seed_value,output_prefix,config_json- the standard pack set.
Outputs
VIDEO (the clip), output_prefix_and_model (STRING), and total_credits_used (FLOAT - meter it with the pack's DeepGen_F2T0 display node).
Install
Same pack as every DeepGen node:
cd ComfyUI/custom_nodes
git clone https://github.com/deepiksdev/ComfyUI-DeepGen-API.git
cd ComfyUI-DeepGen-API
pip install -r requirements.txt
Restart, then paste your DeepGen API key (deepgen.app) into Settings → "DeepGen API Key", stored at ComfyUI/user/deepgen/config.json. Only requests and opencv-python install - no weights, no VRAM.
Gotchas
The queue-blocking wait is the main friction - budget for it. Video is also where credit spend gets genuinely expensive, so keep duration honest and consider generate_audio off for test runs. And a useful sibling exists: if you want the clip to end somewhere specific rather than free-run, that's DeepGen_I2V2 with its start and end frames.
Inputs (11)
| Name | Type | Default | Description |
|---|---|---|---|
| model | COMBO | 15 options: Kling 2.5 Turbo Pro (kling-2.5-turbo-pro), Kling 3.0 (kling-3), Kling 3.0 Omni Pro (kling-o3-pro), Grok Imagine Video (grok-imagine-video), Veo 3.1 Fast (veo-3-1-fast), Kling 2.6 Pro (January) (kling-2-6-pro-january-no-audio), +9 | |
| prompt | STRING | — | |
| seed_value | INT | 1000 | — |
| nb_results | INT | 11–10 | — |
| output_prefix | STRING | — | |
| config_json | STRING | — | |
| start_imageopt | IMAGE | — | |
| aspect_ratioopt | STRING | — | |
| resolutionopt | STRING | — | |
| durationopt | INT | 51–15 | — |
| generate_audioopt | BOOLEAN | true | — |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| VIDEO | VIDEO | — |
| output_prefix_and_model | STRING | — |
| total_credits_used | FLOAT | — |