Zurück zum Blog
tutorial 2026-06-14

Convert MOV to MP4 in Your Browser (No Handbrake Install, 2026)

Convert MOV to MP4 in Your Browser (No Handbrake Install)

You filmed something on your iPhone, AirDropped it to your laptop, and now you need to attach it to a Slack message, an email, or a Notion page — and the file refuses to play. That .mov extension Apple's camera produces is a perfectly fine video format, but its compatibility outside the Apple ecosystem is patchy: Windows Media Player, most enterprise email clients, several social platforms, and a long tail of legacy software will either refuse to open it or render the audio without video.

This guide explains why MOV and MP4 are so similar yet so different in practice, how to convert between them safely without uploading personal footage, and when you should bother converting at all. We'll cover Ai2Done's MOV to MP4 converter plus the macOS, Windows, and command-line alternatives.

TL;DR

  • MOV and MP4 are nearly identical under the hood — both are container formats that wrap H.264 video and AAC audio.
  • Convert MOV to MP4 in seconds with Ai2Done's converter — it's a lossless re-mux, so quality is byte-identical to the source.
  • No re-encoding needed for 99% of iPhone footage (already H.264 or HEVC inside a MOV container) — the conversion takes ~1 second per GB.
  • For HEVC MOV that won't play on older Windows hardware, you may need to actually re-encode to H.264 — slower but more compatible.
  • Privacy matters: family videos contain faces, locations, and timestamps; do the conversion locally.

Why this is harder than it looks

If MOV and MP4 are "nearly identical," why does conversion exist at all?

The honest answer: MP4 (ISO Base Media File Format) and MOV (Apple QuickTime) literally evolved from the same source. When ISO standardised MP4 in 2001, the spec was based on Apple's QuickTime container format. Both files contain moov (metadata) and mdat (raw video/audio data) atoms structured the same way. A modern MP4 player can usually read a MOV file directly, and vice versa.

What goes wrong in practice is codec compatibility, not container compatibility:

  • A .mov from a 2017+ iPhone using HEVC (H.265) won't play in older Windows Media Player versions because Windows lacks HEVC decoders without a paid extension from the Microsoft Store.
  • A .mov from a 2010 iPhone using older Sorenson codecs won't play on most modern devices because the codecs were abandoned.
  • Some social media uploaders (older versions of Twitter, certain Slack clients, legacy CMS plugins) specifically check the file extension and reject anything not named .mp4.

The conversion you actually need is almost always: change the container from MOV to MP4 without re-encoding the video. This is what FFmpeg calls "remuxing" — it's lossless, fast, and produces a file that plays everywhere MP4 plays.

Method 1: Ai2Done MOV to MP4 (browser-side, lossless remux)

The Ai2Done MOV to MP4 converter does this in your browser using FFmpeg.wasm:

  1. Open /tools/mov_to_mp4 in any modern browser.
  2. Drag your MOV file into the upload area. Files up to several GB work fine; the tool processes them in your browser's RAM.
  3. The tool detects whether the video uses H.264 (will remux losslessly) or HEVC/Sorenson/other (will offer re-encoding).
  4. For H.264 MOV (typical of iPhone 6s and earlier, or iPhones set to "Most Compatible" in Settings → Camera): click Convert, get an MP4 in roughly 1 second per GB of source. Zero quality loss, file size identical.
  5. For HEVC MOV (default of iPhone 7+ shooting in High Efficiency mode): the tool asks if you want to keep HEVC inside MP4 (faster, smaller, but compatibility-limited) or re-encode to H.264 (slower, slightly larger, plays everywhere). Pick based on where you're sending the video.

Everything runs in your browser tab. The MOV file never uploads to a server, including ours.

The single thing to know: lossless remux is essentially instant. If our tool is taking minutes for your file, you've selected re-encoding, which is the right choice for compatibility but ~20-50× slower.

Method 2: macOS QuickTime (built-in, one-button export)

If you have a Mac and only need to convert one or two files, QuickTime Player does this for free without installing anything:

  1. Open the MOV in QuickTime Player (default on macOS).
  2. File → Export As → 1080p (or whatever resolution matches your source).
  3. Save — the output is .mov by default but with H.264 encoding inside, so just rename the extension to .mp4 after saving.

Caveat: this re-encodes the video, which both takes time (real-time playback duration roughly) and loses a small amount of quality. For a quick share where quality doesn't matter much, it's fine. For archive-quality conversions, use the browser tool (lossless remux) instead.

Method 3: FFmpeg on the command line (for the terminal-comfortable)

For developers who already have FFmpeg installed:

# Lossless remux (fastest, no quality loss)
ffmpeg -i input.mov -c:v copy -c:a copy output.mp4

# Re-encode to H.264 (compatibility, slower)
ffmpeg -i input.mov -c:v libx264 -crf 18 -preset slow -c:a aac -b:a 192k output.mp4

The first command is what every "MOV to MP4 converter" online does under the hood when remuxing. The second is what they do when re-encoding for compatibility. CRF 18 is visually lossless; lower it to 16 for archive-quality or raise to 23 for smaller files at acceptable quality.

This is the right answer for scripted, repeated conversions (a Makefile that processes a folder of source footage nightly). It's overkill for "I have one iPhone clip to drop into a slide deck."

How we built the browser converter (technical deep-dive)

The Ai2Done MOV to MP4 tool is built on FFmpeg.wasm 0.12 — the canonical FFmpeg codebase compiled with Emscripten to WebAssembly. The bundle is ~25 MB (lazy-loaded on first visit, then cached) and exposes the full FFmpeg CLI inside your browser tab.

The interesting engineering:

  • In-memory virtual filesystem. Browser code can't write to your filesystem, so FFmpeg.wasm operates on an Emscripten-provided in-memory FS. We pipe the uploaded file into /input.mov, run FFmpeg with the equivalent CLI args, and stream /output.mp4 back to the browser as a Blob download.
  • Codec detection happens client-side. Before queuing any conversion, we read the first ~50 KB of the MOV and parse the ftyp and moov atoms to identify which video codec is inside. This lets us tell you "lossless remux is possible" or "re-encoding required" before you commit.
  • Streaming download. Output files >100 MB are streamed via the File System Access API on Chrome/Edge so the entire output doesn't have to fit in RAM. On Firefox/Safari we fall back to a single-blob download, which limits practical file size to ~1-2 GB.
  • SharedArrayBuffer + Cross-Origin Isolation. FFmpeg.wasm uses Web Workers for its threading, which requires the page to be cross-origin isolated. We serve the page with the correct Cross-Origin-Opener-Policy and Cross-Origin-Embedder-Policy headers so the multi-threaded build (~3× faster) works.

Why browser-side instead of a backend service? Two reasons. First, privacy — family videos, work meeting recordings, and personal events shouldn't need to traverse a third-party server to get a different container wrapper. Second, scalability is free — every user's CPU does their own conversion, so we don't pay for CPU time and you don't share a slow shared worker with 1000 other concurrent users.

FAQ

Q: Will converting MOV to MP4 lose quality? A: Not if the video is already H.264 inside the MOV (the default for iPhones set to "Most Compatible"). The conversion is a lossless re-mux — the actual pixel data is byte-identical between input and output. If the video is HEVC and you opt to re-encode to H.264 for compatibility, you'll lose a small amount of quality, but at CRF 18 it's visually indistinguishable on a normal screen.

Q: My MOV is 10 GB. Will the browser handle it? A: On Chrome / Edge with the File System Access API, yes — we stream the input and output without loading the whole thing in RAM. On Firefox / Safari, practical limit is ~2 GB because we have to fit the output blob in memory. For huge files on Firefox, install FFmpeg locally (one brew install ffmpeg or equivalent) and run the CLI directly.

Q: Will the converted MP4 keep the original frame rate / resolution / bitrate? A: Yes — lossless remux preserves everything exactly. The MP4 plays at the same resolution, frame rate, bitrate, and color profile as the source MOV.

Q: My iPhone records "ProRes" — will this tool handle it? A: ProRes is uncommon (only iPhone 13 Pro and later in specific recording modes) and not all browsers can decode it. We accept ProRes MOV but the output will need to be re-encoded — usually to H.264 or HEVC — because raw ProRes files are gigantic (~1 GB per 30 seconds at 4K) and not playable in most consumer software.

Q: Why does my iPhone footage say "MOV" but the codec inside is H.264? A: Apple uses MOV as their default container because it predates MP4 and supports a few proprietary metadata atoms (Live Photo references, depth maps, ProRes RAW). The video codec inside is usually the same H.264 or HEVC that MP4 supports, which is exactly why lossless remux works so well.

Q: Can I batch-convert a folder of MOV files? A: Yes — drag multiple MOVs into the upload area, click Convert, and you'll get a ZIP back with all the MP4s. Each file is processed in its own Web Worker so a multi-core machine processes them in parallel.

Try it now

Convert your MOV files to MP4 in seconds, completely in your browser:

Open the MOV to MP4 Converter →

Drop a file, click Convert. Lossless when possible, re-encode when needed. No upload, no signup, no watermark.

Related reading


Last updated 2026-06-14. The MOV to MP4 converter runs 100% in your browser using FFmpeg.wasm — your videos never leave your device. We never collect, log, or analyse the files you process.