Gemini Omni Flash Image to Video API

google/gemini-omni-flash/image-to-video

Gemini Omni Flash Image to Video animates input images into short AI videos with synchronized audio, adding motion and sound while following the source image. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.

Parameters

NameTypeDefaultConstraintsDescription
image *Imageimage_upload—image/* · 0–1 itemsInput image URL to animate.
prompt *Prompttextarea—≤ 5000 charsText prompt describing how the image should be animated.
aspect_ratioAspect Ratioselect16:916:9 | 9:16Aspect ratio of the generated video.
durationDurationselect83 | 4 | 5 | 6 | 7 | 8 | 9 | 10Duration of the generated video in seconds.

Output fields

FieldTypeDescription
videosarray<string>Generated video URL(s).

API

Call this model through one unified REST API. Get a key on the API Keys page.

cURL
# 1) Submit — returns { "task_uuid": "..." }
curl -X POST "https://www.namifusion.com/api/v1/marketplace/run/google/gemini-omni-flash/image-to-video" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "input": {
    "image": [
      "https://assets-public.namifusion.com/marketplace/images/2026-06-12/638e1ee18ac7.jpeg"
    ],
    "prompt": "Animate the image with subtle natural motion, a gentle camera push-in, consistent subject details, and cinematic light.",
    "aspect_ratio": "16:9",
    "duration": 8
  }
}'

# 2) Poll until status is "completed", then read the output URLs
curl "https://www.namifusion.com/api/v1/marketplace/run/tasks/TASK_UUID" \
  -H "Authorization: Bearer YOUR_API_KEY"
Python
import time, requests

API_KEY = "YOUR_API_KEY"
HEADERS = {"Authorization": f"Bearer {API_KEY}"}

# 1) Submit
resp = requests.post(
    "https://www.namifusion.com/api/v1/marketplace/run/google/gemini-omni-flash/image-to-video",
    headers=HEADERS,
    json={
        "input": {
            "image": [
                "https://assets-public.namifusion.com/marketplace/images/2026-06-12/638e1ee18ac7.jpeg"
            ],
            "prompt": "Animate the image with subtle natural motion, a gentle camera push-in, consistent subject details, and cinematic light.",
            "aspect_ratio": "16:9",
            "duration": 8
        }
    },
)
resp.raise_for_status()  # 401/402/429/5xx stop here instead of polling a bad task
task = resp.json()

# 2) Poll until a terminal state (completed / failed / cancelled).
#    This model is allowed up to 300s server-side.
deadline = time.time() + 360
while task.get("status") not in ("completed", "failed", "cancelled"):
    if time.time() > deadline:
        raise TimeoutError(f"still {task.get('status')} — keep the task_uuid and poll later")
    time.sleep(3)
    poll = requests.get(f"https://www.namifusion.com/api/v1/marketplace/run/tasks/{task['task_uuid']}", headers=HEADERS)
    poll.raise_for_status()
    task = poll.json()

print(task["status"], task.get("output"))
JavaScript
const API_KEY = "YOUR_API_KEY";
const HEADERS = { Authorization: `Bearer ${API_KEY}` };

// 1) Submit
const resp = await fetch("https://www.namifusion.com/api/v1/marketplace/run/google/gemini-omni-flash/image-to-video", {
  method: "POST",
  headers: { ...HEADERS, "Content-Type": "application/json" },
  body: JSON.stringify({
    "input": {
      "image": [
        "https://assets-public.namifusion.com/marketplace/images/2026-06-12/638e1ee18ac7.jpeg"
      ],
      "prompt": "Animate the image with subtle natural motion, a gentle camera push-in, consistent subject details, and cinematic light.",
      "aspect_ratio": "16:9",
      "duration": 8
    }
  }),
});
if (!resp.ok) throw new Error(`submit failed: ${resp.status} ${await resp.text()}`);
let task = await resp.json();

// 2) Poll until a terminal state (completed / failed / cancelled).
//    This model is allowed up to 300s server-side.
const deadline = Date.now() + 360 * 1000;
while (!["completed", "failed", "cancelled"].includes(task.status)) {
  if (Date.now() > deadline) throw new Error(`still ${task.status} — keep the task_uuid and poll later`);
  await new Promise((r) => setTimeout(r, 3000));
  const poll = await fetch(`https://www.namifusion.com/api/v1/marketplace/run/tasks/${task.task_uuid}`, { headers: HEADERS });
  if (!poll.ok) throw new Error(`poll failed: ${poll.status}`);
  task = await poll.json();
}

console.log(task.status, task.output);

Documentation

Gemini Omni Flash Image to Video API

Turn a single image into a short video with synchronized audio.

Gemini Omni Flash Image to Video is an image-to-video model that animates a source image into a short AI-generated clip while producing synchronized audio. It is designed for fast iteration, reliable performance, and cost-efficient short-form content creation, with no cold starts and simple control over motion, format, and duration.

🚀 Key Features

  • Image-to-video generation: Transform a still image into a dynamic short video while following the visual structure of the source image.
  • Synchronized audio: Generate audio together with the video output for more complete and immersive results.
  • Prompt-guided motion control: Use a Prompt to describe subject movement, camera motion, pacing, scene evolution, and audio direction.
  • Simple Aspect Ratio selection: Choose between 16:9 for landscape output and 9:16 for portrait content.
  • Flexible Duration options: Generate clips from 3 to 10 seconds for rapid testing or more developed short scenes.
  • No cold start: Well suited for production workflows and repeated generation tasks that require responsive performance.

🛠️ Technical Specifications

ItemDetails
Model NameGemini Omni Flash Image to Video API
Model IDgoogle/gemini-omni-flash/image-to-video
Task TypeImage-to-video
Model ArchitecturePrompt-guided image animation model with synchronized audio generation
Input FormatImage URL + Prompt
Output FormatVideo with audio
ImageSingle input image URL
PromptRequired text description of motion, camera behavior, scene changes, pacing, and audio direction
Aspect Ratio16:9(default), 9:16
Duration3–10 seconds(default: 8)
ResolutionOutput follows the selected Aspect Ratio and is optimized for short-form landscape or portrait video
Audio CapabilityNative synchronized audio generation
LatencyOptimized for fast inference with no cold starts

Sample Prompts

  • Animate the subject walking slowly forward, with a gentle camera push-in, subtle wind moving the trees, and soft ambient wind audio.
  • Make the product rotate slowly in the center frame, pull the camera from close-up to medium shot, and add clean futuristic sound design.
  • Bring the city night scene to life as neon lights gradually turn on, with a smooth lateral camera move and subtle street ambience.

💰 Pricing

ModePrice
Base Price$0.14 / second
3s video$0.42
5s video$0.70
8s video$1.12
10s video$1.40

💡 Best Use Cases

  • Social media content: Create short landscape or portrait clips for mobile-first and short-form publishing.
  • E-commerce and product marketing: Turn product images into motion-driven promotional videos with sound.
  • Creative prototyping: Quickly test motion ideas, camera behavior, pacing, and audiovisual direction from a single image.
  • Campaign and brand content: Produce lightweight promotional scenes from existing visual assets without a full video shoot.

🔗 Related Models

  • Google Gemini 3 Pro Image Text To Image: Suitable for generating static images from image and text inputs.
  • Google Gemini Omni Flash Reference To Video: A related option for reference-based video generation workflows.

Related models

xAI Grok Imagine Video v1.5 Image to Video
Image to VideoX Ai

xAI Grok Imagine Video v1.5 Image to Video

Animate one input image with a text prompt into a 1-15 second video at 480p or 720p.

from $0.850 / per run
Vidu Q4 Preview Image to Video
Image to VideoVidu

Vidu Q4 Preview Image to Video

Generate a 3–16 second video from a prompt and one image, with optional audio and prompt expansion. Supports 540p, 720p, 1080p, 2k and 4k.

from $0.475 / per run
vidu/q3/image-to-video-spicy
Image to VideoVidu

vidu/q3/image-to-video-spicy

Vidu Q3 Image-to-Video Spicy generates unlimited high-quality videos from images with smooth animations and diverse motion, optimized for scalable content generation. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.

from $0.750 / per run
Vidu Q3 Image To Video
Image to VideoVidu

Vidu Q3 Image To Video

Vidu Q3 Image-to-Video turns text prompts into high-quality videos with exceptional visual fidelity and diverse motion. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.

from $0.750 / per run
MiniMax H3 Spicy Image to Video
Image to VideoMinimax

MiniMax H3 Spicy Image to Video

Animate a first-frame image with optional prompt and last-frame guidance. Supports 480p, 540p, 768p and 1080p video, with durations from 3 to 15 seconds.

from $0.200 / per run
MiniMax H3 Image to Video
Image to VideoMinimax

MiniMax H3 Image to Video

MiniMax H3 Image to Video animates a first-frame image into a coherent 2K video, with natural-language motion instructions and optional last-frame control for consistent motion, scene continuity, and cinematic video generation. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.

from $0.650 / per run
ltx-2.5/image-to-video
Image to VideoLtx 2.5

ltx-2.5/image-to-video

LTX 2.5 Image-to-Video animates a first-frame image into high-fidelity synchronized audio-video content, with optional last-frame guidance and 720P / 1080P / 2K / 4K output for cinematic videos, social content, ads, and production workflows. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.

from $0.500 / per run
ai/ltx-2.3-spicy/image-to-video-lora
Image to VideoLightricks

ai/ltx-2.3-spicy/image-to-video-lora

LTX 2.3 Spicy LoRA Image to Video API turns a reference image and prompt into expressive AI videos using selectable LoRA presets, optional LoRA strength overrides, duration, and resolution controls. Run fast REST inference on MaaS with no cold starts and affordable pricing.

from $0.150 / per run