Spoiler: ChatGPT can't watch videos. Paste a YouTube link and it reads the transcript — not one frame of the picture. Here's the 2-command fix.
Paste a YouTube link into ChatGPT and it fetches text: the title, the description, the captions. It has not seen a single frame. Ask it "what's on screen at 0:42?" and it will guess from the words — confidently, and often wrongly.
Upload a video file directly and you hit the same wall: ChatGPT doesn't ingest video. Claude won't take a video file at all. Even Gemini, which can read video natively, sends your file to Google and samples frames at a fixed interval (1 fps by default), so fast cuts slip past between samples.
The fix isn't a bigger model. It's giving the model what it can already read: the frames that matter, plus the transcript.
claude-real-video (short name: crv) is a free, MIT-licensed command-line tool with 1.2k+ GitHub stars. Point it at a URL or a local file and it:
MANIFEST.txt that tells the model how to read the whole packageAll processing runs on your own machine — the source video never gets uploaded. Only what you later paste into ChatGPT goes to OpenAI.
# macOS (Windows: winget install Gyan.FFmpeg / Linux: apt install ffmpeg)
brew install ffmpeg
pip install "claude-real-video[whisper]"
# YouTube, Instagram, TikTok links or a local file all work crv "https://www.youtube.com/watch?v=..." → crv-out/frames/*.jpg + transcript.txt + MANIFEST.txt
Open a new ChatGPT conversation, drag in the frames (or the 3x3 contact sheets — see below) together with transcript.txt, and prompt:
These are the keyframes and transcript extracted from a video. 1. Summarize what the video is about 2. Outline its structure 3. Tell me what happens visually that the transcript doesn't mention
From here, ask anything — it's now answering from the actual picture, not a text summary of one.
crv "https://youtu.be/..." --grid --why "explain the editing structure"
--grid tiles consecutive keyframes into 3x3 contact sheets, so ChatGPT reads a sequence instead of scattered stills — and you attach far fewer images. --why writes your question into the manifest so the analysis focuses on what you care about.
| fixed-interval sampling | claude-real-video | |
|---|---|---|
| Frame selection | every N seconds | scene-change detection + density floor |
| Static slide (10 min) | ~600 near-identical frames | collapses to 1 |
| Fast-cut reel | misses frames between samples | catches each visual change |
| Repeated shots (A-B-A cuts) | sent again every time | each shot sent once |
| Where processing happens | often someone's cloud | your machine |
Not directly. It reads a YouTube link's transcript and metadata — text, not pixels. Extract keyframes + transcript with crv and it can genuinely analyze the visuals.
No. crv runs entirely on your machine. Only the frames or text you choose to paste into ChatGPT afterwards go to that provider.
Yes — the output is plain images and text, which every major LLM reads. See the companion guide on Claude video analysis.
Keyframes tell a model what's on screen, not how it moves. For camera-move classification, cuts-per-minute rhythm, and a timestamped gesture/emotion timeline, that's the paid add-on crv Pro ($19 one-time).