Omni reference videos: read Sume capabilities, not Google's note
Google's Omni page says multi-video reference is unsupported; Sume's docs list up to three reference clips. Read the catalog entry before you send them.

Before you send reference_video_urls to Gemini Omni Flash 1.1 on Sume, read GET /v1/video-router/models/gemini-omni-flash-1.1 and look at capabilities.reference_videos. Google's own Omni page says that referencing or reasoning across multiple videos is not supported, while Sume's Video Router docs list up to three reference clips of at most three seconds each.
The two pages alone do not reconcile those statements. They describe different surfaces, so treat the Sume catalog as the contract and test with one clip first.
What do the two pages say side by side?
Both pages were read on the same day.
| Item | Google's Omni page | Sume Video Router docs |
|---|---|---|
| Edit source clip | Video of 10 seconds or less when uploading | video_url, the edit source |
| Several videos | Referencing across multiple videos is not supported | reference_video_urls, up to 3, each 3 seconds or less |
| Output length | 3 to 10 seconds | duration 3 to 10 |
| Resolutions | 360p, 720p (default), 1080p and 4K (both upscaled) | 360p, 720p, 1080p, 4K |
How do I read the contract in code?
The catalog item has a capabilities object with booleans for each input type, plus the allowed resolutions, aspect ratios and the duration range.
import os, requests
r = requests.get(
"https://api.sume.com/v1/video-router/models/gemini-omni-flash-1.1",
headers={"Authorization": f"Bearer {os.environ['SUME_API_KEY']}"},
timeout=30)
r.raise_for_status()
c = r.json()["data"]["model"]["capabilities"]
print("reference_images:", c["reference_images"])
print("reference_videos:", c["reference_videos"])
print("reference_audios:", c["reference_audios"])
print("resolutions:", c["resolutions"])
print("duration:", c["duration_seconds"])What stays true either way?
A video_url edit source cannot ride with image_url, end_image_url or any reference_*_urls field, and reference_audio_urls does not apply to Omni. Audio is always on. If the catalog says a reference type is on, start with one short clip, inspect the result, and only then build a batch around it.
How do I test one clip safely?
Submit a single three-second reference at 720p with a short duration and a fresh Idempotency-Key, then poll the job to its end. Open the output and check that the motion you asked for came from the reference, since a clip that is merely accepted by the API is not proof that the model used it. Only after that spend a batch.
Sources
Related posts
More in Developers
- Omni takes JPEG and PNG: gate each reference image URL in Python
Google lists JPEG and PNG for Gemini Omni image input. Check each reference_image_urls entry with a HEAD request, then submit the clean list through Sume.
- One prompt, two models: asyncio.gather Wan and Seedance for $21.08
Submit one 30 s prompt to wan-3.0 ($3.75) and seedance-2.5 ($17.334) with httpx and asyncio.run. Use one Idempotency-Key per request; a shared key conflicts.
- One webhook route for OpenRouter video and Sume job events
Normalize OpenRouter video.generation.* and Sume job.* webhook bodies to one outcome type, and answer 204 to events you do not know. Runnable Bun/Node code.
- OpenAI's three tiers vs Sume plan concurrency of 1, 4, 8 and 20
OpenAI cut API usage tiers from five to three on Oct 6. Sume sets concurrency by plan, not spend. The plan numbers and the queue math, side by side.
Written by Sume