Save the moment, without the player controls
Move the slider until the preview shows the picture you want. The arrow buttons move between indexed source frames; the seconds field accepts a position with milliseconds. Press Capture screenshot, then choose Download PNG or Download JPG. Each button saves one image directly, without an archive.
The displayed timestamp belongs to the source frame actually selected. A request between recorded frames resolves to the frame visible at that moment; three decimal places do not create additional pictures between source frames. Capture again to replace the result after saving any picture you want to keep.
On a phone, use the wide slider for the rough position, then the frame buttons for a small adjustment. Download behavior follows your browser: check its downloads list or Files app. If your browser opens the image, use its image-saving action.
Supported files, local processing and color
Choose a video file already on your device. MP4, MOV, AVI, WebM, MKV, M4V and MPEG-TS files can be opened by this extractor. Container support is not a guarantee for every codec: AVI is limited to Motion JPEG, and other files need a codec your browser can decode. H.264, VP8, VP9, AV1 and HEVC availability depends on the browser and device. Protected video is not supported. This page does not fetch a remote video link.
The same local engine powers the full frame extractor. File reading, decoding and image creation happen here in your browser. There is no account, upload service or saved history. Closing the page ends the session. Page analytics, if loaded, measure visits rather than the contents of your video; see privacy details.
The saved image uses the decoded video's displayed pixel dimensions, not the size of the preview on your screen. PNG uses lossless image encoding; JPG uses the browser encoder at quality 0.95. This canvas path does not promise preservation of original 10-bit or 12-bit data, HDR luminance or color metadata. PNG cannot undo an earlier color conversion. See the color diagnosis guide if the saved picture looks different.
The shared file limit is 2 GB, with an indexing ceiling of 2,000,000 source frames. There is no fixed duration limit. This page keeps one captured picture in two encodings and rejects it if their combined encoded data exceeds 200 MB. Device memory may run out sooner; begin with a short clip on a phone. A current browser with local video decoding is required.
One clip, three moments: saved-file measurements
Test setup: Tencent Cloud CVM; Windows 11 Pro 10.0.26300; desktop Google Chrome 155.0.8059.40; capture date 25 October 2026. The same locally generated SDR H.264 MP4 was loaded into each tool: 640 × 360 pixels, three seconds, two source frames per second. We saved the images around zero, one and two seconds using each site's download controls.
| Tool / moment | Dimensions / pixels | Saved file size | Pixel comparison | Color values |
|---|---|---|---|---|
| PickVideoFrame PNG 0.000 s | 640 × 360 230,400 pixels | 58,041 bytes | 0 different pixels MAE 0.000 | ΔRGB (0.000, 0.000, 0.000) |
| PickVideoFrame JPG quality 0.95 0.000 s | 640 × 360 230,400 pixels | 26,390 bytes | 229,317 different pixels MAE 0.928 | ΔRGB (-0.302, -0.995, -0.491) |
| Frame Extractor 0.000 s | 640 × 360 230,400 pixels | 59,010 bytes | 230,243 different pixels MAE 8.509 | ΔRGB (-0.042, 1.045, 0.000) |
| VidShift 0.000 s | 640 × 360 230,400 pixels | 59,010 bytes | 230,243 different pixels MAE 8.509 | ΔRGB (-0.042, 1.045, 0.000) |
| PickVideoFrame PNG 1.000 s | 640 × 360 230,400 pixels | 59,731 bytes | 0 different pixels MAE 0.000 | ΔRGB (0.000, 0.000, 0.000) |
| PickVideoFrame JPG quality 0.95 1.000 s | 640 × 360 230,400 pixels | 26,621 bytes | 229,196 different pixels MAE 0.919 | ΔRGB (-0.332, -0.996, -0.466) |
| Frame Extractor 1.000 s | 640 × 360 230,400 pixels | 60,997 bytes | 230,269 different pixels MAE 8.462 | ΔRGB (-0.070, 1.167, 0.000) |
| VidShift 1.000 s | 640 × 360 230,400 pixels | 60,997 bytes | 230,269 different pixels MAE 8.462 | ΔRGB (-0.070, 1.167, 0.000) |
| PickVideoFrame PNG 2.000 s | 640 × 360 230,400 pixels | 63,030 bytes | 0 different pixels MAE 0.000 | ΔRGB (0.000, 0.000, 0.000) |
| PickVideoFrame JPG quality 0.95 2.000 s | 640 × 360 230,400 pixels | 27,870 bytes | 229,150 different pixels MAE 0.942 | ΔRGB (-0.334, -0.997, -0.480) |
| Frame Extractor 2.000 s | 640 × 360 230,400 pixels | 64,988 bytes | 230,265 different pixels MAE 8.454 | ΔRGB (-0.075, 1.187, 0.000) |
| VidShift 2.000 s | 640 × 360 230,400 pixels | 64,988 bytes | 230,265 different pixels MAE 8.454 | ΔRGB (-0.075, 1.187, 0.000) |
Frame Extractor displayed 0.052, 1.072 and 2.061 seconds for its three requests; VidShift displayed 0.0, 1.0 and 2.0. Our page displayed source times 0.000, 1.000 and 2.000. The clip holds each picture for half a second. These timings are retained rather than presented as identical precision. The two competitors' corresponding PNG files have identical hashes in this test, although their labels differ.
Measurement method: decode every saved image to RGB24 with FFmpeg 6.1.1. Pixel count = width × height = 640 × 360 = 230,400. A different pixel has at least one unequal RGB channel. MAE = sum of absolute RGB channel differences ÷ (width × height × 3); ΔRGB is each signed channel-difference sum ÷ (width × height). Values are on the decoded 0–255 channel scale and rounded to three decimal places. File sizes are exact file lengths, not video bytes or archive sizes. The reference PNG has zero difference by definition, which is not evidence that it is more accurate.
Color finding: the files do differ numerically; the table reports those shifts instead of declaring a winner. Colorimetric accuracy, monitor appearance, original HDR fidelity and physical-phone decoding are not tested. This single synthetic SDR clip cannot establish color behavior for other videos, codecs or devices. The JPG rows measure our default lossy encoding against our PNG; competitor JPG exports are not tested.
Download the test video · Full measurements and saved-file hashes. Comparison tools: Frame Extractor and VidShift. The source was generated locally with FFmpeg's testsrc2 filter; no customer footage was used.
What this changes when choosing a screenshot: matching dimensions and timestamps is only the first check. In this run both competitors wrote larger PNG files, yet their corresponding PNG pixels matched one another. Their byte counts alone therefore do not explain the difference from this page's rendering. Keep a saved reference image when color matters, and compare actual pixels before attributing a change to PNG compression.
Video screenshot questions
How do I take a screenshot of a video online?
Open the file above, locate the image in the preview and capture it. Save the PNG or JPG underneath. You do not need to put the player in full screen or crop away its controls.
Can I save a video frame as an image at its original size?
The export uses the decoded frame dimensions, even when the preview is reduced to fit a phone. The file's available detail still comes from the video; the tool does not upscale it.
Why does a screenshot from video show a nearby timestamp?
A video has recorded presentation times. The requested millisecond may fall between them, so inspect the displayed source timestamp and use the previous or next frame control if the neighboring picture is better.
Which download should I keep?
Use PNG when you want to avoid another lossy image-encoding step. Try JPG when a smaller photographic image is useful, and inspect the saved result. The comparison here records one clip and cannot predict another file's size or appearance.
Need more than one moment?
Use the frame extractor for timed sequences. The image extraction walkthrough covers a completed multi-image download, while PNG vs JPG explains a separate output-format test.