Play MKV on your Blu-ray player without issues (products shown here only for demonstrative purposes)
TUTORIAL Issues playing your MKV videos on your standalone media player or Blu-ray deck? Here's your fix!

More and more units come with media playing capabilities these days, whether it's a gaming console, Blu-ray player, a streaming box such as a WD TV Live or an Apple TV. Even the smarter TV's of modern days can play videos from your home network or a USB stick these days. However, a lot of video formats common today originates from the PC and Mac infrastructure, where the files were first and foremost intended to be used.

All MKV's aren't the same

The Matroska formats, such as Matroska video (MKV) container are rather complex and diverse animals. They are like buckets where you can throw multiple video and audio streams in, accompanied by several subtitle tracks of various formats. It's a format constantly developing, enabling more features and changing how the data is stored within the files.

Software players like VideoLAN's VLC media player usually have no problems complying to new standards, since they're issuing updates to their software regularly anyway. Standalone players are more rigid units, however, and some complications may arise when newer MKV files are played on a device based on an older standard. While your computer probably plays anything you feed it, as long as you have your software player up to date, a hardware player isn't always as compliant and flexible.

Typical issues

WD TV media player.
I remember using a first generation WD TV media player for all my MKV videos back in the day, and they all worked flawlessly, up to one point at which nothing seemed to work anymore. It refused to play any of the MKV's I threw at it from that point. I was almost certain the unit was broken and ready for the bin, but fortunately that wasn't the case, as it played other formats such as MP4 and AVI just fine.

My new Blu-ray player, the LG BP325N has a different issue, however also isolated to MKV's, specifically. While it would play the video and audio just fine, it freaked out as soon as I tried rewinding or doing a fast-forward. This made the player skip to the next file on the USB stick, and it happened on most every file it had it playing.

Other Blu-ray players, from Sony (and possibly other brands), are also known to have jerky playback with the picture being heavily distorted playing MKV content.

Solutions

The common issues above lies in something called header compression - a more recent feature added to the MKV format. One that many standalone players have some serious issues dealing with.

What's really dumb is that the most common tool used for creating MKV's - namely a software called MKVtoolnix, has this featured enabled by default, rendering the resulting files useless in many situations. The newer versions of the software don't even give you the option of disabling it!

From my experience, I found two fairly easy ways to get around the issue. Neither of them will degrade the quality of your videos, since there is no re-encoding involved.

Method 1: Disable header compression in MKV file

In order to get rid of the header compression from an MKV, you'll need to first get an older version of MKVtoolnix, since the newer ones will use header compression whether you want it or not. Version 5.8 will still get the job done, and it's available for download here.

Header compression removal - only featured in older versions of MKVtoolnix/MKVmerge.

After you've installed MKVtoolnix, move into the installation folder an run mmg.exe, which will open up the mkvmerge GUI. Next, hit Ctrl+P to gain access to the settings.

In the tab mmg, look for a checkbox saying "Disable header removal compression for audio and video tracks by default". Make sure to leave that checked. Then save your setting by clicking the OK button.

Remuxing the MKV

mkvmerge GUI, included in the MKVtoolnix suite.
All you have to do now is to drag your troublesome MKV file into the programme (drop it in pane 1 in the figure), specify a location to store the new file (choose your USB thumb drive here, for instance), and hit the button saying "Start muxing" and a new MKV file will be created. One that will hopefully play fine on your standalone player.

Optional: Embed subtitles

While you're here in MKVmerge, if you want you can also embed your subtitle file straight into the MKV. This is especially useful if the player doesn't support external subtitle files, such as .srt and .sub files. To embed them, just drop your subtitle files into panel 2 (see figure) before you start muxing your new MKV file.

Method 2: Convert to M2TS

tsMuxeR
Another way to circumvent the issue is remuxing the MKV it into an M2TS container instead. This is the container used natively on the Blu-ray format, as well as many HD video cameras. It's a more straight-forward format and has no compression of this kind built into it. And since you're just moving your video and audio streams from one container to another, it's a very smooth and easy conversion. It's also completely lossless, since there's no re-encoding going on. Think of it like moving a file from a .zip to a .rar archive - it's just a matter of shuffling data. Everything contained in the original file be left intact.

The approach is very similar to that in MKVmerge, but here you'll instead use a software called tsMuxeR which you can download here.

After installing, look for a file named tsMuxerGUI.exe in the installation folder. Open that up. If you've ever used MKVmerge, you'll be familiar. All you need to do is to drag your .MKV file into tsMuxeR. Under Output, choose M2TS. Here you can also specify a new save location, by clicking the Browse... button. When you're done, hit the "Start muxing" button to create your new file.

Conclusion

Both methods above proved to work flawlessly with my standalone players. However, embedded subtitles in M2TS containers didn't work with the LG Blu-ray player, so I prefer using the first method. If it doesn't solve the issue, the problem probably lies elsewhere. For instance there's something called profiles regarding MKV's, and certain players are only compatible with some of these. If the profile is wrong, it likely needs to be re-encoded, with a profile it's compatible with. However, for me, the header compression has been the villain in all cases.

Should I get a new player instead?

Some might argue that it's better to just get a more compliant media player to begin with, to spare you the hassle of messing with MKVtoolnix. But since the files need to be transferred to a USB stick in any case, it doesn't take that much longer exporting them via either mkvmerge or tsMuxeR, opposed to dropping them straight onto the USB device. Not unless you have your videos streamed straight from a networked file server, that is. But that gives you a lot of background hum and shaky bandwidth performance instead. But it's your call...

/theJo