Re-encoding videos for 10year old Panasonic TV-set

I would like to be able to play videos other than TV on an Panasonic TX-L32GN23. This TV-Set came with a proprietary mediaplayer (Viera) which in case of that TV-Set recording to its manual can play videos that have to be: MPEG-2 (PS-Format) AVCHD-standard compatible where audio needs to be either MPEG-1/Layer-2-Format or Dolby Digital

Another part of the manual tells me that in addition to those above DivX can be played, with video codecs: DIV3, DIV4, DIVX, DX50, DIV6 and audio: MP3, MPEG, AC3

In addition however the manual generally does say: Mediafiles manipulated by PC may not be played correctly...

Specifically regarding DivX the manual then says: Depending upon the software used to produce the DivX-files, those files possibly will not be recognized...

:\

I did already tests with MPG-2 and failed. Unfortunately I do not remember exactly which specific line I handed to ffmpeg to encode that MPG2 file but I think I told it to use mpeg2video. However that didn"t work.

I hope my question doesn't sound too confused, but it is not my own TV-set so I do not have much time for testing and playing around. I just got the manual and have to say this manual to me is not clear at all in the actual abilities of that dumb VIERA Mediaplayer and on top of this it seems that the Mediaplayer might play (or not play) formats based on the actual type of datastorage (the really annoying side of proprietary soft- and hardware ;( )

So could ffmpeg be of any help to that encoding problem? Any hint will be appreciated and surely be tested :)

Many thanks in advance

OK comments may not contain too many characters, so I'll put it in here:

Dear @llogan

As suggested I encoded those testvideos and am glad to tell you that:

>ffmpeg -f lavfi -i testsrc2=s=640x480:r=25:d=10 -f lavfi -i sine -c:v libxvid -c:a libmp3lame -ac 2 -shortest mpeg4_xvid_mp3.avi

did pass the pickiness of that TV :)

Besides: every suggested ffmpeg commandline produced some Video, except this one: >ffmpeg -f lavfi -i testsrc2=s=640x480:r=25:d=10 -f lavfi -i sine -c:v mpeg4 -c:a libmp3lame -ac 2 -shortest -vtag divx mpeg4_mp3_b.mp4

That one failed with: [mp4 @ 0x556d3df4a640] Tag divx incompatible with output codec id '13' ( [0][0][0]) Could not write header for output file #0 (incorrect codec parameters ?): Invalid data found when processing input Error initializing output stream 0:1 --

But since I'm using ffmpeg in version 3.3.9 on Linumint Debian Edition 3 I wouldn"t worry about that, it is just an older piece of software and I should maybe get a much newer version from github.

Thank you very much for the solution to my question!


TVs are notoriously picky and can be frustrating. Lacking any useful info about the device, or any video that does work to use as a reference, you're just going to have to encode a heap of test videos and test if any work.

This uses the testsrc2 and sine filters to generate video and audio for 10 second test files. Replace -f lavfi -i testsrc2=s=1280x720:r=25:d=10 -f lavfi -i sine with -i input.mp4 if you would rather use an input file.

ffmpeg -f lavfi -i testsrc2=s=1280x720:r=25:d=10 -f lavfi -i sine -c:v libx264 -profile:v baseline -vf format=yuv420p -c:a aac -movflags +faststart h264_aac.mp4
ffmpeg -f lavfi -i testsrc2=s=1280x720:r=25:d=10 -f lavfi -i sine -c:v libx264 -profile:v baseline -refs 1 -bf 0 -vf format=yuv420p -c:a aac -movflags +faststart h264_aac_nobframes_1ref.mp4
ffmpeg -f lavfi -i testsrc2=s=1280x720:r=25:d=10 -f lavfi -i sine -c:v libx264 -profile:v baseline -vf format=yuv420p -c:a aac -movflags +faststart h264_aac.mkv
ffmpeg -f lavfi -i testsrc2=s=1280x720:r=25:d=10 -f lavfi -i sine -c:v libx264 -profile:v baseline -vf format=yuv420p -c:a mp2 -ac 2 -shortest -f vob h264_mp2.mpg
ffmpeg -f lavfi -i testsrc2=s=1280x720:r=25:d=10 -f lavfi -i sine -c:v libx264 -profile:v baseline -vf format=yuv420p -c:a ac3 -ac 2 -shortest -f vob h264_ac3.mpg
ffmpeg -f lavfi -i testsrc2=s=640x480:r=25:d=10 -f lavfi -i sine -c:v mpeg4 -c:a libmp3lame -ac 2 -shortest mpeg4_mp3_a.mp4
ffmpeg -f lavfi -i testsrc2=s=640x480:r=25:d=10 -f lavfi -i sine -c:v mpeg4 -c:a libmp3lame -ac 2 -shortest -vtag divx mpeg4_mp3_b.mp4
ffmpeg -f lavfi -i testsrc2=s=640x480:r=25:d=10 -f lavfi -i sine -c:v libxvid -c:a libmp3lame -ac 2 -shortest mpeg4_xvid_mp3.mp4
ffmpeg -f lavfi -i testsrc2=s=640x480:r=25:d=10 -f lavfi -i sine -c:v mpeg4 -c:a libmp3lame -ac 2 -shortest mpeg4_mp3.avi
ffmpeg -f lavfi -i testsrc2=s=640x480:r=25:d=10 -f lavfi -i sine -c:v libxvid -c:a libmp3lame -ac 2 -shortest mpeg4_xvid_mp3.avi
ffmpeg -f lavfi -i testsrc2=s=640x480:r=25:d=10 -f lavfi -i sine -c:v libxvid -c:a libmp3lame -ac 2 -shortest -vtag divx mpeg4_xvid_mp3.avi
ffmpeg -f lavfi -i testsrc2=s=640x480:r=25:d=10 -f lavfi -i sine -c:v mpeg4 -c:a ac3 -ac 2 -shortest mpeg4_ac3.avi
ffmpeg -f lavfi -i testsrc2=s=640x480:r=25:d=10 -f lavfi -i sine -c:v mpeg4 -c:a libmp3lame -ac 2 -shortest mpeg4_mp2.avi