MKV files on the Popcorn Hour and NMT players.
Info and FAQ/Troubleshooting
- High definition matroska file (.mkv) does not play (no picture after buffering or only a few seconds, then a "Could not play!" message shows, and the player returns to the menu screen)
- Stuttering video while playing high definition matroska files (.mkv)
- Artefacts/pixellation/blocks while playing high definition matroska files (.mkv)
- Sound dropouts while playing high definition matroska files with DTS audio
Many people write in to the forum reporting problems with playing high definition matroska files (.mkv), often HD-DVD, BluRay and HDTV rips they have downloaded online, or occasionally encoded themselves.
The most common symptoms are stuttering video, sound issues, failure to play video at all, artefacts/pixellation.
Yet, these same files sometimes play without a problem on a home theater PC. Why is that?
The Popcorn Hour A-100, A-110 and the other NMT players are hardware players with limited resources. A strong HTPC has vastly more CPU power to use, and also has the ability to handle multiplexing in the software, whereas a hardware player has to use the hardware for the task. The result of this is that PCs can play back files that are vastly more performance consuming, and far outside of the specifications for BluRay material. For that reason, many rippers, especially in the past, have tried to set the specs very high, believing that higher specs must mean better quality. In reality, the quality does not improve that much.
Q: I was told that the problem can be solved by remuxing the mkv file to transport stream (.ts) with the application tsmuxer. Why? How do I do this? Does it always work?
A: Especially in the early stages of development (up until mid-2008), the NMT players were better at rendering transport streams than matroska (MKV) streams. Transport stream containers are all handled in the Sigma hardware. As a contrast, .mkv files are demuxed by software before video/audio is parsed to the hardware for decoding. Thus, performance was generally better when using a .ts container. Mkv files that are not too far above the officially supported specs will sometimes play better after being remuxed to .ts but since the August 2008 final firmware which introduced Haali media splitter, major improvements to mkv playback has been seen, and now, it is not so certain that remuxing to .ts will help anymore.
For those who still wish to try (upd - it still helps a lot, so - do it!):
1. Download TSMuxerGUI
2. Run the application. Add the mkv file as an input.
3. Press 'Start muxing'
4. You should get a .ts file that is playable (a reboot of the PCH may be required)
NOTE for earlier versions of tsMuxer:
With early versions of tsMuxer, the subtitles will not get embedded in the .ts file like they were in the .mkv So if you want the subtitles, you need to run the program mkvExtractGUI http://www.videohelp.com/tools/MKVExtractGUI
1. Add the mkv file as Input, Select the subtitle track under 'Content' and press the 'Extract' button. You should get an .srt file.
2. The .ts movie and the .srt subtitle files need to have the same filename! (except for the extensions). This currently only works for text-based subs such as .srt. The NMT players do not yet support bitmap-based subs like VOBSUB (.sub/.idx) although external sub/idx support is being beta tested and added once error-free.
Q: I have a high definition matroska file that will not play even after I remuxed it to .ts. What can I do?
A: If the file is encoded with too high specs, it may not be enough to remux it to .ts.
In such cases, you have to decide what suits you best: finding another version of the file, or re-encoding it yourself so it follows specs. Which option is better depends on three things, your wallet, your internet download speed and how powerful your computer is.
Re encoding is a taxing process for a computer that uses a lot of CPU resources. Your patience is an important factor. A fast dual-core or preferably, quad-core processor, will speed things up a great deal.
Q: I have an old computer with an old processor (older than Pentium 4 [ADD APPROPRIATE clock freq.] XXX GHz). Can I use it to re-encode high definition files?
A: In that case it would be best to buy or download if your Internet speed can handle it, or upgrade your computer's CPU. Q: I have a P4 single core processor (2.4 - 3.2 GHz). Is it enough to re-encode high definition files?
A: Yes. But it takes time. If you can wait for up to 30 hours for a file to reencode, and you deem that this is better than buying/downloading a new version of the file, then no problem.
Q: What are the industry standards for Full HD content?
A: For full HD content with up to 200 Mbit/s bitrate, profile level 4.1 is used - this is for all kinds of consumer HD content like BluRay, HDDVD, HDTV etc.
Profile level 5.1 is for movie mastering purposes, at 4096x2304 with a bitrate of up to 960 Mbit/s.
Q: So why are there so many High @ L5.1 encoded files?
A: Most BluRay rips are made by amateurs, many of whom have powerful PCs. Despite their releases having relatively low bitrates, like 5-10 Mbit/s, they try to use the highest possible specifications, in the belief that it will improve file quality, or simply because 'they can'. In reality, the quality gain for using High @ L5.1 profile and many reference frames with such low bitrate material is debatable at best, a fact which is slowly but surely being acknowledged among amateur rippers.
In 2008, an increasing number of scene releases have started to conform to the industry standards, which means they can be played by the NMT players. This does not mean that all bad encodes will soon have disappeared completely. The Internet is not a controlled environment where every single person can be made to follow the same set of specs. That is why some bad encodes will likely continue to be released by amateurs, even though the situation should keep improving gradually.
Modern HTPCs have significantly more processing power than the NMT players, and there are numerous software solutions being developed for playback of high definition material on computer platforms. These software solutions in combination with higher processing power will be more forgiving of badly encoded material than the Popcorn Hour and other current hardware players are able to be.
Q: How do these profile levels work, anyway?
A: It's not the header in the file which say L4.1 or L5.1, that decides the profile level - this is just nominal information sent to the decoder to prepare it for what it will receive. However, this header can be wrong. It's the actual settings that were used during encoding that decide what profile level the file has.
Further, there are a few other parameters in the encode that decide if it's L4.1 or L5.1
Max macroblocks per second = 245760
Max frame size (macroblocks) = 8192
Max ref.frames 1920x1080 = 4
Max ref.frames 1920x816 = 5
Max ref.frames 1280x720 = 9
Max ref.frames 1280x544 = 10
Max macroblocks per second = 983040
Max frame size (macroblocks) = 36864
Max ref.frames 1920x1080 = 16
Max ref.frames 1920x816 = 16
Besides the above settings, you can also choose things like VBV buffersize when encoding, and if this is wrongly set for the file, then it could run out of video buffer and start to stutter.
Q: My mkv file stutters, but has no video artefacts. Is this because it is L5.1?
A: Generally speaking, file stutter with no video artefacts is not caused by the file being L4.1 or L5.1. The wrong profile level and too many ref.frames are the main causes of video artefacts. Stutter can be caused by wrong buffer size in the video - or it can be caused by something else like poor network conditions or problems with the disc/disk it is playing from etc. Also some external problems.
Stutter can also be caused by spikes in the video bitrate, which exceed the demuxing capabilities of the player from the .mkv container (approx 30mbit/s)- .TS containers are all handled in the hardware. For that reason, they can handle bitrate spikes up to approx 40mbit/s - provided the network (or disc/disk) can handle it.