I’m doing some digging into this issue and it appears it has something to do with the atom structure of the video, namely the position of _ moov _ before _ mdat _ seems to be the culprit.
FFMpeg by default saves mdat before moov , which is why the WDTV will play a problem file after I remux it with FFMpeg.
What is atom structure in an MP4? Adobe has a great explaination here: http://www.adobe.com/devnet/video/articles/mp4_movie_atom.html
To help me and WD determine the problem, it would be great if you guys could test your problem files by downloading this tiny 300kb app from here: http://mp4explorer.codeplex.com/
The app is safe; it is the first website Google points to when searching for “MP4 atom viewer”.
Install it, and point it at your problem MP4 file, them click the file name at the top left of the window.
It should (if my theory is correct) show the atom structure as:
ftyp
moov
mdat
Note that it will also have an atom (or possibly atoms) named free , these will be in an arbitrary position and aren’t important in this instance.
A playable file should have the structure (once again with free atoms in a random position:
ftyp
mdat
moov
Guys, it would be great if you could download and run this app and post your problem files atom structure to confirm that this is the issue (I believe that it is).
My theory is that when moov is first , this will not play , and when mdat is first that it will play.
If so, it would be a step in helping WD to fix this player. I know we shouldn’t have to, but it appears the best way to obtain a resolution in this instance.
Tony.