MOV is Apple’s QuickTime container, and it is the format your iPhone records in, the format QuickTime exports, and the format a lot of professional cameras use. Converting one to JPG stills is straightforward roughly ninety percent of the time and mildly frustrating the rest, and the difference comes down to what is inside the file.
This covers the conversion, the specific reason MOV files fail more often than MP4s, and what to do about it.
The conversion
- 1Select your MOV file. Nothing uploads - the browser reads it from disk directly.
- 2Set how many JPG images you want across the duration.
- 3Choose JPEG and adjust the quality slider if you need to. The default of 92 is a sensible balance.
- 4Extract, then download everything as a ZIP.
Try FrameRipper - free, no upload
Extract frames from any video directly in your browser. No sign-up, no file size limits.
Open FrameRipperMOV holds several different codecs
The container tells you almost nothing about compatibility. A .mov file might contain any of these, and they behave very differently.
| Codec | Where it comes from | Browser support |
|---|---|---|
| H.264 | Most exports, older iPhones, Most Compatible mode | Everywhere |
| HEVC / H.265 | iPhone 7+ in High Efficiency mode | Safari yes, Chrome varies, Firefox no |
| ProRes | Professional cameras, Final Cut exports | Nowhere |
| Motion JPEG | Older cameras, some capture devices | Inconsistent |
| Animation / RLE | Legacy motion graphics workflows | Nowhere |
iPhone MOV files
Every iPhone since the 7 records HEVC by default (Settings, Camera, Formats, High Efficiency). It halves file sizes, but browser support is uneven: Safari decodes it reliably, Chrome and Edge depend on the hardware, and Firefox generally cannot. So an iPhone MOV that plays fine on the phone can refuse to load in Chrome on a Windows PC, with nothing wrong with the file.
The quickest fix is to open this site in Safari on a Mac or iPhone. The other routes, including the iOS setting that converts videos to H.264 automatically when you transfer them, are in the iPhone video guide, along with tips for getting sharp stills out of phone footage.
ProRes and professional codecs
If your MOV came off a cinema camera or out of Final Cut, it may be ProRes. No browser decodes ProRes, and none is likely to - it is an editing codec, designed to be fast to scrub and forgiving to grade, at the cost of very large files. Nobody streams it, so no browser has reason to support it.
A ProRes file is easy to spot by size: a minute of ProRes 422 at 1080p runs to roughly 1.5 GB, where the H.264 equivalent is around 100 MB. If your one-minute clip is enormous, that is why.
Transcode to H.264 first. One important detail if the footage is log or 10-bit: apply your colour transform during the transcode. Log footage is deliberately flat and desaturated so it holds grading latitude, and extracted frames will look washed out unless you convert to a normal colour space on the way through. Fixing it afterwards on each individual JPEG is far more work than doing it once.
Why JPG for MOV footage
JPG is the right default here for the same reasons it usually is. It is universally supported, files are small enough to email without thinking, and at quality 92 the difference from lossless is invisible on live-action footage.
The cases where it is wrong are narrow. If you will edit the stills repeatedly, use PNG - every JPEG save re-compresses, and the degradation accumulates. If the MOV is a screen recording rather than camera footage, PNG will likely be both sharper and smaller. And if the stills are training data, PNG keeps compression artifacts out of the signal.
One thing JPG will not do is transparency, but that is not a limitation in practice: neither H.264 nor HEVC can store an alpha channel, so MOV frames are always fully opaque anyway.
Try FrameRipper - free, no upload
Extract frames from any video directly in your browser. No sign-up, no file size limits.
Open FrameRipperMotion JPEG from older cameras
Many compact cameras and webcams from before about 2012 recorded Motion JPEG inside a MOV or AVI. It is an unusual format: every frame is stored as a complete, standalone JPEG, with no compression between frames.
Browser support for it is patchy, so it may not load here. The good news is that you do not need to decode it at all. FFmpeg can copy those JPEGs straight out of the file without re-encoding them, which is faster than any extraction and loses nothing.
Copy every original JPEG frame out of a Motion JPEG file
ffmpeg -i input.mov -c:v copy frame_%04d.jpgIf those files will not open in an image viewer (common with AVI files, whose frames can leave out a table viewers need)
ffmpeg -i input.avi -c:v copy -bsf:v mjpeg2jpeg frame_%04d.jpgThis only works when the video stream really is Motion JPEG. With H.264 or HEVC, the copied files are not real images, so use a normal extraction instead.