
GIF to MP4
Turn an animated GIF into an MP4. This parses the GIF89a bytes itself, including disposal method and transparency compositing, then encodes the composited frames through WebCodecs. Browser only; transparent pixels become opaque black, MP4 has no alpha channel.
GIF to MP4 reads the raw GIF89a bytes of an animated file itself, working out each frame's disposal method and transparency before compositing it. The composited pictures then encode into MP4 through WebCodecs. Any pixel left transparent turns opaque black, since MP4 carries no alpha channel at all. This page runs in the browser only.
Questions
Does this handle a GIF built from partial-frame deltas correctly?
Yes. This tool parses the GIF89a bytes itself, including disposal method and transparency compositing, so a GIF whose frames only redraw part of the canvas decodes to the same full frames a browser would display, not the raw per-frame rectangles the file stores.
What happens to transparent pixels?
They become opaque black. MP4 has no alpha channel, so a transparent GIF pixel is composited onto a canvas that starts fully transparent black, and that is what lands in the video rather than the checkerboard a GIF viewer shows.
Which engine handles this, and where can it run?
A GIF89a parser built into this tool reads the source and mediabunny with WebCodecs encodes the composited frames into MP4, so it is browser only. The command line and MCP refuse it and point to the web page.
What size should I expect?
A small source stays small. A 64 by 48 pixel test GIF a little over half a second long produces a correspondingly small MP4 with a real mdat box holding sample data, each frame delay from the GIF becoming its video frame duration.
What is the reverse page?
MP4 to GIF runs the opposite direction, the reverse pair of this one, sampling frames from the video and quantizing them onto a shared palette.