Skip to main content
L
Loopaloo
Buy Us a Coffee
All ToolsImage ProcessingAudio ProcessingVideo ProcessingDocument & TextPDF ToolsCSV & Data AnalysisConverters & EncodersWeb ToolsMath & ScienceGames
Guides & BlogAboutContact
Buy Us a Coffee
L
Loopaloo

Free online tools for developers, designers, and content creators. Your files are processed in your browser and are never uploaded - no accounts required. A few network utilities (like What's My IP and Currency Converter) call public APIs to do their job and say so on their pages.

support@loopaloo.com

Tool Categories

  • Image Tools
  • Audio Tools
  • Video Tools
  • Document & Text
  • PDF Tools
  • CSV & Data
  • Converters
  • Web Tools
  • Math & Science
  • Games

Company

  • About Us
  • Contact
  • Blog
  • FAQ

Legal

  • Privacy Policy
  • Terms of Service
  • Disclaimer

Support

Buy Us a Coffee

© 2026 Loopaloo. All rights reserved. Built with privacy in mind.

Privacy|Terms|Disclaimer
  1. Home
  2. Video Processing
  3. Video Format Converter - MP4, WebM, MOV, AVI, MKV
Add to favorites

Video Format Converter - MP4, WebM, MOV, AVI, MKV

Convert a video between MP4, WebM, OGG, MOV, AVI and MKV, each naming the codecs it really writes and each producing a file that actually plays. One quality dial normalised into four different encoder scales.

Video stays on your deviceMore video processingJump to full guide

Related reading

  • How FFmpeg Runs Entirely in Your Browser10 min read
  • Video Editing in the Browser: Trim, Merge, Convert, and More12 min read

Initializing in your browser…

You might also like

Video Frame Rate Converter - Change FPS Online

Reads your file's real frame rate with FFmpeg, then converts to 24, 30, 60, 120 fps or any custom rate. Frame duplication, blending, or true motion interpolation, with CRF quality control and a verified output readout.

Video Cropper - Crop & Resize Video Dimensions

Cut a rectangle out of every frame, with the selection drawn over the picture itself and held in source pixels. Numeric entry, shape and platform presets, and the even-number rounding H.264 forces printed before it is applied rather than after.

Video Trimmer - Cut & Clip Videos Online

Cut a clip out of a video, choosing whether the cut lands on the exact frame (re-encodes to MP4) or leaves the streams untouched (instant and lossless, but only at a keyframe). The result says which ran and reads the real length back off the file.

Video Format Converter - MP4, WebM, MOV, AVI, MKV: a worked example

The same 2 second clip converted into all six offered containers, one after another.

Input

counter.mp4 640x480 H.264 + AAC
What Video Format Converter - MP4, WebM, MOV, AVI, MKV produces

Output

MP4 and MOV and MKV: H.264 + AAC. WebM: VP8 + Opus. OGG: Theora + Vorbis. AVI: MPEG-4 + MP3

Three of those six produced nothing at all before this pass: WebM crashed the WebAssembly core and OGG and AVI stopped silently, and the three that worked were the three whose command line happened to carry a thread count. WebM is VP8 rather than the VP9 the page used to promise, because the VP9 encoder in this build cannot finish at all, and OGG really is Theora now rather than the VP8 the code was quietly asking for.

What is Video Format Converter - MP4, WebM, MOV, AVI, MKV?

A file extension is a container, not a codec. What people call "an MP4" is an MP4 container holding an H.264 video stream and an AAC audio stream, and the two choices are independent: an MKV can hold the same H.264 and AAC, a WebM holds VP8 or VP9 with Opus, and an Ogg holds Theora with Vorbis. Converting between formats means choosing the container and accepting a codec pairing that container can legally hold. This page now names the pairing it will really write, for one reason: it used to name a different one. The OGG entry said "Theora + Vorbis" while the code asked the encoder for VP8, which is not a combination Ogg is normally used for. There is one list now, the encoder reads it, and the page prints from it. Three of the six formats also produced nothing at all. Measured on 2026-09-07 in the shipped build: MP4, MOV and MKV converted; WebM died with "memory access out of bounds"; OGG and AVI stopped silently after printing their stream mapping. The three that worked were the three whose command line happened to carry a thread count, and the three that failed were the three that did not. Worse, a crash leaves the WebAssembly instance unusable, so the next conversion failed too whatever format it was.

How to use

  1. 1Upload a video. Its real container and codecs are read from the file.
  2. 2Pick a container, or a device preset that chooses one for you.
  3. 3Read the panel: it names the video and audio codecs that will really be written, and the quality value on that encoder's own scale.
  4. 4Pick a quality tier if the default is not what you want.
  5. 5Press Convert, check the result panel, and download.

When to use it

  • Making a file play everywhere

    Convert to MP4. H.264 with AAC is decoded in hardware by every browser, phone and television made in the last decade.

  • Web delivery without licensing

    WebM with VP8 and Opus is royalty free and plays natively in every current browser.

  • An old player or device

    AVI with MPEG-4 and MP3 is a 1992 container with a 1998 codec. Expect roughly twice the size of H.264 at the same quality, which is the price of that compatibility.

  • Archiving

    MKV holds almost any codec and is the usual choice for a personal archive. Browsers will not play it, so keep an MP4 if the file also has to be shared.

Key features

  • Six containers that all actually produce a playable file, which three of them did not before
  • The codec pairing named from the same table the encoder reads, so the page cannot claim one codec and write another
  • One quality dial normalised into four different encoder scales, with the flag and value printed
  • Device presets for YouTube, Instagram, Twitter, iPhone, Android and the web
  • Even frame sizes enforced where the pixel format needs them
  • A result panel with the container, the codecs, the size, the time and a player
  • The exact ffmpeg command shown with every result, and a Cancel button
  • Runs entirely in your browser; nothing is uploaded

Tips & best practices

  • MP4 unless you have a specific reason. It is the only format on this list that every browser, phone and television plays without thinking about it.
  • Read the codec line before converting. It is generated from the same table the encoder uses, so it cannot promise something the file will not contain.
  • Convert once. Each pass through a lossy codec loses detail that cannot be recovered, so go from your original rather than from a previous conversion.
  • If the file also needs to be smaller, use the Video Compressor rather than dropping the quality tier here: it measures a sample of your own footage and tells you the size before you commit.

How it works

The whole transcode happens in your browser through ffmpeg compiled to WebAssembly, and the file is never uploaded. Transcoding decodes the source to raw frames and encodes them again, so any lossy to lossy conversion loses a generation; converting once is fine and round-tripping a file through several formats is visibly worse after a few cycles.

WebM here is VP8 rather than VP9, and that is a measurement rather than a preference. The VP9 encoder in this WebAssembly build cannot complete: with four threads it failed with "memory access out of bounds", with one thread and the realtime deadline it failed the same way, and with one thread and libvpx's default effort it raised "operation does not support unaligned accesses" and had still not finished a two second clip after fifteen minutes. VP8 with Opus finished the same clip in half a second, is an entirely ordinary WebM, and is played natively by every current browser. A format that produces nothing is not a format.

The quality control is one dial across four different scales, which is worth knowing about. H.264 uses CRF from 0 to 51 where lower is better and 23 is the default. VP8 uses CRF from 4 to 63, a different length of scale, and needs a bitrate ceiling alongside it. MPEG-4 Part 2 has no CRF at all: it has a quantiser from 1 to 31, again lower being better. And Theora runs 0 to 10 where HIGHER is better, the opposite direction from all three of the others. The dial is normalised into each encoder's own units and the page prints the flag and the number it landed on, so "Balanced" is CRF 23 for H.264, CRF 20 for VP8, q:v 5 for MPEG-4 and q:v 7 for Theora.

Every output but Ogg is passed through a filter that rounds both frame sides down to an even number, because 4:2:0 chroma cannot store an odd one; Theora can, so it is left alone. Nothing downloads automatically: when the conversion finishes the page shows the container, the codecs, the file size, how long it took, a player for the result and the exact ffmpeg command line.

Frequently asked questions

Why does WebM come out as VP8 rather than VP9?

Because the VP9 encoder in this browser build does not work. Three different flag combinations were tried and all three failed, two with a WebAssembly memory fault and one with an alignment fault after fifteen minutes without finishing a two second clip. VP8 with Opus finished the same clip in half a second and is a perfectly standard WebM that every current browser plays. The page names VP8 rather than promising VP9 and delivering nothing.

Does converting reduce quality?

Yes, once. The source is decoded and encoded again, so a lossy to lossy conversion loses a generation. One conversion is usually invisible at a sensible quality setting; converting the same file back and forth several times is not.

What does the quality setting mean?

It depends on the container, which is why the page prints the number. The four encoders here use four different scales: H.264 CRF 0 to 51 lower is better, VP8 CRF 4 to 63 lower is better, MPEG-4 quantiser 1 to 31 lower is better, and Theora 0 to 10 where higher is better. The dial is translated into each one and the flag and value are shown.

Can I change the container without re-encoding?

Not here. Remuxing is possible in principle when the target container can legally hold the source codecs, but this tool always re-encodes so that the result is guaranteed to be a normal file for its container. The Video Trimmer has a stream copy mode if you need one.

Why is OGG so much larger than MP4?

Because Theora is a 2004 codec and H.264 is not. At comparable quality Theora needs considerably more bitrate. Ogg exists here for old free-software players; there is rarely a reason to choose it otherwise.

Related tools and how they differ

  • Video Compressor - Reduce Video File Size Online: Shrinks file size with a CRF quality slider and a frame size cap, always outputting MP4; use it when the goal is a smaller file, not a new container.
  • Video Quality Adjuster - Change Resolution & Bitrate: Sets a target bitrate or a target file size; use it to hit a spec, not to pick a format.

Further reading

  • How FFmpeg Runs Entirely in Your Browser10 min read
  • Video Editing in the Browser: Trim, Merge, Convert, and More12 min read

Private by design

Video is decoded and re-encoded on your own device. Large files never leave your machine.