Initializing... drag & drop files here
Supports: APNG, PNG
APNG (Animated PNG) is a lossless animation format with full alpha transparency, while MJPEG (Motion JPEG) is a video format where every frame is stored as a standalone JPEG. Converting APNG to MJPEG turns a web-style animation into a frame-by-frame video that simple editors and some capture hardware handle natively — at the cost of larger files and flattened transparency, since JPEG has no alpha channel.
| Property | Value |
|---|---|
| Standard | Animated extension of PNG, W3C Third Edition (Recommendation, June 2025) |
| Compression | Lossless (DEFLATE), per-frame |
| Color depth | Up to 24-bit color + 8-bit alpha transparency |
| Container | PNG, with acTL/fcTL/fdAT animation chunks |
| Audio | None |
| Native browser support | Chrome, Firefox, Edge, Safari (all modern versions) |
| Best for | Crisp UI animations, stickers, transparent loops on the web |
| Property | Value |
|---|---|
| Standard | Motion JPEG — a sequence of independent JPEG frames |
| Compression | Lossy, intra-frame only (no inter-frame prediction) |
| Color depth | 8-bit per channel, no alpha (transparency is flattened) |
| Container | .mjpeg raw stream; MJPEG can also live inside AVI/MOV |
| Audio | Optional (MP3 added by default here) |
| Typical size | Roughly 5-20x larger than H.264 for similar quality |
| Best for | Frame-accurate editing, surveillance/medical capture, legacy gear |
MJPEG compresses each frame as an independent JPEG and stores no information about what changed between frames. APNG, by contrast, can skip redundant pixels frame to frame and uses lossless DEFLATE. Because MJPEG has no inter-frame prediction, it typically runs 5-20x larger than an H.264 video of similar quality, so the output will usually dwarf the source APNG.
No. JPEG frames have no alpha channel, so any transparent regions in the APNG are flattened against a solid color. That is what the Background Color option controls — pick the color that should show through where the animation was transparent (White by default, but Black or any preset is available).
Yes, some. APNG is lossless, but each MJPEG frame is a lossy JPEG, so fine gradients and sharp edges can pick up mild artifacts. Choosing the "Very High" Quality Preset keeps that loss minimal — in our testing, a short 480p APNG loop at Very High produced frames visually close to the original, just in a much larger container.
If your goal is sharing or storage, convert APNG to MP4 instead — H.264 in an MP4 is dramatically smaller and plays everywhere. Choose MJPEG only when you specifically need every frame to be an independent JPEG: frame-accurate editing, certain camera/capture workflows, or older software that expects Motion JPEG.
The output timing comes from the Image Duration setting, which maps a per-frame display time to a frame rate — for example a 1/30s duration yields roughly 30 fps, while "1 second per frame" produces a slideshow-style 1 fps clip. If you want the MJPEG to match the original animation's pace, pick the duration closest to the APNG's frame timing.
Yes — that is MJPEG's main advantage. Because each frame is a self-contained JPEG with no dependence on neighboring frames, editors can cut, replace, or extract a single frame without re-encoding a group of pictures the way H.264 requires. That property is why MJPEG persists in editing and capture niches despite its size.
Yes. APNG was folded into the official PNG Specification (Third Edition), which the W3C published as a Recommendation in June 2025, formally standardizing 24-bit color with 8-bit alpha animation. So while MJPEG is the older, simpler target here, the APNG source format is current and actively specified.
No. An APNG is a silent image sequence with no audio track, so there is nothing for the converter to carry over — the Motion JPEG output is video only. If you need a soundtrack over the animation, convert here first and add the audio afterward in a video editor.
Yes. When you upload more than one file, the Merge strategy lets you combine them into a single Motion JPEG or write one MJPEG per source. Because every frame stays an independent JPEG either way, a merged file simply plays the animations back to back with no re-encoding penalty between them.