Converting macOS Screen Recordings (MOV) to MP4 Locally
Why QuickTime MOV files trip up Windows, Android, and messaging apps, and how to transcode them to MP4 in the browser without uploading anything.
Converting macOS Screen Recordings (MOV) to MP4 Locally
You hit Cmd-Shift-5, record a minute of screen, drop the file into Slack for a Windows colleague, and it refuses to play inline. Or you send it to your Android friend and WhatsApp chokes on it. MOV is not broken, but it is unloved outside Apple's world. The fix is a container swap to MP4 — and you can do it in your browser without the file ever leaving the device.
Why MOV breaks outside macOS
MOV is Apple's QuickTime container, and MP4 is the ISO-standard descendant of it. Structurally they are close cousins. The wrinkles:
- HEVC with
hvc1branding: macOS screen recordings since Monterey default to HEVC with thehvc1codec tag. Android's MediaPlayer historically wantedhev1. Many messaging apps strip or rejecthvc1MOVs. - ProRes: Final Cut and sometimes QuickTime export ProRes inside MOV. Nothing outside Apple decodes ProRes without extra codec packs.
- Timecode track, chapters, and
trefatoms: Extra metadata tracks that some Windows players treat as errors. - Alpha channel: Screen recordings with the cursor overlay occasionally carry an alpha track. MP4 doesn't handle that cleanly.
- The
.movextension itself: Some Windows default video apps simply refuse the extension regardless of what's inside.
In practice, 95 percent of "MOV doesn't play" problems are fixed by remuxing to MP4 with the codec tag set to avc1 or hev1 and dropping the extra tracks.
Remux vs transcode
The important distinction:
- Remux: Swap the container, keep the codec bytes identical. Seconds to complete. File size unchanged. Works when the source codec (H.264 or HEVC) is already MP4-compatible.
- Transcode: Decode the video and re-encode it, usually to H.264 or AV1. Minutes to complete. File size can shrink significantly. Required when the source is ProRes, or when you want to reduce size or change codec.
macOS screen recordings are HEVC or H.264, not ProRes, so remux is usually enough. Transcode is what you want when the file is too big to send — a 2-minute 4K screen recording is often 200 MB, which is over the limit on Slack free tier, Discord, and most email providers.
Sample sizes
Rough numbers for a 60-second 2560x1600 screen recording at 60 fps on an M2 MacBook:
| Codec / setting | File size | Playable on Android stock? |
|---|---|---|
HEVC hvc1 MOV (macOS default) |
72 MB | Hit or miss |
HEVC hev1 MP4 (remuxed) |
72 MB | Yes |
| H.264 MP4 (transcoded, CRF 23) | 118 MB | Yes, everywhere |
| H.264 MP4 (transcoded, CRF 28) | 54 MB | Yes, everywhere |
| AV1 MP4 (transcoded, CRF 32) | 28 MB | Yes on Android 12+ |
The CRF 28 transcode is usually the right default for "send this over chat." It cuts the file by roughly a quarter compared to the original HEVC MOV and plays on every platform that has existed in the last ten years.
Doing it in the browser
The whole point of browser-based conversion for this workflow is that screen recordings often contain things you do not want to upload to a random cloud service — passwords visible in address bars, internal dashboards, client data, unreleased product screens. A private local transcode avoids that entirely.
A WebCodecs-based pipeline handles this in about the time it takes to decode and re-encode once. For a 60-second 2560x1600 HEVC MOV to H.264 MP4 on an M2, end-to-end wall time is around 14 seconds using hardware encode. FFmpeg.wasm doing the same conversion runs around 95 seconds because it cannot touch the GPU's media block.
The converter picks the right path automatically — remux when the codec is already MP4-friendly and you only changed the container, transcode when you ask for a specific size or codec. If you have a stack of recordings from a workshop or a user-testing session, the batch tool runs them in parallel across your CPU cores.
Practical workflow
For a typical "send this recording to a Windows user" task:
- Drop the MOV onto the converter.
- Pick MP4 (H.264) as the output. H.264 is the safest choice for compatibility; HEVC has slightly better compression but still trips up a few players.
- If the file is larger than the destination allows, set a target file size or pick CRF 28.
- Save the output.
If you know the recipient is on a recent phone or laptop, HEVC or AV1 output gets you a smaller file. For anything going into a document, presentation, or legacy CMS, stick with H.264 — it is still the path of least resistance in 2026.
One last thing about Quick Look
macOS's Quick Look will happily preview the converted MP4 and confirm it plays. What it will not do is catch the hvc1 vs hev1 tagging issue, because macOS decodes both. Test on the target device if you can, or just default to H.264 output and move on.
The shortcut: record in MOV, transcode once to H.264 MP4 locally, ship the MP4. Keep the original MOV if you need to re-edit. Everything else is details.