Google's video default is Omni Flash: three cases where Veo 3.1 fits

Google's video docs call Gemini Omni Flash the default and keep Veo 3.1 for extension, frame-specific and image-directed jobs. What each maps to on Sume.

4 min readSume
All posts

Google's video generation docs name Gemini Omni Flash as the recommended default for video and keep Veo 3.1 for specialized cases: extension, frame-specific control, and image direction. If your job is none of those three, start with Omni Flash.

The three Veo cases

The three Veo cases are narrow on purpose. Each corresponds to a request shape you can describe in a few words, which makes the choice easy to automate in a router or an agent.

Veo 3.1 specialized cases and Sume request equivalents (read 2026-10-03)
Veo caseWhat it meansNearest Sume request
ExtensionVeo can extend a clip by 7 s, up to 20 times, 720p onlyNew job per clip, chained by first frame
Frame-specificControl the first or last frameframe_images with first_frame or last_frame
Image directionGuide the look with images (up to 3 on Veo)input_references

What Sume documents

Gemini Omni Flash 1.1 is in the Sume catalog with 3 to 10 second clips, 16:9 or 9:16, image and video input_references but no audio references, plus an edit mode through the Video Router video_url field, per the video docs. Those docs do not describe a Veo model, so the first two Veo cases map to fields other catalog models accept.

Routing sketch

Frame control is model-dependent. The docs list supported_frame_images per model, and the example seedance-2 row shows both first_frame and last_frame. Read that field before you route a frame-specific job.

def pick_route(needs_extension, needs_frames, needs_image_direction):
    if needs_extension:
        return "chain clips: last frame of clip N is first frame of clip N+1"
    if needs_frames:
        return "model whose supported_frame_images lists first_frame and last_frame"
    if needs_image_direction:
        return "model whose supported_input_references lists image_url"
    return "default: gemini-omni-flash-1.1"

Why a default matters

A named default is a statement about where a vendor invests. Google's docs steer new work to Omni Flash. Veo 3.1 stays for the specific cases listed.

For your own code, mirror that structure: one default model id in configuration, and a small list of exceptions keyed by request shape. Then a change of default is a one-line edit instead of a search through the codebase.

  • Default id in config, not in code.
  • Exceptions keyed by request shape.
  • Log the id used for every job.
  • Review the default each time the vendor posts a changelog.

Keep the default honest

The three-way split is a starting point, not a verdict. Clip length, price, and resolution still decide. Check supported_durations and pricing_skus on the live catalog before you commit a pipeline to either default.

Sources

Related posts

More in Comparisons

All Comparisons posts

Written by Sume