General information on video file formats and codecs

Hopefully this can clear up some confusion for beginners.  It’s an expansion of some of the information in the FAQs.

The actual file format is just a “container.”  Some formats are more strict in their standards as to what is supposed to go into them, but that doesn’t really stop anyone from deviating from the standards.  Something like the Matroska container (.mkv file type) is very open in terms of what they expect you to stick into it.

So, this alone can cause confusion, in terms of questions like “can x play a .mkv file?”  You have to know exactly what is in the .mkv file first.  For example, I can create my own type of video stream and put it into a .mkv file.  It will only be playable if somebody has instructions for their media player to say what to do with my type of video – how to turn it into a series of pictures.  It not being playable is the fault of my video stream, not the player or the Matroska container.

So the first question is “What kind of containers can a WDTV Live/Live Plus extract video and audio streams (i.e. playable movies) from?”

  • Advanced Systems Format  (file extensions .asf , _ .wmv _, _ .dvr-ms _)
  • Audio Video Interleave  (file extension _ .avi _)
  • Matroska (file extension _ .mkv _)
  • MPEG Program Stream (file extensions _ .mpg _, _ .mpeg _)
  • MPEG Transport Stream (file extensions _ .ts _, _ .tp _, _ .m2t _, _ .m2ts _)
  • Quicktime (file extensions .mov , _ .mp4 _)
  • Video Object (file extensions _ .vob _, _ .iso _)

But that doesn’t mean that just because your file is the right type of container, the WDTV Live/Live Plus will automatically be able to play it.  This is especially apparent with the .iso filetype.  An .iso file is generally an “image” (a copy) of an optical disc.  You can make an .iso file of any CD, CD-ROM, DVD, DVD-ROM, Blu-Ray, BR-ROM, etc… disc.  Obviously an .iso of a DVD-ROM that contains Windows programs or data has no video or audio streams that the WDTV would be capable of playing.

So the next step beyond “what container?” is to ask “what exactly is in the container?”

Even if the container has specific standards written about what it is supposed to contain and what it is not supposed to contain, that doesn’t prevent someone from creating a non-standard file.  And the more open containers like Matroska can contain just about anything.

This is where “codecs” come into play (coder-decoder).  A codec is basically a set of instructions on how to take raw data and encode it, and then how to decode it back to raw data again.  If I don’t give people the codec for the new type of video stream I created, then nothing on the planet, either hardware or software, will be able to turn that information back into video, regardless of what type of container I put my stream into.

So the container has to contain an audio and video stream that the WDTV Live/Live Plus knows what to do with.

On a personal computer, if you encounter a file that “won’t play”, it’s often because you don’t have the right codec.  Your player software can often download the correct codec (or you might have to do it yourself), and then the file will play.  The ability to keep downloading codecs for an almost infinite number of audio and video stream types is almost unlimited for a personal computer.  Not so with a hardware media player.

In general, the manufacturer of the chip decides what codecs it will include support for.  Once the chip is made, it’s practically impossible to make any changes.  They try to include the most popular ones, so that manufacturers will buy their chips instead of the competition’s, but they can’t include everything, and they can’t include anything that comes out after their chip is designed.

The User Manual lists the types of codec that the chip in the WDTV Live/Live Plus can handle, for each file type.  That is decided by the chip, not by WD.  If a file (in a “playable” container) contains an unsupported codec, there’s very little WD can do.  The file just won’t play.

And even then, the chip has limits for many of the codecs, which are listed in the fine print of the “Supported Formats”.

So, if the video stream inside the container doesn’t match what the chip manufacturer designed the chip to be able to decode, there’s nothing really that WD can do about it… it’s up to you to change the coding of the audio and video streams to turn them into something the chip understands.  WD can basically only support new/different codecs by switching chips, which would change what future devices can play, but not your unit.

If your file comes up as “Unsupported”, in almost every case there’s absolutely nothing WD can do to in terms of firmware to make that file play, except from buying new chips and making new devices.

But, beyond all that, there’s a third stumbling block.  Even if the container is supported, and the audio and video codec are supported, the player has no control over whether the video and audio streams are properly encoded within the specifications of that codec.  If the file has a bad video stream in it, the WDTV can’t fix that.  All you can do is encode the file again with a different program.  WD can’t change the capabilities of the existing codecs built into the chip.

So this is why, in these forums, essentially the first thing you will be asked when you have a “won’t play” problem, is how you encoded the file (with what program) and/or you will be asked to provide the MediaInfo details for the file.

You can get the MediaInfo program, to help us help you, from their download center.  It is available for practically every possible operating system, so anyone can use it, not just Windows users.

7 Likes