Forum: Linux and Free Software
Topic: MPlayer 0.90x
started by: stupid_idiot
Posted by stupid_idiot on Aug. 14 2008,09:51Hi all:
The MPlayer version used is 0.90rc2. (This is the version where the "builtin codecs.conf" feature was added for convenience -- so MPlayer no longer needs "~/.mplayer/codecs.conf" to work.)
With some hacking (remove seldom-used codecs from libavcodec/libmpcodecs and audio/video filters/outputs; disable encoders in libavcodec), the size is ~300K (using UPX 3.03 'upx --lzma -9 ./mplayer').
(Please refer to patch below.)
Was built with GCC 2.95.3 and Binutils 2.16.1.
CFLAGS="-march=i486 -Os -ffast-math -fomit-frame-pointer -fdata-sections -ffunction-sections -Wl,--gc-sections"
Patch here: < http://pastebin.com/f292b4e25 >
MPlayer 0.90rc2 configuration: < http://pastebin.com/f7bc14095 >
Could be useful as a command-line player that plays most avi's, aside from h264. Vorbis and AAC support can be compiled in if desired.
Sorry, should have posted this in "Ideas and Suggestions".
Update: See improved patch above.
- Removed seldom-used codecs from libavcodec/libmpcodecs.
- Removed libmpeg2.
- Removed some demuxers.
- Removed some a/v filters and outputs.
MPlayer unstripped is 1488K.
Stripped is 864K.
UPX-compressed is 268K. ('upx --lzma -9 mplayer')
Posted by ^thehatsrule^ on Aug. 14 2008,19:01iirc it was decided that upx'd packages were not to be accepted - at least in the base. What is its size beforehand?
I've used the gtk+ frontend (gmplayer) before and found it easy enough to use. What's slow and hard-to-use about it?
Posted by WDef on Aug. 14 2008,21:55Interesting idea.
One thing to consider would be what support for which codecs would be included.
The MPlayer project takes an activist perspective on patents and IP - namely, they openly disregard these because they are ideologically opposed to the restrictions these attempt to impose. Xine and VLC take similar standpoints, and have got away with it so far. More power to them I say.
Not all linux distros are prepared to take that chance however. Debian will not distribute these programs because their legal team cannot agree on the risk profile, though it is probably quite low if M$ codecs are not included. However iirc lame support for encoding, libdvdcss decode, dts decode, faac and some others are controversial and in theory might incur license fees.
Posted by mikshaw on Aug. 14 2008,22:00If I remember correctly, mplayer needs to be specifically compiled to check the processor in order to be usable on the greatest number of computers, but maybe it can be set to work only with x86 (I think i586 leaves out some older machines supported by DSL).
Also don't see *much* use in a gui for mplayer, although that's just opinion. Even back when I did include the gui in my installs, I found that the only time I ever used it was for file browsing. Mplayer has a very good and easy keyboard control for just about anything related to playback.
Posted by WDef on Aug. 14 2008,22:04The real-time processor checking feature is enabled in my older mplayer uci. It slows down mplayer starting by a small amount but is better left enabled.
Posted by stupid_idiot on Aug. 16 2008,05:50Do check out the new, improved patch in the first post. (I missed out quite alot of stuff the first time round.) Cheers.
Posted by curaga on Aug. 16 2008,07:12Well, that's some nice Mplayer hacking. What formats are left in it?
Posted by stupid_idiot on Aug. 16 2008,09:18audio: wav, mp3
video: mpeg1, mpeg2, mpeg4 (but not h264)
Posted by stupid_idiot on Aug. 16 2008,09:35Next is removing ffmp2 & ffmp3 decoders by cutting out "libavcodec/mpegaudio.o" and "libavcodec/mpegaudiodec.o".
(We still have mp3lib for mp2/mp3.)
Also, remove "libmpdemux/demux_mov.o" and "libmpdemux/demux_real.o".
Now: 1776K unstripped, 1044K stripped, 320K compressed.
Updated patch posted on pastebin. (URL in first post.)
Posted by stupid_idiot on Aug. 31 2008,08:02- Further removed more unneeded demuxers and decoders. Also prevent "libavcodec/ac3enc.c" from being built.
- Disabled mp3lib.
Unstripped 1488K, stripped 864K, compressed 268K. Size will be bigger if libmad is enabled.
Patch is here: < http://pastebin.com/f292b4e25 >
Updated the URL in my first post.