Minor spacing changes
[linux_from_scratch_hints.git] / OLD / mplayer.txt
blob21ccbfec32658132bee72714d4ca6daee1188182
1 TITLE:          Getting the best out of MPlayer
2 LFS VERSION:    any
3 AUTHOR:         Alex Kloss <alex@22-music.com>
5 SYNOPSIS:
6         How to get the best of the great linux media player MPlayer.
8 HINT:   
9         Your system is too slow for avifile and you like pure gcc code
10         without object orientation better anyway. Why not trying
11         MPlayer? You don't even need an X-Server to let it run. And now
12         that I've rewritten lots of this hint, it should be easy enough
13         for everyone. And it plays (almost) everything you throw at it.
15 DOWNLOADS:
16         http://www.MPlayerHQ.hu/downloads.html (CVS version should be
17         fine, but also the stable versions are known to be pretty)
19         You should also load a recent package of the windows codecs and
20         of the OSD fonts (if you don't want a On Screen Display anyway,
21         you could leave those alone). Every package is now .bz2-packed,
22         so you don't need unzip anymore. If you don't like those OSD
23         prerendered fonts, you can configure MPlayer to use freetype2
24         for a font renderer with --enable-freetype.
26         If you want gui support, you should load a gui skin of your
27         liking, too, plus you'll definitely need XFree86, libpng and
28         gtk+ (which requires glib itself).
30         Since 19.11.2002 (CVS) and release 0.90rc1, Sorenson support was
31         added. If you're interested in that feature, additionally click
32         "More binary codecs" on the download page. Get whatever you
33         want. If you load The Quicktime6 dlls, be sure to load the
34         Quicktime5 dlls, too, because the latter provides a file
35         necessary for the usage of the first. The Quicktime "extra"
36         dlls are codecs not yet supported. The rp8/9codecs are shared
37         objects for linux, the xanim codecs are binary modules.
39         In further versions, at least the Quicktime codecs might be
40         integrated into the windows codec pack.
42 OPTIONAL PREREQUISITES:
44         Video Output:
45         
46         XFree86 (look at the X hint): http://www.xfree86.org
47         aalib: http://www.aalib.org
48         SDL: (also uses X) http://www.libsdl.org
49         GGI: (if you really want it) http://www.libggi.org
50         SVGAlib: http://www.svgalib.org
51         directfb: (used by SDL as well as by MPlayer)
52         http://www.directfb.org
53         glib/gtk: http://www.gtk.org (only for gui)
54         libpng: http://www.libpng.org (needed for gui, too)
55         
56         Video Codecs / Content Decryption:
57         
58         xvid: http://www.xvid.org OR
59         divx4linux: (Videocodec: http://www.projectmayo.com, look on
60         http://www.divx.com or http://avifile.sourceforge.net for an
61         actual binary version or get the cvs version)
62         ffmpeg (dito: http://ffmpeg.sourceforge.net; use CVS if
63         possible, obsolete when using mplayer release version)
64         LZO: http://www.oberhumer.com/opensource/lzo/
65         XAnim Codecs: http://Xanim.va.pubnix.com/
66         RealPlayer Libs:
67         http://huxley.real.com/real/player/unix/unix.html?src=rpbform
68         libdvdnav: http://dvd.sourceforge.net (DVD Navigation support)
69         unrarlib: http://www.unrarlib.org (can play files directly from
70         .rar archives - even splitted ones!)
72         Audio Stuff:
74         Ogg Vorbis: (read the Ogg/Vorbis-Hint) http://www.xiph.org
75         MAD (Mpeg Audio Decoder): http://mad.sourceforge.net
76         liba52: (ATSC A/52 Decoder): http://liba52.sourceforge.net
77         cdparanoia: (for CD playing) http://www.xiph.org
79 INSTALL:
80         aalib:
81         ------
83         Before installing aalib, you should ask yourself if you really
84         need it. It's not usable to really watch something (in console
85         or not), you'll mostly have a picture like that:
87 ||  00:00:01 ....-..............................................................
88 ------ PAUSED -------................................. .. ... ..................
89 ++=++++++++=;;.:.-..-.-.-.......................................................
90 +++++++|+|+||||==;.::.:.-.--.-.....-...........-.......................-.:..-...
91 vIi|++|++|i||Iiilvi;:-------:.:-:.::::-:.:.:.:----:-:.:.:....-.::.:.:.:-:.:.:-::
92 IIvlxii|i|||+il%||l|::-:.:-:.:-.:.:.:.:-:-----:.:.:.:-:.:.:<>_::.::-:-:.:.:::::.
93 llIIlvvvIliii||Iixlx==:-::-----:-:-:::::::::::.::-:--:.:-:-::)9aa.::.:-:-::::-::
94 lvvvIIIIvvIlIIlilIIIi::::::::::-:::::::::::::-::-:-:::::::-::::+Xma;::::::::::::
95 vIIIIvvIvIvvvvIllIvIi;::::::::::::::::;:;:::::::::::::::::::::::+xUb;;:;::::::::
96 vvvvlIlIvIvvnvvlllvvvi;;:;;;:;:;:;;=;=;;;;;;;;;;;:;:;:;;;=;;;;;::=Idm;==;=;;;;;;
97 llvvvlvIlIvvvvvvvlvvvvi;=;=;=;;=;=;;=;=;===;=;=;=;=;====;===;=;=;=|1Zz==========
98 llIIIvIvIIIvvvvvvvvvvnI>;=;==;==;=;=================;=;===========<oXX=+========
99 lIvIvvvvIIIIvIvvlvvvnIv>====;====;===;=============================iXA++++++++++
100 llvIvvvIIlllllvlvvvvnxilii=|=+==========================+===+=+=++|lnc++=+++++++
101 lllvIvvvvIliiIIIvIvvnvli|ilIxox====================+=+=+=+++++=++<xww|+++++++|++
102 IIIllIIvvIliIIIIIvIvnvvli|ilvvnn>=+===+==+=++=++++++=++++++=++++<idWt=+++|++++|i
103 IliIvlvIIvvIIlllIlIIvvvIiiiiinvns=++++=++=+=++=+=+=++++++++++++xumZ(=+|++++|=xn1
104 liillvIIvIvIvlIIIIvlIIvvIIIiiI1vi|=+=+++=++++=++++++++++++++|iumZ!=++|=+|++<xnnn
105 liliiiilllIvvvvlvIIIIvvvvvvililvlI>+++=+++++=+++++++++++|saoYT!|=+|+|++|++|ISovv
106 liiiiilIlvvvvvvlIIvvIvvvvIIlliilII|++=++++++++|=++|++|+|=+++++|+|+|++|+|+|+|3nnv
107 i|i||iiilIIvvvIllllvvvlvvxIli|inI|+++|+||+++++++|++++++++|+|+|++|++|+||xsi|ixnnv
108 ii|iiiilllIllIIliiillillxvvvvvvvv|||i||||i|||++++++|+|+|++|++|+|++|++xnnnnnnnnnn
109 iiiiillllllIIIIlilllllllvvvvlIvvx>||||iiiiii++|+|+|=+++|+|++|++|+|+||IvvIvvnnnon
110 vlvIlilillvllllliilll +++ Welcome to ASCII ARTS MPlayer +++ |+|+iixvvnvllIvnoooI
111 ""^~^~~^~^^~^^~~^~~^"^""^^""""^^~~^^""^^^^~^^^^~-~----~--~--~--~"^^^^^^~^^^""~~~
113         Maybe you'll recognize the DreamWorks trailer, but I wouldn't
114         bet on it! It's more a "show off"-feature to make the windows
115         users envious... anyway, to install it, simply type
117         ./configure --prefix=<e.g. /usr> &&
118         make &&
119         make install
121         Don't forget to replace "<e.g. /usr>" with the prefix you want
122         to install aalib to.
123         
125         SDL
126         ---
128         This is a marvellous library for multimedia functions. It
129         provides fast scaling and full screen functions using X,
130         framebuffer or even ascii art. It's also necessary for a lot of
131         other multimedia programs and games, so if you're interested,
132         you should have it installed anyway. On the other hand, it's
133         not really necessary for fast output. If you want it anyway,
134         install it with the following commands:
136         ./configure --prefix=<e.g. /usr> &&
137         make &&
138         make install
140         Don't forget to replace the prefix statement here, too.
143         GGI
144         ---
146         Some guys had the nice idea of doing a framework to unify all
147         graphic "targets" like ascii art console, X server,
148         SDL, svgalib, framebuffer device, and whatever implemented. The
149         drawback was mostly on security. I've tested it in an earlier
150         version, but don't like to install it on my current system.
151         Please refer to the install instructions of the developers.
154         SVGAlib:
155         --------
156         The framebuffer device in the kernel is still said to be
157         experimental. SVGAlib is what the linux community used before
158         to have full access to their graphics hardware. It's still
159         pretty stable, fast and usable. Only drawbacks: you need root
160         rights to run it and it got no accelerated scaling functions.
162         ./configure --prefix=<e.g. /usr> &&
163         make &&
164         make install
166         Please read the documentation!
169         directfb:
170         ---------
171         Since the framebuffer device is somewhat complicated to use,
172         there's a library called directfb, which is an abstraction
173         graphic layer featuring things like fast resizing, rendering,
174         and so on. Hopefully, the installation works with:
176         ./configure --prefix=<e.g. /usr> &&
177         make &&
178         make install
180         And the prefix should be replaced, too.
181         
183         ffmpeg:
184         -------
186         MPlayer release versions usually come with an actual copy of
187         libavcodec, so you may want to skip the following steps if you're 
188         using this version. The actual CVS version of libavcodec has
189         divx5 abilities, so you might want to get it when using other
190         versions:
192         cvs \
193         -d:pserver:anonymous@cvs.ffmpeg.sourceforge.net:/cvsroot/ffmpeg\
194         login && [press enter for password]
195         cvs -z3 \
196         -d:pserver:anonymous@cvs.ffmpeg.sourceforge.net:/cvsroot/ffmpeg\
197         co ffmpeg/libavcodec &&
198         cd ffmpeg &&
199         ./configure --prefix=<e.g. /usr> &&
200         make &&
201         make install
203         To use ffmpeg codecs with mplayer, you need to copy the whole
204         libavcodec dir to the mplayer source main dir:
206         cp -av libavcodec ../MPlayer-<version>/libavcodec
208         Now ffmpegs libavcodec will be available for mplayer.
211         divx4linux (libdivxdecore)
212         --------------------------
214         divx4linux aka OpenDivX is considered closed source since
215         the releases are binary-only. Xvid on the other hand, does
216         nice and frequent source releases (Xvid is discussed in the
217         next section).
219         MPlayer can use divx4linux OR xvid. If you choose for one of
220         it, you can't use the other.
221         
222         The CVS version compiled fine for me, at least the decoding
223         stuff was easy. To get all of it, type
225         cvs -d:pserver:anonymous@cvs.projectmayo.com:/cvsroot \
226         login &&
227         cvs -d:pserver:anonymous@cvs.projectmayo.com:/cvsroot \
228         co divxcore
230         Compile the CVS version:
232         cd divxcore/decore/build/linux &&
233         make &&
234         cp libdivxdecore.so /usr/local/lib &&
235         ln -s /usr/local/lib/libdivxdecore.so \
236         /usr/local/lib/libdivxdecore.so.0 &&
237         cp ../../src/decore.h /usr/local/include &&
238         cd ../../../encore/build &&
239         mkdir linux &&
240         cd linux &&
241         cat > Makefile << "EOF"
242 CC=gcc
244 SRCDIR=../../src
246 CFLAGS_INTEL=-D_ATT_SYNTAX -I$(SRCDIR)
248 CFLAGS=-g -fPIC -Wall -DLINUX -D_DECORE -I$(SRCDIR) $(CFLAGS_PLATFORM)
250 SOURCES=$(SRCDIR)/_test_main.c $(SRCDIR)/encore.c \
251     $(SRCDIR)/bitstream.c $(SRCDIR)/mom_access.c $(SRCDIR)/mom_util.c \
252     $(SRCDIR)/mot_code.c $(SRCDIR)/mot_est_comp.c $(SRCDIR)/mot_est_mb.c \
253     $(SRCDIR)/mot_util.c $(SRCDIR)/putvlc.c $(SRCDIR)/rate_ctl.c \
254     $(SRCDIR)/text_bits.c $(SRCDIR)/text_code.c $(SRCDIR)/text_code_mb.c \
255     $(SRCDIR)/text_dct.c $(SRCDIR)/vop_code.c
256                                  
258 OBJECTS=$(SOURCES:.c=.o) $(SOURCES_PLATFORM:.c=.o)
260 all: libdivxencore.so
262 libdivxencore.so: $(OBJECTS)
263         $(CC) -shared -lc -lm $^ -o $@
265 clean:
266         rm -f libdivxencore.so $(OBJECTS)
267 EOF &&
268         make &&
269         cp libdivxencore.so /usr/local/lib &&
270         ln -s /usr/local/lib/libdivxdecore.so \
271         /usr/local/lib/libdivxdecore.so.0 &&
272         cp ../../src/encore.h /usr/local/include &&
273         ldconfig
275         You may exchange /usr/local with any prefix of your liking.
277         If you want to use the released source library (and since you're
278         on LFS, I do think so), simply:
280         ./configure --prefix=<e.g /usr/X11R6> &&
281         make &&
282         make install &&
283         ldconfig
285         You could also use the binary version that was shipped w/
286         avifile (http://avifile.sourceforge.net), though it has a very
287         crude installation script and is not really optimised.
290         xvid
291         ----
293         Warning: Xvid can't be used if divx4linux is enabled!
295         Xvid is another free implementation of an mpeg4/divx-compatible
296         codec. It's very optimized for x86-CPUs and capable of playing
297         most divx-encoded movies. For installing it, type:
299         cd xvidcore/build/generic &&
300         # [uncomment if wanted] vim Makefile.linuxx86 &&
301         make -f Makefile.linuxx86 &&
302         make -f Makefile.linuxx86 install &&
303         ldconfig
305         Now xvid should be found when you start Mplayer's configure
306         script.
309         LZO
310         ---
312         LZO is a fast, lossless-compression library. You can use it
313         to compress raw audio/video data. It's also usable by transcode
314         so you could use it for previewing stuff. It usually achieves
315         compression values around 50%, so a usual TV Signal stream
316         should be compressed to 10MB/sec. It's not that usable to the
317         usual user, as you can see, but since transcode supports this
318         format... it works like everything else:
320         ./configure --prefix=<e.g. /usr> &&
321         make &&
322         make install
324         Replace the prefix at will or leave this switch out.
326         
327         xanim
328         -----
329         
330         You could install that old avi player. You also could use but
331         the codecs, but be warned that the unlicensed use of the codec
332         with another program than xanim is illegal. If you don't bother
333         about legality issues, you may proceed, but you've been
334         warned... just unpack the codecs to /usr/local or another
335         directory of your choice and tell MPlayer with the switch
336         --with-xanimlibdir=... where you stored those files.
339         libdvdnav
340         ---------
342         This package allows you to use DVD navigation. Mplayer's
343         documentation reports the support to be unstable, so you better
344         try it yourself if you think you need it. Installation is easy:
346         ./configure --prefix=<e.g. /usr> &&
347         make &&
348         make install
350         The prefix could be replaced here, too.
353         w32-binaries
354         ------------
356         This package holds the windows codecs currently supported by
357         mplayer. You're supposed to unzip the content to /usr/lib/win32
358         or any other dir specified during the execution of the mplayer
359         configure script with the --with-win32libdir=<directory> option.
361         If you have a windows codec not to be in that package and want
362         it supported, you could put it in that package, edit the
363         codec.conf file and try to use it anyway. If it doesn't work,
364         look at the documentation and contact the authors.
367         Quicktime and other codec packs
368         -------------------------------
370         All dll codecs should go right into the /usr/lib/win32
371         directory or whatever you've used for it when you installed the
372         windows codecs. 
373         The realplayer codecs are in linux shared object (.so) format,
374         so you can unpack them directly to /usr/local or another
375         directory of your liking and tell ./configure the place where
376         you've put them: --with-reallibdir=<e.g /usr/local/rp9codecs>.
379         unrarlib
380         --------
382         Unrarlib enables mplayer to play files directly from .rar
383         archives (only those made by WinRAR 2.9 or older, WinRAR 3.0
384         files are not supported yet). A copy of that library comes with
385         every release version. To get it into the CVS versions, simply
386         copy the necessary files to the MPlayer directory:
388         cp -v ../unrarlib-<version>/unrarlib/* .
389         
390         <version> should be replaced with the actual version number
391         (which is 0.4.0 at the current date). The unrarlib files are 
392         autodetected, so don't bother.
395         liba52, MAD, Ogg/Vorbis
396         -----------------------
398         Both packages liba52 and MAD are autodetected and compile right
399         out of the box with a short:
401         ./configure &&
402         make &&
403         make install
405         There's a good hint about Ogg/Vorbis, so read this if you need
406         it.
409         mplayer
410         -------
412         This pal has a whole bunch of options, so I will only name a
413         few helpful ones that aren't autodetected anyway to save you a
414         lot of hassle:
416         ./configure --prefix=<e.g /usr/X11R6> --enable-largefiles \
417         --enable-gui --enable-menu --enable-liblzo --enable-vorbis \
418         --enable-freetype --with-extraincdir=/usr/X11R6/include \
419         --with-extralibdir=/usr/X11R6/lib &&
420         make &&
421         make install
423         Replace the prefix with your liking. To explain all those other
424         options, I've done the following list, all options with a hint
425         what to choose (in case you don't know what to do with them).
427         --disable-mencoder      mencoder is an <whatever mplayer plays>
428                                 to divx4-encoder that comes with all
429                                 newer CVS versions. If you don't want it,
430                                 you may disable it here. If you don't
431                                 use divx4linux, it wouldn't be
432                                 activated anyway.
433                                 [don't use this switch]
435         --enable-gui            If you want mplayer with a gui (and
436                                 since the developer don't want it for
437                                 good reasons, it's deactivated by
438                                 default), you need to enable it here and
439                                 start mplayer with the -gui option
440                                 afterwards. You need glib/gtk+ and
441                                 libpng for the gui!
442                                 [If you need a gui, OK. It wouldn't
443                                 make it faster! Otherwise, don't touch
444                                 it.]
445                                 If you enable this, don't forget to
446                                 download the gui skins!
448         --enable-largefiles     It so happens that actual file systems
449                                 are able to manage files larger than
450                                 2GB. If you want mplayer to be able to
451                                 play those files, you should use this
452                                 option.
453                                 [you probably won't need it, but it
454                                 doesn't hurt anyway]
456         --enable-linux-devfs    Tells mplayer to search for devfs
457                                 devices.
458                                 [If you don't know what this is, better
459                                 not touch this]
461         --enable-termcap        The keystroke detection could be
462                                 managed using libtermcap. I haven't yet
463                                 found out what use this has.
464                                 [It's autodetected anyway]
466         --disable-iconv         MPlayer should not use the iconv(3) 
467                                 function. "man iconv" tells us it's
468                                 something about character conversion.
469                                 [Autodetected]
471         --disable-setlocale     If you don't want locale support, use
472                                 this switch.
473                                 [Mplayer will autodetect missing locale
474                                 support, so don't bother]
476         --enable-lirc           If you want to control mplayer via
477                                 infrared remote control, you need an IR
478                                 reciever and lirc (since I've never used
479                                 this, I don't know much about it - so
480                                 don't bother me).
481                                 [autodetected too]
483         --enable-joystick       Yes! You can control mplayer with your
484                                 joystick. You've got none? Poor you.
485                                 [Only if you've got any joystick that's
486                                 already set up properly, this switch
487                                 has any use at all]
489         --disable-tv            It is a not well known fact that you
490                                 can use mplayer as well to watch tv
491                                 using a video4linux or dvb grabber-card.
492                                 [If you haven't such a card or don't
493                                 want to use mplayer to watch TV, you
494                                 may use that switch]
496         --disable-tv-v4l        If you have got a dvb grabber card, but
497                                 no video4linux-card, you may want to
498                                 disable that annoying "try to find 
499                                 /dev/video"-stuff.
500                                 [if you have a bttv-card or similar,
501                                 don't touch it, otherwise you may use
502                                 it] 
504         --disable-tv-bsdbt848   The BSD interface for Brooktree Chipsets
505                                 can be disabled. Since this is an LFS
506                                 hint, you should be running linux, not
507                                 BSD.
508                                 [Autodetected anyway]
510         --disable-rtc           The usage of /dev/rtc can help 
511                                 synchronizing audio/video. If you have
512                                 it, mind. If you want to use it
513                                 properly without giving mplayer root
514                                 permissions (which is seriously inse-
515                                 cure), you may want to add the line
516                                 "echo 1024 > \
517                                 /proc/sys/dev/rtc/max-user-freq" to
518                                 your setclock script.
519                                 [Autodetected]
521         --disable-streaming     Mplayer can play stuff from http://,
522                                 mms:// or even rtp://. If you don't
523                                 want this, you can disable it.
524                                 [If your computer isn't connected to
525                                 the net in any kind, you can use this
526                                 switch, otherwise leave it alone]
528         --enable-live           LIVE! is a library for streaming media.
529                                 If you've got it on your system, you
530                                 may want to enable it. Look into the
531                                 docs for more info.
532                                 [Disabled by default; if you don't have
533                                 the lib, you don't need it]
535         --disable-dvdnav        DVD navigational support via libdvdnav
536                                 can be disabled. The documentation says
537                                 it would be unstable. I haven't tested
538                                 it yet.
539                                 [Autodetected]
541         --disable-dvdread       Mplayer's usage of libdvdread can be
542                                 disabled this way.
543                                 [Autodetected]
545         --disable-mpdvdkit      Disable Mplayer's own libraries for DVD
546                                 decryption support.
547                                 [Autodetected, but it only searches for
548                                 UDF support anyway, as far as I can see]
550         --disable-css           Disable old-style libcss DVD support.
551                                 Since mplayer comes with it's own libs,
552                                 you probably don't need that anyway.
553                                 [Autodetected, rather not mess with it]
555         --disable-cdparanoia    Disable cdparanoia support. You can't
556                                 use mplayer anymore to play audio CDs
557                                 then.
558                                 [Autodetected]
560         --enable-freetype       Enable freetype2 font rendering support
561                                 [Disabled by default. If you've got the 
562                                 font package, you wouldn't need it 
563                                 anyway]
565         --disable-unrarlib      Mplayer can use Unique's RAR File 
566                                 Library to play files that are packed
567                                 in a .rar archive.
568                                 [autodetected if available]
570         --disable-new-conf      New configuration parser code, which is
571                                 necessary for menu support can be
572                                 disabled. OK, it may be experimental,
573                                 but it works very well for me.
574                                 [Don't touch it]
576         --enable-menu           Enable On Screen Display (OSD) menu -
577                                 it's like a command line shell rendered
578                                 over your movie - def'nitely a show-off
579                                 option in mplayer.
580                                 [It's cool, but you don't need it]
582         --enable-gif            Using libungif, you can make mplayer
583                                 using gif files for a video output.
584                                 [Autodetected]
586         --enable-png            Same for libpng and png images.
587                                 [Autodetected]
589         --enable-jpeg           Same for libjpeg and jpeg images.
590                                 [Autodetected]
592         --enable-liblzo         lzo is a lossless movie compression.
593                                 Mplayer can use it or not.
594                                 [Autodetected]
596         --disable-win32         If you dislike the thought of
597                                 using closed-source codecs, you may
598                                 disable thusly. You could also let this
599                                 option remain but not use that codec
600                                 by default (see CONFIGURE section)
601                                 [Nope]
603         --disable-dshow         Only disable the directshow
604                                 codecs. DirectShow is a multimedia
605                                 extension to the ms video libraries, so
606                                 the codecs could use the graphic 
607                                 hardware almost directly. Strangely, on
608                                 some systems are these codecs much
609                                 slower.
610                                 [Nope]
612         --disable-xanim         I hope you've read the section
613                                 above. Anyway, there's not much stuff
614                                 only accessible with the xanim codecs
615                                 (some quicktime movies, though).
616                                 Remember it's illegal!
617                                 [If you have xanim or codecs installed
618                                 and want to avoid legal issues, you
619                                 should use that switch; nope]
621         --disable-real          If you don't want mplayer to use the 
622                                 libraries that comes with the real
623                                 player, you can use this switch.
624                                 [Don't bother unless something goes
625                                 wrong with Real Player]
627         --enable-vorbis         It is possible to use the free 
628                                 OggVorbis as audio codec. If you have
629                                 these libs installed, you may use them.
630                                 [Autodetected anyway]
632         --enable-faad           FAAD is the mpeg4/AAC audio codec.
633                                 [Autodetected]
635         --disable-libdv         You can use Mplayer to view your DV 
636                                 videos, preconditioned you've got libdv
637                                 installed properly. This switch is to
638                                 disable those ability.
639                                 [Autodetected]
641         --disable-mad           Disable libmad (mpeg audio) support.
642                                 [Autodetected]
644         --disable-vidix         Vidix is the new output layer
645                                 of mplayer. It's more powerful than
646                                 directfb, so you can generally call it
647                                 useful. But for those who doesn't want
648                                 it anyway...
649                                 [Enabled on *nix, not usable otherwise,
650                                 better not touch it]
652         --enable-gl             OpenGL rendering. Not the fastest
653                                 method of rendering the video output,
654                                 but nevertheless usable. Good for
655                                 OpenGL-enabled GFX-cards (like FireGL).
656                                 [Autodetected]
658         --enable-dga=[1/2]      DirectGraphicAccess is XFree's answer
659                                 to DirectX(tm), so mplayer accesses the
660                                 gfx hardware almost directly. To run
661                                 this, you need to run mplayer as root.
662                                 [Autodetected; if DGA2 gives you
663                                 errors, you may use that switch to
664                                 downgrade to DGA1]
666         --enable-vesa           Low-level VESA drivers (somewhat faster
667                                 than svgalib, but still unaccelerated).
668                                 [Autodetected]
670         --enable-svga           SVGAlib support (needs to be run as
671                                 root).
672                                 [Autodetected]
674         --enable-sdl            libSDL support (read the stuff about
675                                 SDL). Nice, but doesn't smarten mplayer
676                                 up, anyway.
677                                 [Autodetected]
679         --enable-aa             AA-lib gives you cool-looking textmode
680                                 output. It may be not very usable to
681                                 watch your movies anyway, but provides
682                                 a nice effect (and you could use it in
683                                 console too, even via telnet!).
684                                 [Autodetected]
686         --enable-ggi            GGI can handle multiple devices (AA,
687                                 SDL, X11, DGA, SVGAlib etc. pp). It is
688                                 also considered to be insecure.
689                                 [Autodetected]
691         --enable-directx        This is somewhat undocumented. I guess
692                                 it's used for the cygwin port of mplayer
693                                 (since you seem to be running LFS...)
694                                 [Autodetected]
696         --enable-dxr2           The DXR2 is a Video Decoding Hardware
697                                 that can be used through that driver.
698                                 [Autodetected]
700         --enable-dxr3           If you have a DXR3/H+ Video Hardware
701                                 Decoding board, you may use it with
702                                 that driver.
703                                 [Autodetected]
705         --enable-dvb            Some DVB cards have video output
706                                 abilities.
707                                 [Autodetected]
709         --enable-mga            If you have a Matrox MGA[200/400/450]
710                                 card, you may compile the mga_vid
711                                 module, load it and have really fast
712                                 overlay graphics.
713                                 You need to set up the device before
714                                 you try to use/detect it:
716                                 cd drivers &&
717                                 make &&
718                                 cp mga_vod.o /lib/modules/<kernel-
719                                 version> &&
720                                 cd .. &&
721                                 mknod /dev/mga_vid c 178 0 &&
722                                 insmod mga_vid.o
724                                 You may also add to modules.conf:
725                                 alias char-major-178 mga_vid
727                                 [Autodetected]
729         --enable-xmga           Same for XFree.
730                                 [Autodetected]
732         --enable-xv             X Video extension. Works mostly out of
733                                 the box. Only on some Trident and some
734                                 older cards (especially on notebooks),
735                                 you may get errors with XFree86 4.1 and 
736                                 older versions. Don't report that
737                                 errors as MPlayer bugs! That are errors
738                                 of XFree86!
739                                 [Autodetected]
741         --enable-vm             Enable the changing of video modes. On
742                                 a normal CRT, you may want that.
743                                 [Autodetected]
745         --enable-xinerama       You could even use more than 1 Screen
746                                 to display your movie.
747                                 [Autodetected]
749         --enable-x11            X11 software rendering (slow, no
750                                 scaling). Useful for making screenshots.
751                                 [Autodetected]
753         --enable-fbdev          If you have framebuffer device
754                                 support in your kernel and want to use
755                                 it with mplayer, you may enable this.
756                                 [Yes, if you have /dev/fb0; nope]
758         --enable-fbdev=noocpy   If you want to decode directly into the
759                                 framebuffer (without pre-caching), you
760                                 can enable it with this switch, but it
761                                 will possibly result in an untidy image.
762                                 [Leave it alone]
764         --enable-mlib           Solaris uses mlib for graphics output.
765                                 Considered you're running Linux, you
766                                 don't need anything of this.
767                                 [Autodetected anyway]
769         --enable-3dfx           Like --enable-mga, only for 3dfx cards
770                                 (all cards currently supported by the
771                                 XFree86 tdfx driver). Look at the docs.
772                                 [You'll need to enable it, if you want
773                                 to use it; nope]
775         --enable-tdfxfb         There's a accelerated framebuffer 
776                                 driver for 3dfx cards. If you're using
777                                 this one, it could speed things up.
778                                 [look above; nope]
780         --enable-directfb       That's a library to access fast
781                                 framebuffers. Nice to watch vids
782                                 without XServer.
783                                 [Autodetected]
785         --enable-zr             MJPEG capture/playback cards with Zoran
786                                 chips (like LML33 and Miro DC10/DC10+)
787                                 can be used. Read the documentation!
788                                 [Never mind, autodetected]
790         --enable-bl             Ever heard of Blinkenlights? If you've
791                                 want to use the lights of your
792                                 skyscraper for viewing videos... No?
793                                 [Don't touch it unless you know what
794                                 you're doing]
796         --disable-ossaudio      If you don't want the normal OSS sound
797                                 driver to be used (ALSA-only system?).
798                                 [Autodetected]
800         --disable-arts          KDE's sounddemon arts can be used or
801                                 not. If you're not anymore using KDE,
802                                 but have arts available, this switch
803                                 can come handy.
804                                 [Autodetected otherwise]
806         --disable-alsa          If you don't want the ALSA driver to be 
807                                 used...
808                                 [Autodetected]
810         --disable-sunaudio      Disable SUN audio support. I can't
811                                 imagine where this option should be
812                                 usable.
813                                 [Autodetected]
815         --disable-win32waveout  Another option for the cygwin
816                                 compilation, don't bother.
817                                 [Autodetected]
819         --disable-select        If you want to disable OSS soundcard
820                                 selection. Some older OSS drivers can't
821                                 cope w/ that.
822                                 [If you have new OSS drivers/hardware,
823                                 you may give it a try; nope]
825         --enable-runtime-cpudetection
826                                 You can compile an mplayer binary
827                                 that'll run on any CPU.
828                                 [Not recommended]
830         --language=xx           xx: cz de dk en es fr hu nl no pl ro ru
831                                 Select your language. It happened on
832                                 earlier versions that this could cause
833                                 errors due to unfinished
834                                 internationalisation. If you encounter
835                                 such errors, try to leave that switch
836                                 away.
837                                 [Since you're reading this, you
838                                 understand english: nope]
840         --enable-shared-pp      Makes a shared post-processing library
841                                 that can be used e.g. by transcode.
842                                 [If you've want to use transcode, use
843                                 this switch!]
845         Most of the following CPU instruction set enhancements options
846         can only be used if you have a recent 2.4. kernel!
848         --enable-mmx            Intel's MultiMediaeXtension can be used
849                                 to archieve faster decoding.
850                                 [Autodetected]
852         --enable-mmx2           P3 and Athlon have an newer version of
853                                 that codeset.
854                                 [Autodetected]
856         --enable-3dnow          AMD K6-II/III have 3D-now! instead of 
857                                 MMX.
858                                 [Autodetected]
860         --enable-3dnowex        3D-now!-DSP support on K7 (older Athlon)
861                                 [Autodetected]
863         --enable-sse            Newer Celeron/P3/P4 CPUs have an
864                                 enhanced instruction set that helps to
865                                 decode movies.
866                                 [Autodetected]
868         --disable-fastmemcpy    Some systems may have problems on fast
869                                 memory copy. If you get such troubles,
870                                 you may disable this here.
871                                 [nope]
873         --enable-debug=[1-3]    If you're interested in how the code
874                                 works... but then you'd probably
875                                 wouldn't need this hint anyway...
876                                 [nope]
878         --enable-profile        Another debugging option...
879                                 [nope]
881         --disable-gcc-checking  If you're in the habit of using
882                                 a flawed gcc version (like the ones
883                                 from redhat), you could do with that
884                                 switch.
885                                 [nope]
887         --with-extraincdir=...  If you have videocodecs etc in another
888                                 dir than /usr/local/include, you should
889                                 set it here.
890                                 [=/usr/X11R6/include can never hurt]
892         --with-extralibdir=...  Same for libs.
893                                 [=/usr/X11R6/lib wouldn't hurt]
895         --with-csslibdir=...    You could use lib(dvd)css to watch
896                                 encrypted DVDs.
897                                 [nope (illegal)]
899         --with-madlibdir=...    MAD, the mpeg audio decoder can be used
900                                 to decode mp2/3 audio with astonishing
901                                 precision. Point mplayer to where it's
902                                 installed.
903                                 [mostly autofound]
905         --with-win32libdir=...  Normally, the windows codecs are stored 
906                                 to /usr/lib/win32. If you want another
907                                 place, you can set it here.
908                                 [nope]
910         --with-xanimdir=...     Where the xanim codecs are installed.
911                                 [nope (illegal)]
913         --with-reallibdir=...   Where the real codecs are installed.
914                                 [e.g. =/usr/local/rp9codecs]
916         --with-sdl-config=...   If it's not found automatically
917                                 [e.g. =/usr/X11R6/bin/sdl-config]
919         --with-gtk-config=...   For gui support...
920                                 [e.g. =/usr/X11R6/bin/gtk-config]
922         --with-glib-config=...  Dito.
923                                 [e.g. =/usr/X11R6/bin/sdl-config]
924                                 
926         To use mplayer, you may want to make an .mplayer directory in
927         your home directory:
929         cd ~ &&
930         mkdir .mplayer &&
931         cp <where the Mplayer sources are>/etc/codecs.conf .mplayer/
933         You can also put a config file into that directory that causes
934         mplayer to start with some predefined options, e.g. for sound
935         or video. Please read the documentation for the syntax.
938 USAGE:
939         You could look at the manpage, the very good docs in html format
940         or the helppage. Mplayer itself is very helpful indeed, too: try
942         mplayer -help
943         mplayer -vo help
944         mplayer -aahelp
945         mplayer -ao help
946         mplayer -vc help
948         and so on...
951 ADDITIONAL UTILITIES:
953         mencoder
954         --------
955         With mplayer comes an "everything to divx4"-encoder. You can
956         convert everything you can watch with mplayer to every encoder
957         you've installed before mplayer! Since the docs are pretty
958         good, only a short example of a three-pass libavcodec divx5
959         encoding of a dvd:
962         rm frameno.avi 
963         mencoder -dvd 1 -aid 128 -ovc frameno -oac mp3lame \
964         -lameopts vbr=3 -o frameno.avi
966         # mencoder should output bitrates for average encodings
967         # now, choose one of your liking! In the following lines,
968         # replace <bitrate> and <name.avi> with statements of your
969         # liking
971         mencoder -dvd 1 -aid 128 -oac copy -ovc lavc \
972         -lavcopts vcodec=mpeg4:vpass=1:vhq:vbitrate=<bitrate> \
973         -o <name.avi>
975         mencoder -dvd 1 -aid 128 -oac copy -ovc lavc \
976         -lavcopts vcodec=mpeg4:vpass=2:vhq:vbitrate=<bitrate> \
977         -o <name.avi>
979         mencoder -forceidx <name.avi>
982         Will encode first audio and then 2-pass video and finally
983         build the index (so you can jump back and forth in the movie).
986 OTHER USEFUL PROGRAMS:
988         http://avifile.sourceforge.net
990         To cut avi videos a mix of transcode and mplayer is really
991         great. mplayer to find out where to cut and transcode to do the
992         cutting.
994         Read the transcode hint of the same author.
996         Another neat program for avi cutting is avidemux. You'll find
997         it at
999         http://fixounet.free.fr/avidemux/
1001 Since this hint will never ever be complete nor perfect, I'd like your
1002 updates send to alex@22-music.com!
1004 Hope this was helpful anyway!
1006 Alex (LX)