Swap the product in a finished video: Omni Flash edit mode
Edit an existing clip with gemini-omni-flash-1.1 through the Video Router video_url field. The source sets length and shape, so aspect_ratio returns 400.

To change one thing in a finished ad, such as swapping a bottle for another product, send the clip as video_url to the Video Router with gemini-omni-flash-1.1 and a prompt that names the change. The source clip sets the output length and shape, so aspect_ratio and duration do not apply. Sending aspect_ratio returns 400.
How edit mode is selected
Gemini Omni Flash 1.1 is one catalog id. The input shape picks the mode: prompt only is text-to-video, an image is image-to-video, reference URLs are reference-to-video, and video_url is edit. There are never four public ids.
Only three catalog rows accept video_url: this model, higgsfield-genjutsu as a motion-transfer source and h3-max-recast as a recast source. You cannot combine video_url with image_url, end_image_url or reference_*_urls. To use a clip as a reference for a new generation, use reference_video_urls.
The request
The docs example replaces a bottle with an apple and asks to keep everything else the same. Write your prompt the same way: one change, then what must stay.
curl -X POST https://api.sume.com/v1/video-router/generate \
-H "Authorization: Bearer $SUME_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: swap-bottle-001" \
-d '{
"model": "gemini-omni-flash-1.1",
"prompt": "Replace the bottle with a green apple. Keep everything else the same.",
"video_url": "https://example.com/clip.mp4",
"resolution": "720p"
}'Limits to know
The model always makes native synced audio. generate_audio: false, bitrate_mode and reference_audio_urls are rejected with 400. The default resolution is 720p, and 4K or lowercase 4k is accepted. If you send a duration with video_url, it is only a reserve estimate, 8 seconds by default, because fal does not report an output duration.
| Field with video_url | Result |
|---|---|
| aspect_ratio | 400 |
| duration | Reserve hint only, default 8 s |
| generate_audio: false | 400 |
| image_url or reference_*_urls | Not allowed together |
Review the swap
An edit regenerates the frames, so check the whole clip, not only the product. Look at the label text and the hands. Keep the original file, since each edit is a new job under its own key.
Sources
Related posts
More in Use cases
- SynthID not detected in Gemini: that does not mean the video is real
Gemini's checker only recognizes Google AI content, so no watermark means no Google mark was found, not that a person filmed it. Know its limits.
- Talking-head ad: Omni audio, Kling audio on, or Avatar Video?
Pick by length and face. Avatar Video runs 4 to 60 s from a script; Omni makes 3 to 10 s with native audio; Kling 3 adds audio at $0.21 a second.
- Talking photo: H3 Max lip sync, Kling motion control or Recast?
Lip sync follows your audio, motion control follows a reference video, Recast swaps a person. 10-second prices on Sume: $1.00, $1.58 and $3.75 at 768p.
- Tasting menu opener: 40 s, four courses, Omni first/last frames
Four courses, four 10-second Omni clips on Sume: empty plate as the first frame, plated dish as the last. Draft at 360p, finish at 1080p, join on a timeline.
Written by Sume