Initializing... drag & drop files here
Supports: OGV
.ogv is the video profile of Xiph.Org's Ogg container — the extension RFC 5334 assigns to the video/ogg media type — and the picture inside is usually Theora, Xiph's royalty-free lossy video codec derived from On2's VP3. This tutorial shows you how to pull one still frame at an exact timestamp out of that file, or a whole evenly spaced sequence of frames, and save the result as JPG.
The important part is the timestamp. Frame Selection opens on "Specific Frame" with the Time (seconds) box set to 0, and on real footage second zero is very often a black frame, a fade-in, or a title card. If you convert without touching that box, a blank JPG is the expected result, not a failure.
.ogv onto the page or click "Add Files" to browse for it. You can queue several clips and run them all with the same settings.12.5 lands halfway through the thirteenth second. Switch to "Multiple Screenshots" and set a Capture Rate instead if you want a sequence..jpg or .jpeg.Frame Selection is a two-mode control, and picking the wrong mode is the single most common reason people end up re-running this conversion.
2.100 really does mean two seconds and one hundred milliseconds in. Use this for a poster image, a thumbnail, or one clean grab out of a long clip.0.1s (ten stills a second) down to 10 seconds per frame. It defaults to one second per frame. A five-minute clip at one second per frame is 300 JPGs, so pick a slower rate for long sources unless you genuinely want every one of them.One pipeline detail worth knowing, because it explains what the quality controls actually touch: our converter decodes the chosen frame to a lossless PNG first, then encodes that PNG to JPG. The Quality Preset therefore governs only the final JPG encode — it never degrades the frame grab itself. The seven presets map onto the standard JPEG quality scale like this:
| Quality Preset | JPEG quality | Typical use |
|---|---|---|
| Highest | 100 | Archival still, or a frame you will edit further |
| Very High (Recommended) | 95 | Default; visually indistinguishable from the frame |
| High | 90 | Web-ready still with a smaller file |
| Medium | 80 | Blog images, previews |
| Low | 70 | Contact sheets, dense sequences |
| Very Low | 60 | Space-constrained batches |
| Lowest | 50 | Thumbnails where artifacts do not matter |
| Specific Frame | Multiple Screenshots | |
|---|---|---|
| Output | One JPG | One JPG per sampled frame |
| Control | Time (seconds), accepts decimals | Capture Rate, 0.1s to 10s per frame |
| Default | Selected, time 0 |
Capture Rate 1 second per frame |
| Best for | Poster frames, thumbnails, one clean grab | Contact sheets, scanning a clip, finding the best moment |
| Watch out for | Time 0 frequently sits on black or a fade |
Long clips at a fast rate produce hundreds of files |
0 and the clip opens on black, a fade-up, or a slate. Type a timestamp a couple of seconds in and convert again..ogv has already discarded detail; the JPG cannot be sharper than the frame it came from. Raise the Quality Preset to Highest, and if the artifacts sit on text or flat colour, export that frame as OGV to PNG instead — PNG has no ringing around hard edges.A truncated or partially downloaded .ogv may decode only up to the point where the stream stops — if the timestamp you asked for is past that point, there is no frame to grab. Confirm the file plays end-to-end in VLC first. Screen recordings that hold a static slide will produce visually identical stills at every timestamp; that is the content, not the converter. And if the clip is long and you only care about one section, trimming the source with Video Cutter before extraction keeps the upload smaller and the sequence manageable. For other video sources — 35+ of them — Video to JPG is the same extractor with a wider input list.
Because Frame Selection opens on "Specific Frame" with the time set to 0, and second zero of a real clip is frequently black, a fade-in, or a title slate. That is the source, not a decode error. Put a timestamp in the Time (seconds) box — anywhere past the opening — and the frame will have picture in it.
Keep "Specific Frame" selected and type the moment into Time (seconds). The field accepts decimals, so you can land between whole seconds: 7.75 is three quarters of the way through the eighth second. "Multiple Screenshots" is the other mode, and it always produces a sequence rather than a single file.
Work backwards from how many images you want. The dropdown is seconds per frame, so 1 second per frame on a two-minute clip gives 120 stills, while 10 seconds per frame gives 12. Use the fast end (0.1s, ten a second) only on short clips where you are hunting for one specific instant.
A little, and it is worth understanding where. The frame is decoded to a lossless PNG first, so nothing is lost in the grab; the loss happens when that PNG is encoded to JPG. At the default Very High preset that encode runs at JPEG quality 95, which is visually indistinguishable on nearly all footage. What the JPG cannot do is beat the source — Theora already threw detail away when the .ogv was made.
JPG for photographic frames, where slight compression will not show and the smaller file matters. PNG for frames with text, UI, line art, or large flat colour areas, because JPG puts visible ringing around hard edges. The same file converts either way — OGV to PNG is one click away — but set that page's Quality Preset to Highest if you want a true-colour lossless PNG, because the lower presets run a lossy palette quantiser to shrink the file.
Yes, but use the right control. The Preset Resolutions dropdown sets height only and lets the width follow the source aspect ratio, so a 16:9 frame at the 720p preset comes out 1280x720 rather than any fixed pair you might expect from a different source shape. When you need an exact raster, use the Width x Height option and type both numbers.
.ogv play in the browser any more, and does that affect extraction?Browsers have removed the Theora decoder: caniuse records Chrome disabling it by default from version 120 and removing it in 123, Edge from 122, Opera from 106, and Firefox disabling it by default in version 126 — Safari never supported it. That only affects in-browser playback. Standalone decoders in FFmpeg and VLC still read Theora, which is how the frame is decoded here, and the JPG you get back has no dependency on Theora at all.
No. The File extension group offers JPG and JPEG with neither preselected, and both write the same JPEG bitstream — the choice only affects the filename you download. Pick whichever your downstream tool, CMS, or upload form expects.
It is uploaded over an encrypted connection, decoded and converted on our servers, and both the upload and the result are deleted automatically after a few hours. There is no sign-up, no watermark, and files are never shared or made public.