Gemini Video Vision: AI Large Language Models

Analyze videos with Google Gemini Video Vision. Get detailed scene, motion, and composition analysis from a video URL. Try free, pay per generation.

📝

Overview

About this model

Gemini Video Vision brings Google Gemini's native video understanding to the Muapi API. Instead of sampling isolated frames, Gemini ingests the full video and reasons about it end-to-end — camera movement, subject motion, composition, lighting, on-screen text, and narrative structure. Give it a video URL and a prompt (or a structured system prompt) and it returns a detailed text analysis, making it useful for content moderation, video captioning, shot-list generation, and automated QA of AI-generated video. Pricing is token-based, similar to Gemini 2.5 Flash and Gemini 3 Flash, but with a higher per-run minimum since video inputs consume substantially more tokens than text or a single image.

1Video QA: Automatically check AI-generated video output for artifacts, continuity errors, or off-prompt content before delivering to a user.
2Content Moderation: Flag unsafe, NSFW, or policy-violating content in uploaded or generated video.
3Shot-List Generation: Extract camera movement, framing, and composition notes from a reference video to guide a new AI video generation prompt.
4Auto-Captioning: Generate detailed scene descriptions or alt-text for video libraries and accessibility.
5Continuity Analysis: Describe the end state of a video segment (subject position, lighting, motion direction) to keep a multi-segment AI video generation consistent.
💰

Pricing & Value

Cost analysis

muapiapp$0.60/M input tokens, $5.00/M output tokens (higher per-run minimum for video)

Token-based billing with no subscription — pay only for what you use, including the higher token cost of video input.

Fal.aiNot available

Fal.ai's vision endpoints are image-only; they do not offer native video-understanding via Gemini's file API.

ReplicateNot available

Replicate does not currently offer a hosted Gemini video-understanding endpoint.

** Competitor pricing is estimated based on similar model architectures and usage tiers.

⚙️

Technical Details

Configuration schema

Promptstring

The question or instruction describing what to analyze in the video.

Default ValueDescribe what happens in this video in detail, including camera movement, subjects, and any on-screen text.
Video URLstring

URL of the video to analyze.

Default Valuehttps://d3adwkbyhxyrtq.cloudfront.net/webassets/videomodels/sample-video.mp4
System Promptstring

Optional system-level instruction to guide the model's analysis style.

Default ValueRespond with a structured JSON analysis, not prose.
ModelEnum (1 options)

Gemini model to use for video understanding. gemini-2.5-pro was removed from this enum after Google deprecated it for new users (returns a 404 NOT_FOUND); gemini-2.5-flash is the only currently supported option.

Default Valuegemini-2.5-flash
📖

Implementation Guide

Developer documentation

How to Use Gemini Video Vision

  1. Provide a video URL: Host your video at a publicly reachable URL (e.g. an S3 or CDN link) and pass it as video_url.

  2. Write a prompt: Describe what you want analyzed — a general description, a structured JSON breakdown, or a specific question about the video's content.

  3. Optionally set a system prompt: Use system_prompt to control output format, e.g. "Respond with structured JSON only, no prose."

  4. Choose a model: gemini-2.5-flash (default) is fast and cheap; gemini-2.5-pro gives deeper, more accurate analysis for complex videos.

  5. Submit and poll: Like all Muapi endpoints, submit the request and poll /predictions/{request_id}/result until status is completed.

Python:

import requests, time

API_KEY = "your_api_key_here"
headers = {"x-api-key": API_KEY, "Content-Type": "application/json"}

r = requests.post("https://api.muapi.ai/api/v1/gemini-video-vision", headers=headers,
    json={
        "prompt": "Describe the camera movement, subjects, and lighting in this video.",
        "video_url": "https://example.com/my-video.mp4"
    })
request_id = r.json()["request_id"]

while True:
    result = requests.get(f"https://api.muapi.ai/api/v1/predictions/{request_id}/result", headers=headers).json()
    if result["status"] == "completed":
        print(result["output"]["text"])
        break
    time.sleep(3)

cURL:

curl -X POST https://api.muapi.ai/api/v1/gemini-video-vision \
  -H "x-api-key: YOUR_API_KEY" -H "Content-Type: application/json" \
  -d '{"prompt": "Describe this video in detail.", "video_url": "https://example.com/my-video.mp4"}'

Larger videos take longer to process since Gemini uploads and ingests the full file before analysis — expect responses to take anywhere from several seconds to a few minutes depending on video length.

Common Questions

Frequently asked

What does Gemini Video Vision do?

It uses Google Gemini's native video understanding to analyze a full video — not just sampled frames — and returns a detailed text description covering motion, composition, subjects, lighting, and any on-screen text or dialogue context.

What video formats and lengths are supported?

Standard video formats like MP4, MOV, and WebM are supported. Longer videos take proportionally longer to process and cost more, since Gemini's token usage scales with video duration.

How is pricing calculated?

Pricing is token-based. Video inputs consume significantly more tokens than text or a single image, so the per-run minimum is higher than Muapi's text-only Gemini endpoints. The actual cost is calculated from the API response and deducted from your wallet after each call.

What's the difference between gemini-2.5-flash and gemini-2.5-pro?

gemini-2.5-flash is faster and cheaper, suitable for most description and QA tasks. gemini-2.5-pro provides deeper reasoning and is better suited for complex analysis, such as detailed shot-by-shot breakdowns.

Can I control the output format?

Yes. Use the system_prompt field to instruct the model to respond in a specific format, such as structured JSON, a bullet list, or a single sentence summary.

How long does a request take?

Processing time depends on video length and complexity. Short clips typically complete within seconds; longer videos may take a couple of minutes since the full video must be uploaded and ingested before analysis begins.