How the Video Frame Extractor Works

Every tool on this site runs in your browser. When you choose a file, the page reads it from your disk, decodes the frames and creates the images on your own device. Here is what happens and what it means for accuracy and privacy.

Reading the file

A video file is a container (MP4, MOV, WebM or MKV) that holds the compressed video plus an index of every frame: where its data is in the file and when it should be shown. The tool reads that index first, in a background worker, using small slices of the file. This is why a 2 GB file opens as quickly as a small one: only the index and the frames you ask for are read, and the file is never copied in full into memory.

From the index the tool knows the exact number of frames and each frame’s presentation time, including videos with a variable frame rate and videos whose frames are stored out of display order (B-frames). Frame numbers on this site count from 1 in display order.

Decoding frames

Frames are decoded with WebCodecs, the browser’s built-in video decoder interface, which is available in current Chrome, Edge, Safari and Firefox. Decoding starts from the nearest keyframe before the frame you want and runs forward to it, so the image is the real frame and not whatever a player happened to show. The picture is drawn onto a canvas at full resolution, rotated upright for portrait phone videos, and encoded as PNG, JPG or WebP by the browser.

GIF files are decoded by our own code, which follows each frame’s disposal method so frames look the way they play.

When frames are approximate

If the browser has no WebCodecs support, or cannot decode a particular codec with it, the tools fall back to the browser’s video player: they seek to each time and copy the picture. Seeking can land a frame early or late, so these results are marked with “~” before the frame number and time. Which codecs work depends on the browser and device; H.264 MP4 and VP9 WebM are the most widely supported, while HEVC (H.265) and some professional formats are not available everywhere. For files a browser cannot read, the guide to extracting frames on any device explains how to use ffmpeg.

Privacy

Your video never leaves your device. The page makes no network requests with your file: the only requests after the page has loaded are anonymous analytics events, which carry no file names or content (see the privacy policy). Once loaded, the tools keep working without an internet connection.

Open-source licenses

Our own code is not open source at this time.

Last updated October 25, 2026.