To convert MOV to MP4 with FFmpeg, run ffmpeg -i input.mov -c copy output.mp4 for H.264 videos. It copies the streams into an MP4 container in seconds with zero quality loss. For HEVC videos that need to play everywhere, re-encode with ffmpeg -i input.mov -c:v libx264 -crf 23 -c:a aac output.mp4. If you'd rather skip the command line, the MobileStudio MOV to MP4 converter makes the same choice for you in the browser.
The short answer
| Goal | Command |
|---|---|
| H.264 MOV to MP4, lossless | ffmpeg -i in.mov -c copy out.mp4 |
| HEVC to H.264 MP4 | ffmpeg -i in.mov -c:v libx264 -crf 23 -preset medium -c:a aac -b:a 160k out.mp4 |
| Keep HEVC, play on Apple devices | ffmpeg -i in.mov -c copy -tag:v hvc1 out.mp4 |
| Web playback that starts fast | Add -movflags +faststart |
| Convert a whole folder | A shell loop (see below) |
How do I check what's inside a MOV?
Run ffprobe input.mov. Look for the video stream's codec: h264 can be remuxed instantly, hevc needs a re-encode if the MP4 must play everywhere, and prores always needs a re-encode for sharing. The FFmpeg documentation explains every field.
How do I remux MOV to MP4 without re-encoding?
ffmpeg -i input.mov -c copy output.mp4
-c copy copies the video and audio streams as they are, so it runs at disk speed and the quality is identical. This is what the browser converter does for H.264 files. If FFmpeg complains about a stream, such as a timecode or metadata track, add -map 0:v -map 0:a to keep only video and audio.
How do I convert HEVC MOV to H.264 MP4?
ffmpeg -i input.mov -c:v libx264 -crf 23 -preset medium -c:a aac -b:a 160k output.mp4
-crf 23sets quality; lower is better and bigger. 18 to 23 is a good range.-preset mediumtrades speed for size;slowmakes smaller files.-c:a aacconverts the audio to AAC, which every player supports.
HandBrake users will recognize the same idea from its quality guide, which uses RF values on the same scale.
How do I make FFmpeg MP4 files start faster on the web?
Add -movflags +faststart. It moves the index to the front of the file, so browsers can start playing before the whole file downloads. The browser converter does this automatically.
How do I convert a folder of MOV files with FFmpeg?
On Mac or Linux:
for f in *.mov; do ffmpeg -i "$f" -c copy "${f%.mov}.mp4"; done
On Windows PowerShell:
Get-ChildItem *.mov | ForEach-Object { ffmpeg -i $_.FullName -c copy ($_.BaseName + ".mp4") }
Swap -c copy for the re-encode options if the files are HEVC.
Why won't my HEVC MP4 play on iPhone or Mac?
Apple players expect the hvc1 tag for HEVC in MP4. Add -tag:v hvc1 when you remux HEVC. Without it, QuickTime may refuse the file even though the video is fine. For background on the codecs, see HEVC vs H.264 and Apple's HEVC guide.
Do I need FFmpeg for this?
No. For occasional files, the MOV to MP4 converter does the same remux or re-encode without the terminal. Other options are in how to convert MOV to MP4, and if you need a smaller file afterwards, use the video compressor.
Where MobileStudio fits
The converter is one of our free tools. MobileStudio itself turns iPhone screen recordings into polished app demos. Get MobileStudio.
Quick FAQ
Does -c copy lose quality?
No. It copies the streams exactly. Only the container changes.
Why is my remuxed MP4 the same size as the MOV?
Because nothing was re-encoded. That's expected.
What CRF should I use to convert MOV to MP4?
23 is a good default. Use 18 to 20 for near-transparent quality.
Can FFmpeg keep the rotation of iPhone videos?
Yes. Rotation metadata is kept when you remux, and applied when you re-encode.
Is FFmpeg free?
Yes. It's free and open source.



