About this tool

What is the Shot Extractor?

Drop a video file and the tool plays it through once at up to 16x, scoring every frame the decoder presents, then finds the cuts. Detection is adaptive: a cut is a frame whose difference score spikes against its own neighbourhood, not one that clears a global threshold. That matters because a scene score scales with how much light is in the picture, so a fixed bar misses cuts in dark, moody footage and invents them in bright busy footage.

Two things to take away. FRAMES gives one still per scene, kept or dropped, exported at full resolution. SHEETS gives one contact sheet per scene with every panel numbered and time-stamped in reading order, plus a header saying which film, which scene, and at what density it was sampled — so the sheet still makes sense as a standalone JPEG weeks later.

Everything runs in your browser. The file is read off your disk by the browser's own decoder and every frame is composited on a canvas in the tab. Nothing is uploaded and nothing is stored.

Local video files only. YouTube links can't work here: reading a frame means reading the video stream, and YouTube serves neither its watch page nor its player API with the CORS header a browser needs to read them, so the pixels are unreachable from any web page without a server in the middle. Download the video first, then drop the file in.

FAQ · SHOT EXTRACTOR

Questions about the Shot Extractor

Does my video get uploaded?

No. The browser decodes the file directly off your disk via an object URL, and every frame is drawn to a canvas in the tab. No bytes are sent anywhere, nothing is stored, and the tool works with your network disconnected.

Can I paste a YouTube link?

No, and not because it hasn't been built. Extracting a frame means reading the video stream; getting the stream URL means reading YouTube's watch page or player API, and neither sends the CORS header a browser requires to read a cross-origin response. The storyboard sprites behind the scrub bar are signature-gated and return 403 without a token that only that same blocked response carries. Any site that does offer this is running a server that downloads the video for you. Download it yourself and drop the file in.

What's the difference between Strict, Medium and High?

How readily a frame counts as a cut. Strict wants a strong spike and catches hard cuts only; High catches dissolves and whip pans but will occasionally split a busy shot. The scan stores every frame's score, so switching tiers re-derives the cut list from memory in milliseconds — it never re-reads the file.

How large a file can it handle?

There's no upload limit because there's no upload. The practical ceiling is your machine's decoder and RAM — multi-gigabyte 4K files work, they just take longer to scan. Frame differences are measured on a 128x72 downscale, so a 4K file costs about the same to score as a 720p one.

Why does it say frames were dropped?

The scan plays the file at up to 16x and takes whatever the decoder presents; on a slower machine or a heavy codec some frames are skipped. Detection still works — it compares each frame to its own neighbourhood, so a sparser stretch raises its own baseline — but cuts closer together than the sampled interval can merge. The tool tells you the real sampled rate rather than staying quiet about it.

Which formats work?

Whatever your browser can play: MP4/H.264 and WebM everywhere, MOV and HEVC on Safari and most Chrome builds. MKV and AVI depend on the codec inside. If the browser can't decode it, the tool says so instead of failing silently.

Free?

Yes — it runs entirely on your machine, so there's nothing to rate-limit. No signup, no watermark, no cap.

Powered by ReelStack

Help keep this running

Your tip funds servers, models, and the time it takes to ship new tools faster. Set any amount below — every bit helps.