Convert MKV to MP4: 5 Methods Compared (Fastest First)
Five tested ways to turn MKV files into MP4 — ordered by speed. Most conversions take seconds, not minutes, because the best method doesn't re-encode anything. Pick the method that matches your comfort level and file count.
Which method should you pick?
| Method | Speed | Quality loss | Batch | Best for |
|---|---|---|---|---|
| 1. FFmpeg remux | Seconds | None | Yes (script) | Anyone comfortable pasting one command |
| 2. OBS remux | Seconds | None | Auto on record | OBS recordings, past and future |
| 3. Shutter Encoder | Seconds (rewrap) | None | Yes (queue) | GUI lovers, mixed batches |
| 4. HandBrake | Minutes | Tiny (re-encode) | Queue | Also shrinking the file |
| 5. Formatif Pro | Seconds–min | None where possible | Yes (folders) | Whole folders, no terminal |
VLC also converts MKV → MP4 (Media → Convert/Save) but it's buried, single-file, and slow — fine for a one-off, not recommended otherwise.
Method 1: FFmpeg remux (fastest, free)
One command copies the video and audio streams untouched into a new MP4 container. Seconds per file, bit-for-bit identical quality. If you don't have FFmpeg yet: Windows — winget install ffmpeg; macOS — brew install ffmpeg; Linux — sudo apt install ffmpeg.
Single file — remux, zero quality loss
ffmpeg -i input.mkv -c copy output.mp4
Batch: whole folder at once
Windows Command Prompt
for %i in (*.mkv) do ffmpeg -i "%i" -c copy "%~ni.mp4"
PowerShell
Get-ChildItem *.mkv | ForEach-Object { ffmpeg -i $_.FullName -c copy ($_.BaseName + '.mp4') }macOS / Linux terminal
for f in *.mkv; do ffmpeg -i "$f" -c copy "${f%.mkv}.mp4"; doneWhen remux fails — fix only the problem stream
MP4 can't carry everything MKV can (DTS/TrueHD audio, PGS subtitles, VP9/AV1 video). Don't re-encode the whole file — convert just the offender and keep copying the video:
Keep video, convert audio to AAC
ffmpeg -i input.mkv -c:v copy -c:a aac output.mp4
Keep video + audio, drop subtitles
ffmpeg -i input.mkv -c copy -sn output.mp4
Full re-encode fallback (high quality)
ffmpeg -i input.mkv -c:v libx264 -crf 20 -c:a aac output.mp4
Method 2: OBS built-in remux (free, zero commands)
If the MKV came from OBS, the converter is already installed:
- Open OBS Studio → File → Remux Recordings.
- Select your MKV file(s), choose the output folder, and start.
- Done in seconds — same zero-loss stream copy as the FFmpeg command.
And for all future recordings: Settings → Advanced → Recording → check “Automatically remux to MP4.” Record crash-safe MKV, receive MP4 automatically on stop. There is no reason not to enable this.
Method 3: Shutter Encoder rewrap (free GUI, batch queue)
Prefer buttons to terminals? Shutter Encoder (free, Windows/macOS/Linux) exposes remuxing as a one-click function:
- Drag in one file or a whole folder.
- Set the Function dropdown to Rewrap → .mp4.
- Hit Start. Same instant, lossless stream copy — with a progress bar.
Method 4: HandBrake (free GUI, also shrinks files)
HandBrake always re-encodes — minutes instead of seconds — so only reach for it when you also want a smaller file or a different codec:
- Open the MKV, pick the Fast 1080p30 preset (or HQ 1080p30 for near-invisible loss).
- Set format to MP4, adjust quality (RF 20–22 is the sweet spot).
- Add more files to the queue for batch, then Start.
Rule of thumb: straight container swap → remux (methods 1–3). Container swap plus smaller file → HandBrake.
Method 5: batch folders, no terminal
Dozens of MKVs? Skip the command line.
Scripts are great until the folder has 200 files in nested subfolders, three of them have DTS audio, and two fail halfway with no log you can read. Formatif Pro ($8.95 one-time) batch-converts entire folders of MKV to MP4 locally — remuxing where possible for instant zero-loss conversion, re-encoding where needed — with per-file status instead of a silent failed loop.
MKV to MP4 questions, answered
Will converting MKV to MP4 lose quality?
Not if you remux — the streams are copied bit-for-bit, so it's identical. Loss only comes from re-encoding at a lower bitrate. Try remux first, every time.
Why does FFmpeg fail converting my MKV to MP4?
A stream MP4 can't carry: DTS/TrueHD audio, PGS subtitles, or VP9/AV1 video. Convert just that stream (-c:v copy -c:a aac) or drop subtitles (-sn) instead of re-encoding everything.
How do I batch convert many MKV files?
Loop FFmpeg over the folder (commands above for CMD, PowerShell, and bash), queue them in Shutter Encoder or HandBrake, or point Formatif Pro at the folder for a no-terminal batch with per-file status.
How long does it take?
Remux: seconds (disk-speed limited). Re-encode: roughly real-time to several times real-time depending on resolution and hardware.
Can OBS convert MKV to MP4?
Yes: File → Remux Recordings for existing files, or enable Automatically remux to MP4 so all future recordings convert on stop.
Does HandBrake lose quality converting MKV to MP4?
Technically yes (it re-encodes), but at HQ presets the loss is visually invisible. The real cost is time — minutes vs a remux's seconds.
Keep learning
MKV vs MP4 explained
Which container for recording, Plex, and archiving — and why remuxing beats re-encoding.
MOV vs MP4 explained
The editing container vs the universal one — quality myth and export picks.
Batch MOV to MP4, offline
Convert hundreds of MOV files on your desktop — no uploads, no size limits.
One folder, hundreds of MKVs, one click.
Formatif Pro ($8.95 one-time) and Formatif AI ($12.95 one-time) handle video, image, and audio conversion offline — with batch workflows, no file size limits, and a 3-day free trial.
Prefer the terminal? The FFmpeg commands above are complete and free forever — this page exists so you can choose honestly.
Written by
Founder of Formatif, a local-first offline media processing suite for Windows and Linux. Hadi writes about video, image, and audio formats, compression, and privacy-first desktop workflows.