◉GEMINI LABJP
●TTS — Gemini 3.8 Flash TTS and 3.8 Flash-Lite TTS became generally available on September 22. Flash-Lite TTS replaces the 3.1 Flash TTS preview●GEMINI2.5 — Access to the 2.5 models is now limited to people who already used them. They are not deprecated; new projects are pointed to 3.5 Flash-Lite or 3.8 Flash●9/30 — gemini-omni-flash-preview is deprecated on September 30, five days from now●SANDBOX — Users report that since v0.60.0, a sandboxed Gemini CLI asks for sign-in every time and can no longer resume past sessions●NEW — Review only the orange sentences before sending a Gemini draft●CONFIG — Antigravity 2.17.0 now reads repository settings from .gemini/config.json, the same place Gemini CLI looks●TTS — Gemini 3.8 Flash TTS and 3.8 Flash-Lite TTS became generally available on September 22. Flash-Lite TTS replaces the 3.1 Flash TTS preview●GEMINI2.5 — Access to the 2.5 models is now limited to people who already used them. They are not deprecated; new projects are pointed to 3.5 Flash-Lite or 3.8 Flash●9/30 — gemini-omni-flash-preview is deprecated on September 30, five days from now●SANDBOX — Users report that since v0.60.0, a sandboxed Gemini CLI asks for sign-in every time and can no longer resume past sessions●NEW — Review only the orange sentences before sending a Gemini draft●CONFIG — Antigravity 2.17.0 now reads repository settings from .gemini/config.json, the same place Gemini CLI looks
Articles/API / SDK
◈ API / SDK/2026-07-18Advanced

How Well Does Omni Flash Hear 'Rotate the Camera 30 Degrees Right'? Measuring Where Conversational Edits Land

Public-preview Gemini Omni Flash lets you re-edit a generated video in plain language. 'Make the lighting evening' lands; 'rotate the camera 30 degrees' often misses. Here is a running log of where instructions land, sorted mechanically by comparing before/after frames.

Gemini Omni Flash3video generation2conversational editingmultimodal45cost design7

✦ Premium Article

I was reworking a short promo clip and stopped. I wanted only the lighting of an 8-second clip shifted to an evening tone. In the past that meant rebuilding from source or redoing the grade in a video editor. With the Omni Flash public preview, telling the already-generated video "make the lighting a low evening sun" in plain language swapped the lighting while keeping the cast and framing intact. The original audio track stayed put.

When I tried the same tone with "pan the camera just 30 degrees to the right," it was less obedient than I expected. Sometimes it merely pushed in a little; sometimes it replaced the shot entirely. Some instructions land, some do not. I could feel the difference, but confirming it by eye each time meant running $0.10-per-second edits over and over with no cost visibility.

As an indie developer at Dolice who churns out promo videos for apps, I could not let that slide. So I measured how well each kind of instruction lands, sorting the results mechanically by having Gemini compare the before and after frames. This article is the log of those 42 edit loops.

Conversational editing shifts you from "rebuild" to "restate"

Omni Flash's conversational editing does not rebuild the video from scratch; it layers a diff instruction onto the video you already have. "Make the subject a man with glasses," "stop the rain in the background," "warm the whole thing slightly" — each restatement updates only the part you name. The preview notes say the original audio and video tracks are preserved natively.

That design changes the promo-asset workflow. I covered folding video understanding into a single pass earlier in folding Omni Flash video understanding into one pass; this is the reverse direction — finishing a generated asset through dialogue.

But "you can restate it" and "it changes as intended" are not the same thing. Conflate them and you get charged for misses, and worse, you stack the next instruction without noticing the last one missed. The first thing I needed was a way to judge whether an edit landed without relying on my eyes.

Don't confirm edits by eye — the frame-comparison idea

Whether an edit landed reduces, at bottom, to "did the requested change actually occur between before and after." If so, pull one representative frame from before and one from after, and have Gemini judge whether the instruction is reflected — then you receive the truth mechanically.

Receiving that judgment as prose does not scale into operations. Fix the shape with responseSchema and return only three fields: landed, confidence, and note. Decide up front to treat low-confidence results as "not reflected," and the hesitation disappears.

This is a decision not to hand something you can verify deterministically to a probabilistic mechanism. I wrote about how a SynthID negative is not proof of "not AI-generated" in the asymmetry of SynthID; the reasoning is the same — tip outputs you cannot be confident about to the safe side (not reflected).

✦

Thank you for reading this far.

Continue Reading

What follows includes implementation code, benchmarks, and practical content we hope you'll find useful. This site runs without ads — server and development costs are supported entirely by members like you. If it's been helpful, we'd be truly grateful for your support.

WHAT YOU'LL LEARN
✦A verification loop that sorts 'landed' vs 'missed' conversational video edits by having Gemini compare the before and after frames
✦Landing rates by instruction type (lighting and color grade ~90%, precise angle changes ~40%) measured across 42 edits
✦Before/After code that stops the cost of $0.10-per-second edits from ballooning when you iterate by eye
Secure payment via Stripe · Cancel anytime
✦

Unlock This Article

Get full access to the rest of this article. Buy once, read anytime. This site is ad-free — your support goes directly toward keeping it running.

or
Unlock all articles with Membership →
Share

Thank You for Reading

Gemini Lab is ad-free, supported entirely by members like you. We publish practical guides daily with implementation code, benchmarks, and production-ready patterns. If you've found it useful, we'd love to have you on board.

  • ✦Copy-paste ready implementation code
  • ✦New advanced guides published daily
  • ✦$5/mo or $15 for lifetime access
View Membership →

Related Articles

◈ API / SDK2026-07-05
Collapsing Video Understanding into One Native Call with Omni Flash
How I replaced an ffmpeg frame-extraction pipeline (7-9 calls per clip) with a single native Omni Flash call, the measured differences, and the boundaries where keeping frame sampling still wins.
◈ API / SDK2026-07-19
Still image or short clip? Deciding feature placement from the cost gap between Nano Banana 2 Lite and Omni Flash
When I froze over whether a wallpaper app's hero asset should be a still image or a short moving loop, the deciding factor was not taste but the order of magnitude of the cost. Here is how to normalize Nano Banana 2 Lite and Omni Flash onto the same footing, down to a working decision function.
◈ API / SDK2026-09-06
Two Ways to Make a Longer Shot in Gemini Omni 1.1, and Two Different Ways They Break
Omni 1.1 extends scenes in 10-second steps up to 40 seconds cumulative, and interpolates between a pinned first and last frame. Which one you use is decided before your first generation, not after. Here is the planner I run first and the drift check I run last.
📚RECOMMENDED BOOKS
Build a Large Language Model (From Scratch)
Sebastian Raschka
LLM Dev
Prompt Engineering for LLMs
Berryman & Ziegler
Prompting
AI Engineering
Chip Huyen
AI Eng
* Contains affiliate links