MPlayer binary is compiled for Internet Tablet OS 2006. It does not work on Internet Tablet OS 2005. Most likely that's the problem you encountered (and you are not the first, check older messages in this forum thread).
Found the problem: I can't execute it from my MMC card, I have to copy it into the main filing system (i.e. /usr/bin/ rather than /media/mmc1/).
Odd Maemo restriction...
Works like a dream though - I'm now considering various transcoding strategies. Know of a way of getting mencoder or transcode to add horizontal or vertical bars to movies so that I can encode them to 400x240 or 320x240 whilst maintaining the original picture aspect ratio?
This is not so odd if you consider that FAT filesystem used on MMC cannot preserve permissions (including executable bit). With FAT either everything is executable (with proper mount flags) or nothing. Nothing is better/safer choice.
Meanwhile, here's a Perl script that I've knocked up that will recode anything you can throw at Mencoder to produce a 300kbps video 96kbps audio 15fps video file, at 320x240 or 400x240 depending on aspect ratio, with vertical or horizontal bars added if need be.
Why would anyone want black border encoded in the video? Fullscreen playback should add it at no cost BTW for the parameters you mentioned (15fps) default video player should be good enough, is there problem with such videos?
Regarding the bars, the problem is with videos which aren't precisely 4:3 or 15:9. If you're after generating a 320x240 or 400x240 video, then you're going to have to add bars or distort the picture. I prefer to add bars.
Regarding framerate, I've found that the lag between sound and video is smaller when using 15fps rather than 25fps.
EDIT: Aha, just re-read this thread and discovered the "-vo sdl -ao sdl" option - the 25fps movie I generated is smooth and in synch now! Actually, even the full-sized movies are smoother too... will have to re-think this...
Inserting bars will waste bits for en/decoding. You should use the aspect tag in the MP4 header via mplayer's -lavcopts aspect=16/9 (or 4/3, or autoaspect). If you can't get correct 4/3 or 16/9 then use -vf scale to adjust the vertical size of the content so it doesn't appear out of ratio (if your source is 2.35:1, 1.88:1, etc.). At 320x and 400x, a little chopping is not going to cost you any quality.
Regarding the bars, the problem is with videos which aren't precisely 4:3 or 15:9. If you're after generating a 320x240 or 400x240 video, then you're going to have to add bars or distort the picture. I prefer to add bars.
Well, you don't need to add bars, the player should respect aspect ratio. With -vo x11 the player tries to scale video twice (using hardware pixel doubling), if it still fits screen, pixel doubling is used. So it either displays unscaled video or doubled. 320x240 and 400x240 were just examples of video resolutions that are good for pixel doubling (and 352x288 is bad). And for 16:9 video, the best resolution would be 400x224.
Originally Posted by
Regarding framerate, I've found that the lag between sound and video is smaller when using 15fps rather than 25fps.
Maybe that's because of esd output module that is used by default. And with -ao gst some lag also exists, it should be compensated in some way later.
Originally Posted by
EDIT: Aha, just re-read this thread and discovered the "-vo sdl -ao sdl" option - the 25fps movie I generated is smooth and in synch now! Actually, even the full-sized movies are smoother too... will have to re-think this...
I also used -ao sdl first, but found some problems with it on a few video clips (it was quite buggy). So now -ao esd is used by default.