Video Frame Extractor, Export Still Frames from MP4, WebM & MOV
Drop an MP4, WebM, MOV or MKV and pull out crisp still images, sample the whole clip at a frame rate you choose, or grab specific timestamps down to the second. Frames are decoded with your browser's own video engine and rendered to PNG or JPEG, so extraction is instant, private, and needs no plugin or upload.
What is the video frame extractor?
GigAI Video Frame Extractor captures exact frames from a video as PNG or JPG in your browser - step to the moment, grab the frame at source resolution, nothing uploaded. Our thumbnail workflow pairs it with the Image Compressor for web-ready stills.
Video Frame Extractor turns a video into a set of still images entirely on your device, and unlike most tools in a video toolkit, it never loads FFmpeg or any heavy engine. It works by loading your clip into a hidden HTML5 `<video>` element, seeking to each moment you want, and drawing that frame onto a `<canvas>` that's encoded to a PNG or JPEG. That's why it feels instant: there's no ~31 MB WebAssembly download and no transcoding pipeline, just the browser's native decoder doing exactly what it already does to play the video. You choose one of two modes. In frame-rate mode you set a sampling rate (say 1 frame per second, or 4) and the tool walks the whole clip grabbing evenly spaced stills, which is perfect for contact sheets, dataset creation or scrubbing a recording for the one moment that matters. In timestamp mode you type an exact list of times (in seconds, or mm:ss) and it grabs only those, ideal when you already know you want the frame at 0:03 and 0:17. Either way you preview every extracted frame in a responsive grid, download any single image, or bundle them all into a ZIP with one click. You also control the output format (PNG for pixel-perfect stills, JPEG for smaller files) and an optional max size that downscales the longest edge to keep a large batch light. Because everything runs locally, a confidential recording, an unreleased render or a private clip never leaves your machine. There is no server to store or see it. The tool is honest about its real limits: browser seek precision isn't frame-exact on every codec, so a requested time may land on the nearest decodable frame. Very high sampling rates on a long clip produce a lot of images and take proportionally longer, and DRM-protected or exotically-encoded files that your browser can't play also can't be sampled. For everything a browser can decode, though, it's the fastest, most private way to get stills out of a video.
- Difficulty:
- Medium
- Typical time:
- ~1–2m
- Processing:
- 100% browser processing
Last updated
How to use the video frame extractor
- 1
Drop your video
Drag an MP4, WebM, MOV or MKV onto the workspace, or click to browse. The clip is probed locally for its duration and dimensions: nothing is uploaded.
- 2
Pick a mode
Choose sampling by frame rate (evenly spaced stills across the whole clip) or by exact timestamps (a list of times you type). Switch anytime before extracting.
- 3
Set format & options
Pick PNG or JPEG, set your frame rate or timestamp list, and optionally cap the longest edge so a large batch of frames stays light.
- 4
Extract & preview
Click Extract frames. A progress bar tracks the grab and every frame appears in a preview grid with its timestamp, usually in just a few seconds.
- 5
Download or ZIP
Save any single frame, or download all of them as one ZIP. Reset to try a different rate, timestamps or format on the same clip.
What Video Frame Extractor includes
Instant. No engine to load
Unlike heavier video tools, this one never downloads the ~31 MB FFmpeg core. Frames are grabbed with your browser's own `<video>` decoder and a canvas draw, so a batch of stills appears in seconds.
Sample by frame rate
Set a frames-per-second rate (1, 2, 4 or more) and the tool walks the entire clip capturing evenly spaced stills. Great for contact sheets, review scrubbing and building image datasets.
Grab exact timestamps
Already know the moments you want? Type a list of times in seconds or mm:ss and get only those frames. No wading through a full sample when you just need 0:03 and 0:17.
PNG or JPEG, your call
Export pixel-perfect PNG stills for editing, or JPEG for a much smaller batch. An optional max-size caps the longest edge so a big grab of frames stays manageable.
Download one or ZIP them all
Save any single frame from the preview grid, or bundle every extracted image into a single ZIP with one click. The archive is built in the browser, nothing round-trips a server.
100% private, on your device
Your video is decoded locally and never uploaded. Pull frames from an unreleased render, a confidential recording or a personal clip, close the tab and every frame and object URL is gone.
Why use our video frame extractor
Faster than any transcoder for stills
Because grabbing a frame is just a seek and a canvas draw, there's no WASM core to fetch and no transcode to wait on. For getting images out of a video, this is the quickest path there is.
Exactly the frames you need
Two modes cover both jobs: sweep the whole clip at a set rate for a contact sheet, or target precise timestamps when you already know the moment. No dumping thousands of frames you'll throw away.
Keep private footage private
Nothing is uploaded, so an unreleased cut, a medical recording or a client's video is sampled entirely on your machine, there's no third-party server that ever sees a single pixel.
No install, no watermark, no sign-up
Get clean PNG or JPEG stills without desktop software, an account, or a logo stamped on your images. Just a browser tab you can close when you're done.
Built for the way you work
From quick one-off fixes to daily workflows, see how people put this tool to use.
- ML / Data engineer
Build an image dataset from footage
Sample a recording at a steady frame rate to generate a labelled set of stills for training or annotation, done locally, so proprietary or sensitive footage never leaves your machine.
- Video editor / Colorist
Pull reference stills for grading
Grab exact frames at the timestamps you're matching, export as PNG to keep every pixel, and drop them straight into a grading or compositing reference board.
- Support / QA
Capture the exact frame a bug appears
Type the timestamp where a glitch shows up and export that single still to attach to a ticket, clearer and lighter than an entire video, and precise to the moment.
- Creator / Social
Find the perfect thumbnail frame
Sweep a clip at a low frame rate to see a contact sheet of candidate stills, then download the one that reads best as a cover image or post thumbnail.
Supported formats
Accepts MP4, WebM, MOV, MKV and M4V, and produces PNG, JPEG and ZIP, all processed locally in your browser.
- MP4
- WebM
- MOV
- MKV
- M4V
- OGV
- PNG
- JPEG
- ZIP
Frequently asked questions
Recommended tools
Video to GIF
Turn a video into a high-quality animated GIF right in your browser. Pick a start, duration, frame rate and width, get a two-pass palette for clean color, then preview and download. Nothing is uploaded.
Video Trimmer
Cut and trim video online in your browser, drag a visual timeline to set exact start and end points, preview the selection, and download the clip. No uploads, no account, no watermark.
Video Compressor
Compress video in your browser with FFmpeg, shrink MP4, MOV, WebM and MKV files with a simple quality slider, see the exact bytes and percentage saved next to a live preview, then download. Nothing is uploaded.
Extract Audio from Video
Pull the audio track out of any video and save it as MP3, WAV, AAC, M4A or OGG, right in your browser. Drop an MP4, MOV or WEBM, pick a format, preview and download. Nothing is uploaded.
Video Thumbnail Generator
Grab a still frame from any video at the exact second you choose and save it as a PNG or JPG. Scrub, capture, download, instant, no upload, and no FFmpeg engine to wait on.
GigAI Fit
Tell GigAI the maximum size you need and it works out how to get there, images, PDFs, video and audio, all compressed in your browser.
Common problems, solved
Hit a snag? Here are quick fixes for the issues people run into most.
The video won't load or the preview stays empty.
The tool can only sample what your browser can decode. If the clip is DRM-protected or uses an unusual codec, it also won't play in a normal video element. Convert the source to standard MP4 (H.264) first, then try again.
A grabbed frame looks slightly off from the time I asked for.
Browser seeking returns the nearest decodable frame, which depends on the codec's keyframe spacing. It's usually very close. If you need a specific instant, try a couple of neighbouring timestamps and pick the exact one from the preview grid.
The tab slows down or runs out of memory during a big batch.
Each extracted frame is decoded and held for preview until you reset. Lower the sampling rate, switch to JPEG, set a max-size cap, or use timestamp mode to grab only what you need: then download the ZIP and reset to free memory.
The ZIP is missing frames or the download didn't start.
The ZIP is assembled in the browser after extraction finishes, wait for the grid to fully populate before clicking Download all. If a browser blocked the download, check for a blocked-popup prompt and allow downloads from this site.
Get the most out of it
Use timestamp mode when you already know the moments you want, it's instant and avoids generating stills you'll only delete.
For contact sheets, a low sampling rate like 1 fps gives a readable overview of a whole clip without an overwhelming number of images.
Pick PNG when frames go into editing or a dataset. Switch to JPEG plus a max-size cap for large batches you'll share or upload elsewhere.
Type timestamps as mm:ss (e.g. 1:23) or plain seconds (e.g. 83). Both are accepted, so use whichever you have on hand.
Extracting thousands of frames? Do it on a desktop browser and prefer JPEG so the tab's memory isn't overwhelmed by the preview grid.
What's new
Recent updates and improvements to the video frame extractor.
Initial release, instant in-browser frame extraction via native `<video>` + canvas (no FFmpeg), with frame-rate and timestamp modes, PNG/JPEG output, a preview grid, per-frame download and one-click ZIP.
Added a max-size cap to downscale large batches, mm:ss timestamp parsing, and clearer honesty about browser seek precision and DRM/codec limits.
Improved memory handling and object-URL cleanup for very large frame grabs, and sharpened progress reporting across long clips.
Keep exploring
Related tools
Problems we solve
Definitions
From the blog
Explore categories
Compare formats
Common tasks
Your privacy is built in
Your video is decoded and sampled entirely in your browser using the native HTML5 video and canvas APIs. It is never uploaded to any server, and no FFmpeg engine is ever loaded. Frames are drawn locally, previewed via in-memory object URLs, and (optionally) zipped on your device. Nothing is stored, logged or transmitted, so you can safely extract frames from confidential recordings, unreleased renders and personal clips. Close the tab and every frame and preview URL is released.
- Runs in your browser
- No uploads
- Nothing stored
Ready to try the video frame extractor?
Free, private and instant. Video Frame Extractor runs right in your browser.