Nodes/Quality of Life Nodes for ComfyUI/FAL Kling O3 Edit Video (Soze)
ComfyUI Node

FAL Kling O3 Edit Video (Soze)

Restyle a clip and keep the motion — and the audio

By SozeInc·Created 2 years ago·Updated 8 days ago· 10
FAL Kling O3 Edit Video (Soze)
  • video
  • image_1
  • image_2
  • image_3
  • image_4
  • image_batch
  • video
  • video_url
  • status
tierstandard
prompt
shot_typecustomize
keep_audiotrue

The Kling video models are the hosted workhorse for "make this clip different" jobs, and Kling O3 Edit is the specific endpoint that takes an existing video and re-renders it - new style, new content, same motion. FAL Kling O3 Edit Video wraps that endpoint in one node: source video in, edited video back, with an option to keep the original audio track. It's the "restyle this footage" node, sitting alongside the pack's other three Kling O3 variants.

Like everything in the FAL family, this is a paid hosted API. Your machine does none of the heavy lifting - video uploads to fal, the model works, and the finished clip downloads back into your graph as a VIDEO output you can preview or save.

How it works

The required inputs are the shape of the whole Kling O3 family: tier (standard or pro - pro is pricier and generally stronger), the prompt, the video you're editing, and shot_type (customize lets you drive the look with your prompt; intelligent lets the model decide shot composition).

Two details make this node specifically useful:

  • keep_audio - default True. Preserve the source clip's audio track through the edit. That's the feature that separates "restyle my footage" from "regenerate and lose the sound". Flip it off if you're editing to a new track anyway.
  • Reference images - up to four image_N slots (or an image_batch, capped at four frames, individual slots winning). Connect them and cite them in the prompt as @Image1 through @Image4. This is how you pin a character, object or style into the edit instead of describing it with words alone.

The source video has real constraints from the API: 3–10 seconds, 720–2160px, max 200MB, mp4 or mov. The node doesn't bend those - a 20-second clip just fails, so trim before you send.

Outputs: video (the edited clip as a VIDEO tensor, ready for ComfyUI's video save/preview nodes), video_url (the hosted URL for sharing), and status. As with the rest of the pack, live progress streams on the node body: upload, submit, download.

When it's worth it

Style transfer and content edits on real footage: restyle a brand ad, change a product's environment, swap the season in a landscape clip. The audio preservation is the quiet killer feature - most video APIs nuke your sound; this one can keep it, which makes it viable for actual client footage rather than just abstract clips.

Getting it running and gotchas

Standard pack install:

cd ComfyUI/custom_nodes
git clone https://github.com/SozeInc/ComfyUI_Soze.git
pip install -r ComfyUI_Soze/requirements.txt

Then configure FAL_KEY - environment variable, .env in the pack root, or config.ini under [API]. The first error you'll hit if it's missing is exactly "FAL_KEY is not configured".

Realistic failure modes: video over the size/duration limits (trim first), reference-image uploads failing (per-slot in status), and - the classic - forgetting to cite your images as @Image1 etc. in the prompt, which leaves them uploaded but unused. If your references "aren't doing anything," the prompt is where you fix it.

CategoryFAL/VideoGeneration

Inputs (10)

NameTypeDefaultDescription
tierCOMBOstandard2 options: standard, pro
promptSTRINGCite reference images as @Image1..@Image4.
videoVIDEOSource video to edit. 3-10s, 720-2160px, max 200MB, mp4/mov.
shot_typeCOMBOcustomize2 options: customize, intelligent
keep_audiooptBOOLEANtruePreserve the original audio track.
image_1optIMAGEReference image slot 1. Overrides image_batch when connected. Cite as @Image1 in the prompt.
image_2optIMAGEReference image slot 2. Overrides image_batch when connected. Cite as @Image2 in the prompt.
image_3optIMAGEReference image slot 3. Overrides image_batch when connected. Cite as @Image3 in the prompt.
image_4optIMAGEReference image slot 4. Overrides image_batch when connected. Cite as @Image4 in the prompt.
image_batchoptIMAGEOptional IMAGE batch (capped at 4 frames). Ignored if any image_N slot is connected.

Outputs (3)

NameTypeDescription
videoVIDEO
video_urlSTRING
statusSTRING