Combined Video Generation (fal)
Fire one image at six video models at once
- image
- klingpro_v1.6_video
- klingmaster_v2.0_video
- minimax_video
- luma_video
- veo2_video
- wanpro_video
This is the model-shootout node. You give it one image and one prompt, and it fans the same job out to six different video models at once - Kling Pro 1.6, Kling Master 2.0, Minimax, Luma, Google Veo 2, and Wan Pro - then hands you a separate URL for each result. It's the fastest way to answer the question everyone hits: which video model should I actually use for this shot? Instead of running six nodes by hand and comparing, you run one and line up the outputs.
Because the fal pack fans these calls out in parallel, all six render at the same time on fal's side - so the node takes about as long as the slowest single model, not the sum of all six. That's the real convenience: a genuine side-by-side without a six-fold wait.
The inputs that matter
- prompt and image - the shared start frame and motion description that every model receives.
- The six
enable_*toggles -enable_klingpro,enable_klingmaster,enable_minimax,enable_luma,enable_veo2,enable_wanpro. Each is on by default. This is where you control cost: turn off the models you don't want, because every enabled one is a separate paid generation.
The rest are per-model settings so each engine gets sensible parameters: kling_duration, kling_luma_aspect_ratio, luma_loop, veo2_aspect_ratio, veo2_duration. There are six outputs, one per model - klingpro_v1.6_video, klingmaster_v2.0_video, minimax_video, luma_video, veo2_video, wanpro_video - each a STRING URL.
Installing it
ComfyUI Manager → search ComfyUI-fal-API → install → restart. Manual:
cd ComfyUI/custom_nodes
git clone https://github.com/gokayfem/ComfyUI-fal-API.git
pip install -r ComfyUI-fal-API/requirements.txt
No downloads - all six models are hosted on fal. Set your key (config.ini, or export FAL_KEY=your_key; fal.ai/dashboard/keys), restart, find it under FAL/VideoGeneration.
Where people get burned
The big one: this node bills for every enabled model. Leave all six on and one click is six video generations - the most expensive single action in the whole pack. That's fine when you're deliberately comparing, but leave them all on by accident and the cost is a nasty surprise. Once you've decided which model wins, switch to that model's dedicated node (Kling25TurboPro_fal, Wan26_fal, SeedanceProImageToVideo_fal, etc.) and stop paying the shootout tax.
Each of the six outputs is a URL string, not a video - run each one you care about through Fal Save Media from URL to download it, or a Load-from-URL node to view it. And if one model in the batch fails (content policy, quota, a bad size) the others can still succeed; the failed output carries fal's error text, so check each URL. Consider the spend guard in the pack's config.ini to cap a session before an all-six run runs away with your balance.
Inputs (13)
| Name | Type | Default | Description |
|---|---|---|---|
| prompt | STRING | — | |
| image | IMAGE | — | |
| kling_duration | COMBO | 5 | 2 options: 5, 10 |
| kling_luma_aspect_ratio | COMBO | 16:9 | 3 options: 16:9, 9:16, 1:1 |
| luma_loop | BOOLEAN | false | — |
| veo2_aspect_ratio | COMBO | auto | 4 options: auto, auto_prefer_portrait, 16:9, 9:16 |
| veo2_duration | COMBO | 5s | 4 options: 5s, 6s, 7s, 8s |
| enable_klingpro | BOOLEAN | true | — |
| enable_klingmaster | BOOLEAN | true | — |
| enable_minimax | BOOLEAN | true | — |
| enable_luma | BOOLEAN | true | — |
| enable_veo2 | BOOLEAN | true | — |
| enable_wanpro | BOOLEAN | true | — |
Outputs (6)
| Name | Type | Description |
|---|---|---|
| klingpro_v1.6_video | STRING | — |
| klingmaster_v2.0_video | STRING | — |
| minimax_video | STRING | — |
| luma_video | STRING | — |
| veo2_video | STRING | — |
| wanpro_video | STRING | — |