explainx.ainewsletter3.5k
TrendingNewsPathwaysSkills
Pricing
explainx.ai

Upskill in AI — 16 free pathways, live workshops & bootcamps, and 50+ courses from practitioners. Plus the skills, tools, and MCP servers to practice on.

follow us

corporate training

support@explainx.ai

get started

Find your pathTake Free Evaluation

learn

pathways — start freeworkshopsbootcampscoursescertificationsmock testsexplainx universitycorporate traininglearn skills & mcp

discover

skillsmcp serversexplainx mcptoolsagentsllmsdesignsdictionaryagi trackerranks

company

aboutvisionmissionteaminstructorscommunityhackathonscareers

content

daily AI newsstate of AI — live resultsblogreleasespromptsgeneratorsresource libraryfor LLMsexplainx.ai kids

solutions

all solutionsdeveloper upskillingmarketing upskillingproduct manager upskillingleadership upskilling

newsletter · weekly

Get AI news, tools, and insights in your inbox.

supportprivacytermsdata rightshow we create contentsubmission guidelines

© 2026 AISOLO Technologies Pvt Ltd

On this page

  • TL;DR — what actually works
  • Why "watching" breaks on most LLM UIs
  • Solution 1 — Native multimodal APIs (Gemini, GPT-4o)
  • Solution 2 — Scene-aware local prep (claude-real-video)
  • Solution 3 — Transcript-first editing (video-use)
  • Solution 4 — DIY ffmpeg + Whisper
  • Solution 5 — Video VLMs and structured extraction
  • Cost math — why prep pays off
  • Which solution should you pick?
  • Limitations (honest)
  • Related Reading
← Back to blog

explainx / blog

Can Claude or LLMs Watch a Video? Here's How to Make It Work

LLMs do not natively watch most video files. Gemini samples frames; Claude needs prep. Solutions: scene-aware frame packs (claude-real-video), transcripts (video-use), native APIs, and DIY ffmpeg — compared with costs.

Jul 3, 2026·7 min read·Yash Thakker
Video AIClaudeGeminiLLMOpen SourceCoding Agents
go deep
Can Claude or LLMs Watch a Video? Here's How to Make It Work

Can Claude watch a video? Not the way humans do. Paste a YouTube URL into ChatGPT and you mostly get captions, not frame-by-frame vision. Upload an MP4 to Claude and you often hit unsupported file type. Even Gemini, which accepts video natively, typically samples frames at a fixed rate — fine for a lecture, weak for a 15-second reel with six cuts.

The workable pattern in 2026 is not "give the model the video." It is give the model what matters from the video — speech as text, visuals as deduplicated keyframes, metadata as a manifest — then ask your questions.

Weekly digest3.5k readers

Catch up on AI

Curated AI updates on agents, skills, and MCP — delivered to your inbox. Unsubscribe anytime.


TL;DR — what actually works

table · 5 cols
ApproachBest forVisual fidelityRuns locally?Typical cost
Gemini native video (API / AI Studio)Quick analysis, Google stack~1 fps default; misses fast cutsNo — cloud uploadGemini token pricing
ChatGPT + YouTube linkSpoken content, summariesTranscript-first; weak on B-rollNoPlus / API
claude-real-video (crv)URLs + local files; scene-heavy editsScene changes + dedupYesFree tool + LLM tokens
video-use + Claude CodeEditing (cuts, grade, subs)Transcript-first; composites on demandPartial (local ffmpeg)Scribe API + Claude
DIY ffmpeg + WhisperFull control, air-gappedWhatever you scriptYesYour time
Video VLMs (Marlin)Structured events from feedsModel-specificSelf-host optionGPU + ops

Bottom line: For Q&A and research, use frames + transcript + manifest. For editing, use video-use. For fastest cloud try, use Gemini video. For privacy and reels, use local prep (crv or DIY).


Why "watching" breaks on most LLM UIs

Multimodal models do not stream 24 fps into context. They receive a bounded set of images and text inside a token budget.

table · 2 cols
Failure modeWhat happens
Fixed-interval sampling (1 frame/sec)10-minute static screencast → ~600 near-duplicate frames; 30-second reel → misses cuts between samples
Transcript-only (YouTube in ChatGPT)Answers dialogue; blind to on-screen code, charts, or lip-sync fraud
Raw frame dump1 minute × 30 fps × ~1,500 tokens/image → millions of tokens — slow, expensive, noisy
No video ingest (Claude file upload)You must preprocess before the model sees anything

video-use's core insight applies broadly: the LLM should read structure, not raw pixels — but for open-ended video Q&A you need both transcript and selectively chosen frames, not transcript alone.


Solution 1 — Native multimodal APIs (Gemini, GPT-4o)

Gemini video

Google's Gemini models accept video in AI Studio and the Gemini API. Default sampling is often ~1 frame per second — documented behavior teams hit when analyzing long files.

Good for: meeting recordings, lectures, slow-paced demos.
Weak for: TikTok edits, sports highlights, music videos with fast cuts.

See Gemini Omni Flash for Google's video stack direction — generation and understanding are related but not identical products.

ChatGPT + links

Useful when spoken content carries the signal. Weak when the answer is on screen but never spoken — UI walkthroughs, silent demos, visual gags.

Cost: bundled in subscription or API vision pricing; you do not control frame selection.


Solution 2 — Scene-aware local prep (claude-real-video)

claude-real-video (crv, MIT, ~250 GitHub stars as of July 2026) is one open-source answer when you want any LLM — Claude, ChatGPT, Gemini, local models — to reason over what changed visually, without uploading the video to a vendor.

bash
pip install claude-real-video
pip install "claude-real-video[whisper]"   # + audio transcription
brew install ffmpeg                        # macOS; required on all platforms

crv "https://www.youtube.com/watch?v=..."
# → crv-out/frames/*.jpg
# → crv-out/transcript.txt
# → crv-out/MANIFEST.txt

Why scene detection beats 1 fps

table · 3 cols
Fixed 1 fpscrv
Static 10-minute slide~600 similar framesCollapses to few frames after dedup
Fast-cut reelMisses between samplesCatches scene changes
A-B-A edit (repeat shot)Sends A twiceSliding-window dedup sends each shot once
AudioOften ignoredWhisper or embedded subtitles
PrivacyOften cloud uploadStays on your machine

How it works (short): yt-dlp or local file → ffmpeg scene-change + fps floor → pixel-diff dedup (not perceptual hash — hashes miss flat-color hue shifts) → subtitle track if present else Whisper → MANIFEST.txt for the model.

Tuning flags that matter:

table · 3 cols
FlagDefaultEffect
--scene0.30Lower = more frames
--max-frames150Hard cap
--dedup-threshold8Higher = fewer frames kept
--dedup-window4Stops A-B-A repeat sends
--reportoffHTML report of keep/drop decisions

Optional --keep-audio: saves audio.m4a for models that accept audio (Gemini, GPT-4o audio) when tone and music matter — transcript alone loses both.

Prompt pattern after crv

text
You are analyzing a video I preprocessed locally.

Read MANIFEST.txt for metadata, transcript.txt for speech, and frames/*.jpg in order.

Questions:
1. What is the main argument in the first 2 minutes?
2. Which frame shows the pricing table?
3. List every scene change topic in chronological order.

Drop the folder into Claude Projects, paste paths in ChatGPT, or attach images in Gemini — same artifacts, any frontier model.


Solution 3 — Transcript-first editing (video-use)

If your goal is produce a new video, not understand an existing one, use video-use:

  • ElevenLabs Scribe → word-level takes_packed.md
  • LLM reasons over text, emits ffmpeg EDL
  • Optional timeline_view composites for cut decisions

The LLM never watches — it reads and edits. Perfect for launch cuts and filler removal (Fable 5 launch pipeline); wrong tool for "summarize this documentary's visual motifs."

Pairing: Run crv for research Q&A; run video-use when you need final.mp4.


Solution 4 — DIY ffmpeg + Whisper

Minimal version without crv:

bash
# Scene frames
ffmpeg -i input.mp4 -vf "select='gt(scene,0.3)',showinfo" -vsync vfr frames/%04d.jpg

# Audio
whisper input.mp4 --model medium --output_format txt

You lose sliding-window dedup, manifest generation, and URL fetch — but keep air-gapped control. Reasonable for one-off internal compliance reviews.


Solution 5 — Video VLMs and structured extraction

For camera feeds and agent loops ("what changed since last frame?"), small video VLMs like Marlin 2B on NemoStation target structured outputs — not consumer YouTube Q&A.

Use when building products, not when a marketer wants a one-off summary of a webinar.


Cost math — why prep pays off

Naive approach: 30 fps × 60 sec × 1,500 tokens ≈ 2.7M tokens/minute of vision — unusable.

crv on a 8-minute talk (illustrative):

table · 2 cols
StageOutput
Scene + floor extraction~90 raw frames
Dedup at threshold 8~25–40 kept frames
Transcript~2,000 words (~2,500 tokens)
Vision tokens (varies by resize)~40k–100k total

You trade minutes of local ffmpeg for orders-of-magnitude fewer vision tokens — the right trade for token budget planning.

table · 3 cols
Cost lineLocal crvGemini native upload
Tooling$0 (MIT)API usage
ComputeYour CPU/GPU for WhisperGoogle-side
PrivacyNo video leaves diskVideo uploaded
LLM billLower contextHigher if re-sending frames

Which solution should you pick?

table · 2 cols
Your jobPick
"Summarize this YouTube lecture"Gemini native or crv + any LLM
"Find when the UI bug appears"crv (scene frames)
"Cut ums and ship launch video"video-use
"Compliance — air-gapped"DIY or crv offline
"Build a video-watching agent product"Marlin / custom VLM

Limitations (honest)

  • crv is young — v0.1.x, no formal releases yet; verify on your content types before production pipelines.
  • Whisper errors — domain jargon and overlapping speakers still hurt; embedded subtitles beat re-transcription when available.
  • LLMs hallucinate on sparse frames — ask for frame filenames as citations in answers.
  • Copyright — only process content you have rights to; --cookies is for your authenticated access, not credential sharing.
  • No replacement for human review on legal, medical, or safety-critical video.

Related Reading

  • Skyroot Vikram-1 Mission Aagaman — summarize the 2+ hour launch livestream
  • video-use: Edit Videos With Claude Code
  • Marlin 2B — Video VLM for Structured Information
  • Gemini Omni Flash — Video Generation
  • Token Budget Planning for Agent Loops
  • Loop Engineering for Long-Running Agents
Weekly digest3.5k readers

Catch up on AI

Curated AI updates on agents, skills, and MCP — delivered to your inbox. Unsubscribe anytime.

Tool versions accurate as of July 3, 2026. claude-real-video: github.com/HUANGCHIHHUNGLeo/claude-real-video. Always verify current Gemini sampling defaults in Google AI documentation.

Spotted something out of date? Let us know.
Yash Thakker

Written by

Yash Thakker

Yash is an AI expert with over 300K learners. Join his workshops →

Related posts

Jun 27, 2026

What Is Generative AI? The Complete Beginner Guide for 2026

Generative AI is the technology behind ChatGPT, Midjourney, and GitHub Copilot — AI that creates new content rather than just analyzing existing data. This foundational guide explains what it is, how it works in plain English, and how to start using it practically, even if you have zero technical background.

Jun 15, 2026

GPT-5.5, Claude Opus, Gemini vs Their Best Local Open-Source Alternatives (2026)

The open-source model landscape in 2026 has closed the frontier gap to single digits on most benchmarks. This guide matches each major closed-source model—GPT-5.5, Claude Opus 4.8, Claude Fable 5, Gemini 3.1 Pro, o3, GPT-4o—with its strongest open-weight local alternative, with real benchmark numbers, true cost comparisons, and honest notes on where proprietary models still hold an edge.

Aug 8, 2026

OpenJDK Bans AI-Generated Code From Community Contributions

On August 3, 2026, The Register reported that Oracle's OpenJDK project published an Interim Policy on Generative AI banning any LLM-generated content from community contributions — a stricter line than GCC's or Rust's AI rules, and a striking contrast with Oracle leadership's public enthusiasm for AI-written code internally.