MODEL IDgoogle:gemini@omni-flash-1.1
live

Gemini Omni Flash 1.1

Google
by Google

Gemini Omni Flash 1.1 is Google's updated multimodal video generation and editing model in the Gemini Omni family. It generates native synchronized audio from the prompt, and expands the original Omni Flash workflow with additional 1080p and 4K output modes, a 360p draft mode, scene extension in 3 to 10 second increments up to 30 seconds total, start-to-end frame interpolation for fluid transitions, and reference-to-video generation guided by both images and short video clips. It is built for teams that need stronger continuity, higher-resolution delivery, and more controllable multi-input video creation than the first Omni Flash release.

Gemini Omni Flash 1.1

Editing video with Gemini Omni Flash 1.1

How to edit an existing clip with Gemini Omni Flash 1.1: relighting, weather, and restyling through inputs.video, why short prompts win, and how to chain edits.

Introduction

A brief that arrives as "same shot, but at night" is not a request to shoot again. Gemini Omni Flash 1.1 takes a clip you already have in inputs.video, applies the change you name, and leaves the framing, the motion, and everything you did not mention alone.

The clip below is one eight-second tracking shot past a bookshop. The three variants beside it are that same shot with one instruction applied to each.

Source: midday, overcast

A slow lateral tracking shot past the front of a small independent bookshop on a quiet city street at midday, in a single unbroken scene. A dark green painted shopfront with brass fittings, two large display windows stacked with books, a narrow glazed door with a brass handle, a slate pavement out front and a bicycle rack at the kerb. Flat bright overcast daylight, no people. Retail brand cinematography, steady and even. The audio is a quiet street ambience with distant traffic, no music, no dialogue.

Night: windows lit, streetlamp on the pavement

Change the time of day to night. The shopfront windows glow warm from inside and a streetlamp lights the pavement. Keep everything else the same.

Rain: wet pavement, streaked glass

Add steady rain. The pavement is wet and reflective and rain streaks the display windows. Keep everything else the same.

Illustration: ink linework and colour washes

Restyle the whole shot as a hand-drawn ink and watercolour illustration with visible linework and soft colour washes. Keep the composition and the camera movement the same.

The camera travels the same path at the same speed in all four. This guide covers the request shape, why the shortest prompt usually wins, and how to stack edits when a brief arrives one note at a time.

The request

An edit call carries the source clip and a prompt. What it must not carry is a duration.

import { createClient } from '@runware/sdk'

const client = await createClient({ apiKey: process.env.RUNWARE_API_KEY })
await client.connect()

const [result] = await client.run({
  model: 'google:gemini@omni-flash-1.1',
  positivePrompt: 'Change the time of day to night. The shopfront windows glow warm from inside and a streetlamp lights the pavement. Keep everything else the same.',
  inputs: {
    video: 'https://example.com/seed-storefront.mp4'
  },
  resolution: '720p'
})
import asyncio
import os

from runware import Runware


async def main():
    async with Runware(api_key=os.environ["RUNWARE_API_KEY"]) as client:
        results = await client.run({
            "model": "google:gemini@omni-flash-1.1",
            "positivePrompt": "Change the time of day to night. The shopfront windows glow warm from inside and a streetlamp lights the pavement. Keep everything else the same.",
            "inputs": {
                "video": "https://example.com/seed-storefront.mp4"
            },
            "resolution": "720p"
        })


asyncio.run(main())
curl https://api.runware.ai/v1 \
  -H "Authorization: Bearer $RUNWARE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '[
    {
      "taskType": "videoInference",
      "taskUUID": "a2b7c639-3e4f-4578-a617-283940516273",
      "model": "google:gemini@omni-flash-1.1",
      "positivePrompt": "Change the time of day to night. The shopfront windows glow warm from inside and a streetlamp lights the pavement. Keep everything else the same.",
      "inputs": {
        "video": "https://example.com/seed-storefront.mp4"
      },
      "resolution": "720p"
    }
  ]'
runware run google:gemini@omni-flash-1.1 \
  positivePrompt="Change the time of day to night. The shopfront windows glow warm from inside and a streetlamp lights the pavement. Keep everything else the same." \
  inputs.video=https://example.com/seed-storefront.mp4 \
  resolution=720p
{
  "taskType": "videoInference",
  "taskUUID": "a2b7c639-3e4f-4578-a617-283940516273",
  "model": "google:gemini@omni-flash-1.1",
  "positivePrompt": "Change the time of day to night. The shopfront windows glow warm from inside and a streetlamp lights the pavement. Keep everything else the same.",
  "inputs": {
    "video": "https://example.com/seed-storefront.mp4"
  },
  "resolution": "720p"
}
Response
[
  {
    "taskType": "videoInference",
    "taskUUID": "a2b7c639-3e4f-4578-a617-283940516273",
    "videoUUID": "9f0a1b2c-3d4e-4567-f809-123456789012",
    "videoURL": "https://vm.runware.ai/video/os/a14d18/ws/2/vi/9f0a1b2c-3d4e-4567-f809-123456789012.mp4"
  }
]
  • inputs.video takes a public URL or a UUID from an earlier Runware generation. For editing, the source has to run between 3 and 10 seconds and stay under 32 MB.
  • resolution is the only sizing parameter allowed. width and height are rejected whenever a source video is attached.
  • inputs.referenceImages, inputs.referenceVideos, and inputs.frameImages are all rejected here. An edit is the clip plus the prompt.

Leaving duration out is what makes this an edit. Adding one turns the same call into an extension, with no error to warn you, and you get a longer clip instead of a changed one. See the extension guide for that mode.

Short prompts win

Editing rewards the opposite instinct from generation. A generation prompt is a specification and wants detail. An edit prompt is a note, and detail actively hurts it: every extra clause is another thing the model believes it has permission to change.

The three tabs below share one source clip and one intent. One prompt is a single instruction, the other describes the finished result the way a generation prompt would.

Source: an off-white wall

A slow push in across a tidy home office desk against a plain off-white wall, in a single unbroken scene. A closed laptop, a ceramic mug, a small brass desk lamp switched off, a stack of two books and a potted trailing plant at the edge of frame. Soft daylight from a window on the left. Workspace brand cinematography, calm and clean, no people. The audio is a quiet interior room tone, no music, no dialogue.

"Change the wall colour to deep forest green. Keep everything else the same."

Change the wall colour to deep forest green. Keep everything else the same.

The same intent, written as a full scene description

A calm modern home office with a deep forest green feature wall behind a tidy desk, styled for a workspace brand campaign. A sleek closed laptop sits centrally with a warm ceramic mug beside it, a brass desk lamp adds a metallic accent, a neat stack of hardback books grounds the composition and a trailing pothos softens the edge of the frame. Soft directional daylight rakes in from a window on the left, casting gentle shadows across the desk surface and giving the green wall a rich depth. Shot on a slow push in, shallow depth of field, warm neutral colour grade, calm and aspirational.

Both clips have a green wall. The short version changed only the wall. The long version re-described the props and the light, so the model re-decided them, and the result drifts from the clip that was already approved.

The pattern that holds up: name the change, then write "keep everything else the same". That closing clause is doing real work, and it is worth writing even when the instruction already sounds narrow.

What edits handle well

The instruction that reads cleanest is one a colourist or a compositor would recognise. Lead with a verb the model can act on, such as change, add, remove, replace, or restyle, then name the target.

  • Relighting and time of day. "Change the time of day to night", "make the light warmer and lower". The geometry is untouched and only the light moves.
  • Weather and atmosphere. "Add steady rain", "add a low ground fog". These read as an added layer rather than a redraw.
  • Colour and finish. "Change the wall colour to deep forest green", "make the car matte black". Narrow, checkable, and easy to pin.
  • Whole-frame restyling. "Restyle as a hand-drawn ink and watercolour illustration". Here the whole picture is meant to change, so the pin clause protects composition and camera instead of content.

The one thing to keep in mind is that an edit is a re-render, not a filter. The output is new footage that follows the source closely, and the tighter the prompt, the closer it follows.

Chaining edits

When notes arrive one at a time, feed each output back as the next call's inputs.video. Every step is an ordinary edit, and each one only has to name its own delta.

Three notes, three calls, and the bed, the throw, the armchair, and the camera survive all of them. Each step inherits the previous step's changes for free, so step 3 never has to mention the lamps or the dusk light.

Chain only when a step genuinely depends on the one before it. Independent notes, such as a colour change and a weather change that do not interact, are better run as parallel edits against the same source. That keeps each variant one generation away from the approved original instead of three, and small drift has no chance to accumulate.

Each step also re-uploads the previous clip against a 32 MB source cap. Long chains at a high tier reach that limit faster than short ones, so keep the working chain at a modest resolution and re-run the final prompt at the delivery tier once the notes are settled.

Tips

  1. Omit duration. With inputs.video, a duration turns an edit into an extension silently. This is the single easiest mistake to make in this mode.

  2. Name one change per call. Edits are notes, not specifications. Two unrelated changes in one prompt give the model two licences to reinterpret.

  3. Close with "keep everything else the same". It is the clause that stops a narrow instruction from becoming a re-render of the whole scene.

  4. Lead with an actionable verb. Change, add, remove, replace, restyle. A verb the model can execute beats a description of the desired end state.

  5. Don't re-describe the scene. Every prop and lighting detail you restate is one the model re-decides, and it will not land on the take you already approved.

  6. Protect composition when restyling. A whole-frame look change still needs a pin clause, aimed at the framing and the camera move rather than at the content.

  7. Use resolution, never width/height. Dimension parameters are rejected with a source video attached.

  8. Chain for dependent notes, run parallel for independent ones. Fewer generations between the original and the variant means less accumulated drift.