If your file won't play and the TV reports "Invalid file", the thumbnail is not created instead a one with a warning arrow, then your TV won't eat the file.
The problem is likely one of these issues:
1. unsupported format (check the supported list, e.g. LG)
- especially note the restriction of 30 fps for FullHD
- video codecs are usually divx and h264 (up to profile 4.1), no GMC
- audio codecs are usually mp3, ac3, aac.
2. Badly muxed file
3. Mkv with header compression
It does not matter what the file really has, the TV only checks the header and then won't even try to open it.
In case the file is really not supported there's nothing you can do but reencode. This should make any file playable:
ffmpeg -i Oldfile.mp4 -vcodec libx264 -vpre normal -r 25 -crf 23 -ab 384k -acodec ac3 Working.mkv
So in some cases (2.) the fix is as easy and fast as:
mkvmerve -o Newfile.mkv Nonworkingfile.mp4.
In case the header just has a wrong, too high, frame rate (2.), adjust -r 25 to the correct framerate (e.g. 24, 25, 30), then use this:
ffmpeg -r 25 -i Oldfile.mp4 -r 25 -vcodec copy -acodec copy Working.mkv
In case of header compression (3.) you need to add:
mkvmerve --compression -1:none -o Newfile.mkv Nonworkingfile.mp4.
Extra tip: Only encode a few seconds in each variant, then cancel, then try to play the files and just completely transform the file with the method that works.
If you like this post, share it and subscribe to the RSS feed so you don't miss the next one. In any case, check the related posts section below. (Because maybe I'm just having a really bad day and normally I write much more interesting articles about theses subjects! Or maybe you'll only understand what I meant here once you've read all my other posts on the topic. ;) )