Initializing... drag & drop files here
Supports: WEBP
WebP is Google's still and animated image format (announced September 2010, now supported by browsers covering ~96% of users). MJPEG (Motion JPEG) is a video codec where every frame is stored as a complete, independent JPEG — no inter-frame prediction, no GOP, no keyframe gaps. Wrapping WebP frames into an MJPEG stream gives you a video that any frame editor, dashcam analyzer, or surveillance NVR can scrub through with single-frame precision.
multipart/x-mixed-replace MJPEG over HTTP is the simplest possible "live camera" feed, supported by Chrome, Firefox, Edge and Safari without extra players. Useful for prototypes, robots and lab dashboards.| Property | WebP | MJPEG (Motion JPEG) |
|---|---|---|
| Type | Image (still or animated) | Video codec, intraframe-only |
| Released | September 2010 (Google) | Early 1990s; standardized in RTP RFC 2435 |
| Compression | Lossy (VP8) or lossless; supports alpha | Per-frame JPEG (lossy, no alpha) |
| Frame model | Single image or ANIM chunk with delays | Every frame an independent JPEG keyframe |
| Typical containers | .webp standalone |
.avi, .mov, RTP, Matroska |
| MIME type | image/webp |
video/x-motion-jpeg, image/jpeg (multipart) |
| Compression ratio | 25-35% smaller than JPEG at equal quality | ~10:1 to 20:1; larger than H.264 by 5-20× |
| Browser playback | ~96% of users (Chrome, Edge, Safari, Firefox) | Native in all major browsers via multipart/x-mixed-replace |
| Best for | Web delivery, animated stickers | Frame-by-frame edit, surveillance, machine vision |
| Preset | Approx. JPEG quality | Use case | File size (vs Very High) |
|---|---|---|---|
| Very High (Recommended) | ~95 | Editing intermediates, archive, microscopy | 1.0× (baseline) |
| High | ~85 | Surveillance retention, NLE proxies | ~0.55× |
| Medium | ~75 | Web preview, embed in slide decks | ~0.30× |
| Low | ~60 | Quick share, draft review | ~0.18× |
Sizes are typical for natural images; flat graphics and screenshots compress further. Even at Very High, MJPEG output is several times larger than H.264 in MP4 — that is the cost of frame-independence.
MJPEG stores every frame as a full JPEG with no inter-frame compression, so a 30 fps clip is essentially 30 JPEGs per second. Modern codecs like H.264 only fully encode keyframes (typically every 1-10 seconds) and store the rest as deltas. Expect MJPEG files to be 5-20× the size of equivalent H.264 output, which is by design — the format trades size for frame independence and decode simplicity.
Yes. Each ANIM chunk in the animated WebP becomes one JPEG frame in the MJPEG stream, in order. The per-frame display duration you set ("Image Duration") replaces the WebP's own ANIM delay — set it to 1/24, 1/30 or 1/60 second to get true motion playback at 24, 30 or 60 fps respectively.
xconvert writes MJPEG into an .mjpeg raw stream by default. Most players (VLC, ffplay, MPV) auto-detect the codec. For Windows Media Player and many NLEs you'll want it in an AVI container — use MJPEG to AVI for a clean container swap with no re-encoding.
No. JPEG (and therefore MJPEG) has no alpha channel. Any transparent pixels in your WebP will be flattened against the "Background Color" you choose (default black). Pick white or a chroma-key green if you need to composite the result later, or keep the alpha by exporting to a format that supports it like WebP to MOV with a codec that carries alpha.
VLC, QuickTime Player, ffplay/MPV, Windows Media Player and most browsers (via multipart/x-mixed-replace). On the editor side: Adobe Premiere Pro, DaVinci Resolve, Final Cut Pro, Avid Media Composer and Vegas Pro all decode and timeline-scrub MJPEG without transcoding. That native support is the main reason editors still hand each other MJPEG dailies.
Yes — that's MJPEG's headline advantage. Because every frame is a keyframe, you can cut between any two frames losslessly. xconvert's MJPEG trimmer does this without re-quantizing the JPEG data, so your trimmed clip is bit-identical to the source on the surviving frames.
No. Those platforms re-encode everything to H.264/H.265 anyway, and they impose size and length caps (Instagram Reels accepts up to 4 GB; TikTok's mobile uploader caps around 287 MB on iOS while the web uploader allows several GB). An MJPEG file balloons quickly — even at modest resolutions, a one-minute clip easily exceeds 500 MB. For social uploads, convert your WebP frames straight to MP4 via WebP to MP4 and skip the MJPEG round-trip.
Usually yes if the device records MJPEG/AVI itself — feed the file through MJPEG to AVI first and match the camera's frame rate (often 15, 25 or 30 fps). Some NVRs reject files whose internal stream metadata doesn't match the camera's recorded headers exactly; in that case import via the NVR's "external clip" workflow rather than placing the file directly in its storage folder.
XConvert processes files on its servers and deletes them automatically after a few hours. For very large batches, split your input or use the "Video per image" merge strategy to avoid building one giant in-memory frame buffer.