The Matroska Multimedia Container is an open file format, primarily designed to hold an unlimited amount of various tracks. It’s compatible with nearly any codec. As an open standard, it is extensively documented and supported by the community.
An important part of a container is its metadata. An MKV file format can contain text fields and attachments. The format of attachments is not defined or limited; it is usually an image or a document. Besides that, MKV metadata supports special features, such as marking multiple chapters on a single video/audio track.
MP4 is a patented file format, designed around MPEG-compliant codecs. When talking about an MP4 file, it’s reasonable to assume an AVC/AAC encoding. MPEG-4 standard came at a time when there was no competition; it soon became universal, and most consumer-grade hardware was shipped with a decoder. This is still the case today.
MP4 metadata consists of numbers, text strings, and images (JPG, PNG, BMP). It’s described by XMP, another patented standard. These metadata fields can be created in any amount.
It’s not that simple! You should determine your use case for the format.
That’s quite a list, and it’s exactly why we won’t present it as a plain "pros and cons" comparison. Not only do the specific cases have different priorities, but also, you might intend to do multiple things, which could benefit from opposite features! For example, you may want to compress many samples, edit them together, and sell them to an online platform. With such complexities, you will usually end up choosing between trade-offs. Either that, or both formats will be good.
Up next, we’ll review these different uses and the advantages that MKV and MP4 can offer.
As MKV is compatible with MP4 codecs, an .mp4 can be freely converted to .mkv without quality loss, and the opposite is true if MKV is encoded in one of them. File size is a secondary concern - other features matter more in this choice.
If you’re going to preserve some footage, movies, etc., you’ll probably end up with an MKV. DVD-like menus, chapter entries and broader codec support - it’s just more important than compatibility. If you’re a movie buff, you won’t have any trouble choosing a video player, anyway.
When creating or editing a video, you often end up with an ever-increasing library of source videos and small samples. It’s convenient to keep them uniform. An MKV could hold some weird or slow codecs, it could even fail to open in the editor. The artistic process already takes long enough, sans technical issues. So it’s probably best to have your samples in MP4.
On the other hand, when you’re ready to render the video, you could prefer MKV for its extra features. And, of course, if you’re going to publish it, keep the platform requirements in mind. YouTube, for example, does not support Matroska Video.
Now, if you just want to pass some time watching videos on your phone, MP4 is definitely the format choice. Nowadays, most mobile players support MKV, but non-MPEG videos will decode slowly, creating lag and battery drain. Just go with MP4/AVC/AAC, it will encode faster, too.
The simplest online use is sharing a video through a file hosting service, by mail, or even via messenger. A lot of people use MP4 for this exchange. Usually, it’s because the receiver gets it on the phone, and messengers, generally, can only embed and play .mp4s.
Online distribution is a tricky subject. If you explicitly want to monetize your content, you should probably stay away from MP4: remember, it’s a patented standard. The corporate types who made it want royalties from every purchase; even if you can afford the royalties, do you really want to stick your hand into this bureaucratic snakes’ nest? Unless your platform has an agreement with MPEG, choose MKV.
If you’ve got a small website, and you want to embed a video, an MP4 is a common choice. Supposedly, a subtype of MKV - the WebM - is more compatible and appropriate in a web environment, but it’s beyond the scope of our article.
An MP4, due to its specifics, cannot be streamed by default. An MKV can.
For a brief rundown of their differences, check out the following table:
|Use case||Notes on MP4||Notes on MKV|
|Distribution (paid or free)||Use cautiously; beware of patent protection. Likely supported everywhere||Open and free, but might not be supported by some platforms|
|Sharing||Works well with messengers and hosting services||Less compatible overall|
|Embedding||Technically works, but with issues. Video can not be truly cached, only downloaded in large chunks||WebM is more modern, and worth looking into|
|Streaming||Possible, with workarounds||Entirely possible|
|Preservation||Just good enough||More DVD-like features, broader choice of codecs|
|Editing||Easily and quickly opened in editors||May cause issues and waste time in production. Good choice for the final product. Plenty of documentation and community help|
|Mobile entertainment||Battery-efficient and fast||Usable, but may cause lag and battery drain|
By now, you probably have a solid idea about your project. You might be ready to choose your format, or, perhaps, to move on to the next article. But what’s that? You don’t need any of this? Are you just a user that wants to enjoy his movies without a hassle?
Well, I still have something in store for you: check out Elmedia MKV Player for Mac. With that thing, you won’t have to consider anything, because it plays everything. And forget what I said about mobile memory restrictions - just stream stuff to your phone, your TV, your iPod, whatever. You can even work around the limitations of these formats. Mark a chapter, use the bookmarks feature, import and use an incompatible subtitle format with Elmedia.
Because they are only containers, MKV vs MP4 quality wise don’t make a difference. In fact, videos in both formats can have the same encoding, with the same size and the same quality.
If your MKV and MP4 contain the same video, there are two possible reasons: either your MKV file has higher compression, or it uses a different, more efficient codec.
It’s not a simple question, refer to the article above. But if you’re in a rush, an MP4 is easier and faster to encode. Just make sure you don’t monetize it.
If your MKV is encoded with an MPEG codec, you can. For example, VLC gives you the option to "keep video" when converting; this way, it will just transfer the video stream to a new MP4 container without converting it. You can also use Elmedia to play MKV on Mac without conversion.