Gemini Video Upload Rejected or File Type Not Supported

MP4 or MOV upload to Gemini fails with 'file type not supported' or silent rejection. Usually codec, size, or app-vs-AI-Studio. Fix paths inside.

You drag an MP4 into Gemini and get back “File type not supported,” “Upload failed,” or worst of all, a silent rejection where the file just doesn’t appear in the chat. Gemini absolutely can process video — but the consumer app at gemini.google.com is much pickier about codec, size, and length than AI Studio is.

Almost every rejection comes down to one of: size limit, codec mismatch (HEVC / H.265 / VP9 instead of H.264), audio-only file mistakenly named .mp4, length exceeding the consumer limit, or you’re trying to upload to the wrong surface (consumer app vs AI Studio vs API).

Common causes

By frequency:

1. File too large for the consumer app

Gemini app (gemini.google.com, mobile app) caps video uploads at around 100MB for AI Pro, less for free. A 1080p 10-minute clip easily exceeds this. AI Studio accepts much larger files; the API accepts up to roughly 2GB.

How to judge: error says “file too large” or upload progress bar reaches 100% then errors.

2. Codec is HEVC / H.265 / VP9 / ProRes

Phone cameras default to HEVC (H.265) since iOS 11 and Android 12. Gemini’s consumer app prefers H.264 baseline / main. HEVC sometimes works, sometimes silently fails. ProRes from screen recorders, VP9 from some web tools — same story.

How to judge: file plays fine in QuickTime but Gemini rejects it. Right-click → Get Info on Mac, or MediaInfo on Windows, shows the codec.

3. Video length too long for app, fine for AI Studio

Consumer app: usually rejects > ~10 minutes for full processing. AI Studio with Gemini 2.5 Pro: handles hours of video as part of the 1M-token context window.

How to judge: short clips upload fine, long clips don’t.

4. File extension lies (actually audio or wrong container)

A file saved as .mp4 that’s actually audio-only, or .mov that’s secretly MJPEG sequences, will be parsed and rejected.

How to judge: try a known-good MP4 from a phone — if that works, the original file is mislabeled.

5. Wrong Gemini surface for your use case

Three surfaces with different limits:

SurfaceMax sizeMax lengthCodecs
gemini.google.com~100MB~10 minH.264 mostly
aistudio.google.comup to 2GBhoursbroader
Gemini API~2GB / Files APIdependsbroader

How to judge: same file fails on the app but works on AI Studio.

6. Free tier doesn’t include video at all in some regions

In some markets, video upload is AI Pro / Workspace only. Free tier sees “upgrade to upload video.”

Shortest path to fix

Step 1: Switch to AI Studio for anything non-trivial

aistudio.google.com
→ Pick "Gemini 2.5 Pro"
→ Drag video into the prompt area

AI Studio handles much larger files, longer clips, and more codecs than the consumer app. For research, transcription, and long-video analysis, this should be your default.

Step 2: Re-encode to H.264 baseline if codec is the issue

For a known-good baseline:

ffmpeg -i input.mov -c:v libx264 -profile:v baseline -level 3.0 \
       -pix_fmt yuv420p -c:a aac -b:a 128k output.mp4

This produces an H.264 baseline / yuv420p / AAC file that any Gemini surface accepts. Output is usually smaller than the HEVC original too.

On a phone:

  • iPhone: Settings → Camera → Formats → Most Compatible (records H.264 going forward)
  • Android: Camera app → Settings → Video codec → H.264

Step 3: Shrink the file under 100MB for the consumer app

If you need to stay in gemini.google.com (e.g., shared chat thread):

ffmpeg -i input.mp4 -c:v libx264 -crf 28 -preset slow \
       -vf "scale=-2:720" -c:a aac -b:a 96k output.mp4

CRF 28 + 720p drops most clips well under 100MB without massive quality loss.

Step 4: Trim long videos

If the video is over 10 minutes, trim to the relevant portion:

ffmpeg -i input.mp4 -ss 00:02:00 -to 00:05:30 -c copy clip.mp4

The -c copy flag is fast and lossless, no re-encode.

Step 5: For very long video — use the API with Files API

For analyzing hours of video, the Gemini API’s Files API is the supported path:

from google import genai
client = genai.Client(api_key="YOUR_API_KEY")
video_file = client.files.upload(file="long-video.mp4")
response = client.models.generate_content(
    model="gemini-2.5-pro",
    contents=[video_file, "Summarize this video by chapter."]
)

Files API holds the upload server-side, and the model sees it as part of context.

Step 6: If free tier blocks video entirely

Check whether your region’s free Gemini supports video at all. If not, you need AI Pro, or use AI Studio (which is free for video up to its limits).

Prevention

  • Set your phone to record in “Most Compatible” / H.264 if you regularly upload video to Gemini
  • Default to AI Studio for any video over 50MB or 5 minutes — fewer surprises than the app
  • Keep an FFmpeg one-liner in your snippets for the size-shrink and the codec-convert path
  • For Workspace users, confirm with IT that video uploads aren’t disabled at the org level before relying on it
  • If a clip rejects silently, try a known-good test clip (any iPhone H.264 recording) to isolate file vs account issue

Tags: #Gemini #Troubleshooting #video