Skip to content
Playcut Docs

Gemini Omni Flash: fixed 10s animate and pricing

Gemini Omni Flash (gemini-omni-flash-preview) is Google’s natively-multimodal video model. On Playcut it does text-to-video, image animation, and reference-to-video (text and reference modes added 2026-07-23). It returns a 720p clip of up to 10 seconds with audio the model generates itself — including spoken dialogue lifted from a quoted clause in your prompt, lip-synced, with no TTS step and no audio file to upload. Pick it when you want a talking shot from a photo and top-tier image-to-video motion quality. It costs 40 credits per second at 720p: 400 credits are held at submission (the 10-second maximum) and any seconds the model doesn’t deliver are automatically refunded when the clip completes.

Model idgemini-omni-flash-preview
ProviderGoogle
Modes on PlaycutText-to-video, image-to-video (animate), reference-to-video
Aspect ratios16:9, 9:16 (sent with every request since 2026-07-23)
Resolutions720p
Duration3–10s, model-decided — held at 10s, unused seconds auto-refund
Max reference images6 (reference-to-video, <IMAGE_REF_N> tags)
Credits40 cr/sec → 400 cr held per clip, settled to actual length
StatusPreview

Modes the provider documents but Playcut does not expose: video edit. Requests for it are rejected with a 400 before any credits are held. Interpolation and extension are unsupported by the model itself.

Available since 2026-07-23. Tool: generate-video-from-text with model: "gemini-omni-flash-preview". Just a prompt — dialogue in quotes makes a character speak it natively.

InputRequiredNotes
Source imageYesExactly one. Used as the starting frame.
PromptYesDescribes the motion. Put dialogue in quotes to make the subject speak.
Audio fileNot acceptedThe model never takes audio input.
DurationNot acceptedAny value other than 10 is rejected; shorter returns auto-refund.

Available since 2026-07-23. Tool: generate-video-from-reference with up to 6 reference images. Address them in the prompt with Google’s tag scheme — <IMAGE_REF_0>, <IMAGE_REF_1>, … in the order you supplied them (0-based, angle brackets). Note this differs from HappyHorse ([Image 1]) and Wan (Image 1), which are 1-based — don’t reuse prompts across models without fixing the tags.

This is the differentiator. Most video models need a separate text-to-speech pass and a lip-sync step. Omni Flash does not — it invents a voice and speaks the line itself, in sync, as part of the same generation.

Write the dialogue as a quoted clause inside the prompt:

A barista leans toward the camera in a warm morning cafe,
saying: "We open at six, and the croissants go fast."

Two consequences worth being explicit about:

  • You cannot choose the voice. There is no voice id, no cloned voice, no audio reference. The model decides. If you need a specific voice, use a model that accepts driving audio, or generate speech separately.
  • You do not upload audio. Audio reference uploads are unsupported by the model, so lip-sync-to-my-file workflows do not work here.
SurfaceRateTotal for one generation
Studio (animate)40 credits/sec @ 720p400 credits held — seconds not delivered auto-refund (see below)
Actor Act, pro engine tier35 credits/sec + 15 cr scene365 credits (fixed 10s)

Provider list price is $17.50 per 1M output video tokens, billed at 5,792 tokens per second of 720p video — roughly $0.10 per second. Google publishes no free tier for this model. Provider pricing was verified against Google’s live pricing page on 2026-07-21.

Duration is model-decided — you pay for what you get

Section titled “Duration is model-decided — you pay for what you get”

Google documents an output range of 3–10 seconds, decided by the model. There is no duration parameter anywhere in the request, so Playcut holds credits at the 10-second maximum (400 credits) and, since 2026-07-23, measures the returned clip and automatically refunds any seconds not delivered — a 6-second return settles at 240 credits in Studio. Bench runs came back at 10.0s, so expect the full charge most of the time. The Actor Act pro tier still bills its fixed 365 credits.

Playcut sends your chosen aspect ratio (16:9 or 9:16 — the only two the provider accepts) with every request since 2026-07-23. Earlier generations sent nothing, and the output followed the shape of the source image regardless of the picker label.

  • 720p only. No 1080p, no 4K, no resolution parameter. 24 fps.
  • Reference tags are 0-based with angle brackets. <IMAGE_REF_0> is your first reference image. Prompts written for HappyHorse or Wan (1-based, different brackets) address the wrong images here.
  • Negative prompts are rejected. The model has no negative-prompt field, so sending negativePrompt returns a 400 before any credits are held — fold exclusions into the prompt itself.
  • No generation controls. System instructions, temperature, top_p, and stop sequences are all unsupported by the model.
  • Video-input references are broken upstream. Google accepts video references up to 3 seconds in the API schema but does not process them correctly. Do not build on video input.
  • Large clips are handled. Videos over 4 MB are delivered as a Google-hosted URI rather than inline; since 2026-07-23 Playcut requests URI delivery on every generation and downloads the file server-side, so oversized returns no longer fail.
  • Shared rate limit. Omni Flash draws on the same Gemini request budget as Gemini image generation and Gemini TTS. Heavy image traffic can throttle video jobs.
  • Regional restrictions. Google restricts editing uploaded videos and images containing minors in the EEA, Switzerland, and the UK. Those modes are not exposed on Playcut, so this affects nothing today.
  • Preview model. Google labels gemini-omni-flash-preview a preview release. The model id can change or be deprecated with short notice.

Use the generate-video-from-image tool. Same shape over REST and MCP.

Terminal window
curl -X POST https://api.playcut.ai/api/v1/tools/generate-video-from-image/execute \
-H "Authorization: Bearer $PLAYCUT_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"workerId": "65f3a1b2c3d4e5f600000001",
"imageAssetId": "65f3a1b2c3d4e5f600000009",
"model": "gemini-omni-flash-preview",
"prompt": "The woman turns to the camera and smiles, saying: \"Welcome back — we saved you a seat.\"",
"resolution": "720p",
"durationSeconds": 10
}'

Returns the standard async acknowledgement (taskId, status, estimatedCredits). Poll with get-task-status or block on wait-for-task — see the Quickstart.

Omitting durationSeconds is fine — 10 is the only accepted value and it is applied for you. Passing anything else returns a 400.