I just downloaded a video that’s only available as an MKV file, but the devices and apps I use mainly support MP4. I’m worried about losing video or audio quality, subtitles, or having the file become unplayable after conversion. What’s the best and safest way to convert MKV to MP4, and which tools or settings should I use so everything still works properly?
Yep – you can absolutely convert an MKV file to MP4, and in many cases it only takes a couple of clicks (or a quick command) depending on the tool you use.
What are MKV and MP4?
Both MKV and MP4 are container formats. Think of them like boxes that hold video, audio, subtitles, and metadata.
MKV (Matroska Video) is super flexible and can hold lots of tracks – multiple subtitles, audio languages, chapters, etc. That’s why it’s popular for high-quality downloads and Blu-ray rips. The downside is that some devices and apps don’t support it very well.
MP4 is the more universal format. It’s a bit more standardized and widely supported by phones, TVs, game consoles, browsers, and social platforms. The video quality can be just as good as MKV if the same codec is used – the main difference is compatibility rather than compression.
Why convert MKV to MP4?
Most people convert for practical reasons:
-
Device compatibility: Some TVs, phones, and editing apps simply refuse to open MKV files.
-
Sharing or uploading: Platforms like social media or messaging apps tend to handle MP4 more reliably.
-
Streaming or editing: Video editors and streaming software often expect MP4 containers.
Sometimes the conversion is actually very fast because the video stream doesn’t need to be re-encoded – it just gets repackaged.
Popular conversion tools
A few tools that people on Reddit constantly recommend:
- HandBrake – super popular free video converter with a simple interface. Great if you want presets for devices.
- CloudConvert – web-based option if you don’t want to install anything.
Players that skip conversion entirely
Sometimes you don’t need to convert at all – just use a player that supports MKV natively.
Elmedia Player (Mac)
Elmedia is a solid Mac media player that handles pretty much every format you throw at it, including MKV and MP4. It supports high-quality playback, subtitles, and multiple audio tracks, plus it can stream content to devices like Apple TV or Chromecast. If you’re on macOS and want something smoother than QuickTime for MKV files, it’s a really convenient option.
VLC media player (Windows / cross-platform)
VLC is basically the universal fallback player. It’s open-source, lightweight, and supports an enormous list of video and audio formats out of the box – MKV included. On top of playback, it also has built-in tools for converting and remuxing media. That combo of reliability and flexibility is why it’s still the default recommendation almost everywhere.
If you want, tell me what device or app you’re trying to play the MKV on – sometimes there’s an even easier solution than converting. Happy to help ![]()
If you want MP4 without quality loss, think “remux”, not “convert”.
@mikeappsreviewer covered HandBrake, VLC, CloudConvert pretty well. I’ll go a bit more low level and a bit more picky about quality and subtitles.
Step 1: Check what is inside your MKV
You need to know the codecs first.
Use MediaInfo or VLC:
• Open the MKV in MediaInfo
• Look for Video: H.264/AVC or H.265/HEVC
• Look for Audio: AAC, AC3, DTS, etc
These affect if you can keep everything as is in MP4.
Step 2: Use ffmpeg to remux without re‑encoding
This avoids quality loss. It only changes the container.
Basic command:
ffmpeg -i input.mkv -c copy output.mp4
What this does:
• Copies video, audio, subtitles as is
• No re‑encode, no generational loss
• Usually much faster than HandBrake
If you get errors on subtitles or chapters:
MP4 support for subtitles is picky. Often you need to drop or convert them.
Example, drop subtitles:
ffmpeg -i input.mkv -c copy -sn output.mp4
If you want soft subtitles that play on many devices, convert to mov_text:
ffmpeg -i input.mkv -c:v copy -c:a copy -c:s mov_text output.mp4
Some players on TVs still ignore subtitles in MP4. Phone and PC players tend to be fine.
Step 3: When remux fails
If your TV or app refuses the audio codec, you keep video and only re‑encode audio.
Example, convert DTS to AAC, keep video:
ffmpeg -i input.mkv -c:v copy -c:a aac -b:a 192k output.mp4
This keeps video identical, so no visual quality loss. Only audio gets re‑encoded.
If even video codec is not supported, then you must re‑encode video, and you will lose some quality. There is no way around that.
Example for H.264 output with decent quality:
ffmpeg -i input.mkv -c:v libx264 -crf 18 -preset slow -c:a aac -b:a 192k output.mp4
Lower CRF means higher quality and bigger file. CRF 18–20 is usually visually transparent.
Step 4: Preserve multiple audio tracks
If you care about multiple languages, tell ffmpeg to keep all tracks:
ffmpeg -i input.mkv -map 0 -c copy output.mp4
-map 0 keeps all streams. Some devices get confused by too many tracks, so test the result.
Step 5: About subtitles and chapters
MP4 handles:
• mov_text subtitles best
• SRT converted to mov_text
• Chapters in MP4 are hit or miss on TVs
If your device ignores MP4 subs, you can keep the MKV as your “master” and use MP4 only for playback on picky hardware.
Step 6: When you do not need to convert at all
Here I disagree a bit with going straight to conversion. If you are on macOS and your problem is only that QuickTime refuses MKV, install Elmedia Player and play the file as is. It supports MKV, multiple audio tracks, subtitles, and streaming. No quality risk, no time wasted.
Step 7: Simple decision path
- Want MP4 only for compatibility, do not care about editing
• Try remux: ffmpeg -i input.mkv -c copy output.mp4 - Result does not play on your TV
• Check audio codec, re‑encode audio to AAC only - Still no luck
• Re‑encode video to H.264 with CRF 18–20 - On Mac, only local playback
• Install Elmedia Player and keep MKV
If you share what device you want to play it on and a sample MediaInfo output, you get a precise ffmpeg line instead of guessing.
You’ve already got solid answers from @mikeappsreviewer and @caminantenocturno, so I’ll try to fill in the gaps instead of repeating “use HandBrake / ffmpeg / VLC” on loop.
Key idea:
If you want no quality loss, you are not really “converting” the video, you are remuxing it. That means: same video and audio inside, just a different box (MKV → MP4). As soon as you re‑encode the video stream, some quality is gone, even if you barely notice it.
Where I slightly disagree with them:
People jump to “convert everything to MP4” way too fast. Before you touch the file at all, ask:
- Is the real problem just that one app (like QuickTime or a picky TV player) hates MKV?
- Or do you actually need an MP4 for a specific device / upload?
If your issue is only on Mac (QuickTime complains, iMovie whines, etc.), it’s usually smarter to keep the MKV as your master file and play it directly with a better player. Elmedia Player on macOS is great for this specifically: it plays MKV, preserves multiple audio tracks and subtitles, and avoids all the nonsense of converting back and forth. From a “preserve quality” standpoint, this is the safest route, because you’re not touching the original at all.
If you really must end up with an MP4 and want to keep:
- same video quality
- same audio quality if possible
- subtitles intact or at least usable
- file still playable on your TV / phone / console
then think in this priority order:
-
Try pure remux first
Use a tool that can copy streams without re‑encoding. ffmpeg, VLC and even some GUI tools can do this. That’s already covered heavily by the others, so I won’t re‑paste commands, but the end goal is: “copy streams, change container only.” If it runs quickly and your CPU is not pegged, you’re prolly remuxing, not re‑encoding. -
If your target device chokes on the audio only
This is super common with DTS tracks on TVs and game consoles. In that case, don’t destroy the video just to fix audio. Keep the video copied, only re‑encode audio to AAC. You lose a bit of audio fidelity, but your picture stays perfect. 9 times out of 10, you won’t hear the difference on a living room setup anyway. -
If your device also hates the video codec
Then yeah, you’re stuck re‑encoding video and quality loss becomes unavoidable, no matter what software you use. The trick is to pick good settings so the loss is minimal. Ignore “high quality” marketing buttons and focus on constant quality settings (like CRF for H.264) instead of just “bitrate = X”. Higher quality, more consistent. -
Subtitles reality check
This is the part people underestimate. MKV happily holds all kinds of subtitle formats. MP4 is fussier. A few points:- Some TV players ignore subtitles in MP4 completely, no matter how “proper” they are
- Soft subs might need conversion to a different format to stay compatible
- Worst case, you burn subtitles into the video, but then they are permanent and you will be re‑encoding video
Because you said you’re afraid of losing video/audio quality and subtitles, I’d personally:
- Keep the original MKV as my “archive”
- Try remux → quick test on my target device
- Only start re‑encoding specific streams when there is a clear problem
- If I’m on a Mac and the only thing complaining is QuickTime, just install Elmedia Player and stop fighting the file
Bottom line:
- Want zero quality loss? Aim for remux only, no video re‑encode.
- Want maximum device compatibility? Be prepared to re‑encode at least audio, maybe video.
- Want the least hassle on macOS? Use Elmedia Player for MKV playback and only convert when you absolutely must share or upload an MP4.
If your only goal is “MP4 that just plays everywhere, without wrecking quality,” I’d approach it slightly differently from @caminantenocturno, @nachtschatten and @mikeappsreviewer, who all focused heavily on conversion workflows.
1. First question: do you actually need to convert?
This is where I mildly disagree with the “just convert/remux everything” vibe.
If the problem is mainly that QuickTime or a built‑in player on macOS does not like MKV, I would not touch the file at all. Install a better player and keep the MKV as your master.
Elmedia Player is built exactly for this use case:
Pros:
- Plays MKV directly, no transcoding step
- Handles multiple audio tracks and subtitles inside the MKV
- Streams to Apple TV / Chromecast, handy if your TV app is picky
- Lets you keep the original file untouched, so there is literally zero quality loss
Cons:
- macOS only, so it does not help if your end device is a smart TV or console reading from USB
- Free version is fine for playback, but some advanced features sit behind a paid tier
- Does not “fix” compatibility for devices that need MP4 on a stick; it just solves playback on the Mac itself
If your entire playback chain is Mac → TV using AirPlay or casting, Elmedia Player actually removes the need to convert to MP4 at all.
2. When you really must end up with MP4
Here I agree with the others on the core idea: aim for remux first, not re‑encode.
Where I differ a bit:
- I would not immediately push everything through heavy tools like HandBrake unless you also want to shrink the file or change codecs.
- I would keep one “golden” MKV untouched and experiment on a copy. Too many people overwrite the only high quality file they have.
Use the more technical ffmpeg tricks that @nachtschatten outlined only after you know which device is complaining and which stream is at fault (often just audio). That way you can, for example, re‑encode only DTS audio to AAC but leave the video bit‑perfect.
3. Subtitles and chapters: set expectations
Here is the subtle pain point:
- MKV is very flexible with subtitles.
- MP4 is much stricter and some TVs ignore MP4 subtitles entirely.
So if subtitles are crucial to you, keep the MKV as your reference file and treat the MP4 as a “compatibility copy.” That way if a particular TV or app butchers or ignores the subs, you still have the original to reprocess differently.
4. How their advice fits together
- @mikeappsreviewer: good overview of GUI tools like HandBrake, VLC, cloud services. Nice if you want presets and a visual interface.
- @caminantenocturno: solid on the container vs codec explanation and practical reasons for MP4.
- @nachtschatten: very strong on detailed ffmpeg usage and the whole “remux vs convert” logic.
My slight twist: before any of that, decide if the friction is solved more cleanly by changing the player (for example with Elmedia Player on Mac) instead of the file. If yes, you skip an entire class of quality risk and time sink. If no, then follow their ffmpeg / HandBrake paths, but always on a copy and always trying remux before full re‑encode.