Initializing... drag & drop files here
Supports: GIF
.mjpeg stream you can drop straight into Premiere, Resolve, Avid, or VLC.GIF and MJPEG live in different worlds. GIF is an indexed-color image format from 1987 — every frame is capped at 256 colors from a 24-bit palette, compressed losslessly with LZW, and decoded by browsers everywhere. MJPEG (Motion JPEG) is a video format where each frame is a standalone JPEG with full 24-bit color and lossy DCT compression. Converting hands your animation off to tools that expect a real video stream.
ffmpeg -i out.mjpeg frame_%03d.jpg.| Property | GIF | MJPEG |
|---|---|---|
| First released | 1987 (CompuServe) | Early 1990s, formalized in QuickTime mid-1990s |
| Compression | LZW lossless on indexed palette | JPEG (DCT) lossy, per frame |
| Color depth | 8-bit indexed (256 colors per frame) | 24-bit RGB (16.7 million colors) |
| Frame structure | Each frame is a delta to prior frame | Every frame is a full standalone JPEG |
| Typical compression ratio | 4:1 to 10:1 for graphics | 10:1 to 20:1 per frame |
| Transparency | 1-bit (binary on/off) | None |
| Audio | No | No (video-only stream) |
| Native containers | .gif (self-contained) |
Raw .mjpeg, also wrapped in AVI/MOV/MKV |
| Browser playback | Universal since 1993 | Safari, Chrome, Firefox, Edge support MJPEG in <video> for many builds; not guaranteed |
| Cuts at any frame | Possible but tricky (disposal methods) | Native — every frame is an I-frame |
| Best for | Web loops, reactions, social | NLE editing, IP cameras, embedded vision |
| Setting | Use this when | Tradeoff |
|---|---|---|
| Very High preset (default) | Editing master, archival, machine vision | Largest files, near-lossless JPEG |
| High preset | General-purpose video editing | Modest file savings, minor blocking on flat colors |
| Medium / Low preset | Proxy clips, preview-only delivery | Visible JPEG blocking on gradients and text |
| Image Duration 1/24s | Match cinematic 24 fps timing | Standard for film/broadcast |
| Image Duration 1/30s | Match NTSC/web 30 fps timing | Standard for screen capture and US broadcast |
| Image Duration 1–5s | Slideshow from static images | Treats each input as a slide, not a frame |
| Merge images | One continuous MJPEG from several GIFs | Edit-bay friendly, single timeline asset |
| Video per image | One MJPEG per input GIF | Batch processing for asset libraries |
MJPEG has no inter-frame compression — every frame stores a complete JPEG, while GIF stores per-frame palette deltas. For a 5-second 480×270 animation, expect MJPEG to land at 5–15× the GIF size at default quality. That's the trade you make for full color and frame-independent editing. If size matters, lower the Constant Quality slider, drop to a Medium preset, or convert to MP4 or WebM instead, both of which use temporal prediction.
Yes for Premiere and Resolve — both decode MJPEG natively. Final Cut Pro can read MJPEG inside a QuickTime (.mov) container; if you need that, convert to MOV and pick MJPEG as the video codec there. Avid Media Composer also handles MJPEG, though many editors transcode to DNxHD/DNxHR for performance. Adobe documents MJPEG as a supported editing codec in their codec reference.
The Image Duration setting controls output frame timing — it doesn't read the GIF's per-frame delay block from the Graphic Control Extension. If your GIF was recorded at 1/24 second per frame, set Image Duration to 1/24 to preserve speed. For GIFs with variable frame delays (e.g., a long hold on a punchline), MJPEG can't represent that variable timing in a single fixed-rate stream — choose the delay that matches the most common frame.
.mjpeg file?VLC, MPV, and FFplay open .mjpeg directly. QuickTime Player needs the stream wrapped in a .mov container. Most NLEs (Premiere, Resolve, Avid) import raw .mjpeg without complaint. Browsers can sometimes play MJPEG in a <video> tag — Chrome, Firefox, Edge, and Safari decode JPEG, but containerless .mjpeg is not universally guaranteed in the <video> element; for web delivery use MP4.
Yes — that's MJPEG's defining property. ffmpeg -i clip.mjpeg frame_%04d.jpg writes every frame as a numbered JPEG with zero re-encoding (the JPEG bytes already exist inside the MJPEG stream). This is why forensic and medical-imaging workflows pick MJPEG: every frame is provably independent.
Quality Presets are bucketed shortcuts mapped to ranges of JPEG q-scale values. Constant Quality lets you set q-scale numerically — useful when you need a specific target quality (q=2 is near-lossless, q=10 is heavy compression). For most editing handoffs, Very High preset is correct. For archival or color-critical work, use Constant Quality at the highest setting.
No. JPEG (and therefore MJPEG) has no alpha channel. Transparent GIF pixels get filled with the Background Color setting — pick black for cinematic letterbox, white for documents, or match your editing timeline's background. If you need to preserve alpha, convert to WebM with VP9 + alpha, or extract frames as PNGs via GIF to PNG.
Yes. Upload multiple GIFs and pick Merge Strategy. "Merge images" stitches them into a single MJPEG stream in upload order — handy for building a reference reel. "Video per image" produces one .mjpeg per input — better for asset pipelines feeding a CMS or vision dataset. There's no separate batch UI; multiple files is the batch UI.
MJPEG is niche but not dead. Surveillance cameras, industrial machine vision, frame-accurate forensic playback, and many embedded SoCs still default to MJPEG because every frame is independently decodable and a single corrupted frame doesn't take down the rest of the stream. For consumer playback, social, or web delivery, MP4 with H.264 is dramatically smaller and more compatible. Pick MJPEG when you need per-frame independence; pick MP4 when you need bandwidth efficiency.