Gemini Omni edit: direct Video Router call or a Sume Format run?
Use the Video Router edit call for one precise change to one clip. Use a Format run when the job has steps, a schema and a spend cap around the edit.

For one change to one clip, call the Video Router edit route with gemini-omni-flash-1.1 and a video_url. For an edit that sits inside a longer job, such as trimming, voiceover, captions and a typed result, run a Format and let the recipe decide when to edit. A Format's model field will not select Omni, so a Format is not a way to force a specific edit model.
What the edit route takes
Google's guide says input videos for editing must be 10 seconds or less when uploaded, and that Omni Flash outputs 360p, 720p by default, 1080p or 4K at 9:16 or 16:9. Sume's catalog lists the same model as the only Video Router row with a general edit mode, with video_url as the source clip. The source sets the output, so Sume rejects aspect_ratio with a 400 on an edit.
The direct call
On the direct route the prompt carries the whole instruction. A request may include a duration, but on an edit it is only a hint for the reservation, with a default of 8 seconds, because the provider returns no output duration. You cannot combine video_url with image_url, an end image or reference lists. If you want the clip to guide a new generation instead, send it as a reference video.
import json, os, urllib.request
def main():
body = {"model": "gemini-omni-flash-1.1",
"prompt": "Replace the bottle with an apple. Keep everything else the same.",
"video_url": "https://example.com/clip.mp4",
"resolution": "720p", "mode": "async"}
req = urllib.request.Request(
"https://api.sume.com/v1/video-router/generate",
data=json.dumps(body).encode(), method="POST",
headers={"Authorization": "Bearer " + os.environ["SUME_API_KEY"],
"Content-Type": "application/json",
"Idempotency-Key": "apple-swap-clip-1"})
with urllib.request.urlopen(req) as r:
print(r.read().decode())
main()The Format run
A Format run is a different kind of unit. It is one unattended agent turn in a fresh sandbox, with a webhook or a poll for the receipt, and runs that make video take minutes. Media URLs in input share a budget of 30 files, at most 10 of them video. The run is held under a spend cap you set, and you get a typed output plus every file in artifacts[].
Choosing between them
The two routes differ in who is in control, as the table shows.
| Question | Video Router edit | Format run |
|---|---|---|
| Who picks the video model | You, by model id | The Format's tools; the model field picks only the orchestrator |
| Source clip | One video_url, 10 s or less for Omni uploads | Video URLs in input, up to 10 per run |
| Aspect ratio | Not allowed on edit; source decides | Whatever the recipe produces |
| Result | One job and its video | Typed output plus artifacts[] |
| Spend control | Reserve at submit; send a max spend | generation_spend_cap_usd per run |
| Good for | A precise, repeatable swap | A multi-step ad with an edit inside it |
Limits to plan around
Google also states that editing uploaded video is unavailable in some regions, so check your audience before you plan an edit-first workflow. If a clip is longer than ten seconds, trim it before you edit, and run the edit on the short span you actually want to change.
Sources
Related posts
More in Formats
- Spend cap for six 10-second 1080p clips: set $25, not the $400 default
Six 10-second Omni 1080p clips bill $11.28 on Sume. Set generation_spend_cap_usd to about $25 to allow one retake each, instead of the $400 default or $500 max.
- Gift message field in a strict output schema: optional means nullable
In a Sume output_schema every property must be required, so an optional gift message is a string-or-null union, not an omitted key. Here is the shape.
- Holiday gift set video from 30 photos: the Sume attachments limit
A gift set has many parts. Sume accepts up to 30 images in attachments and a 30-file media budget per run, so plan which shots go in before you call.
- Image API n or a bulk Format run: which to use for ad variants
Use Image API n for same-prompt variants at one ratio, and a bulk Format run when each variant needs its own instruction, input, spend cap or webhook.
Written by Sume