Mercurial > mplayer.hg
changeset 1611:c15f0cd6d051
they've been moved to html
author | gabucino |
---|---|
date | Tue, 21 Aug 2001 20:59:23 +0000 |
parents | a9c4dc1b61b0 |
children | 1b011d6150c7 |
files | DOCS/AUTHORS DOCS/BUGREPORTS DOCS/CDROM DOCS/CODECS DOCS/DEBIAN DOCS/DGA DOCS/DVD DOCS/DVD-FAQ DOCS/DivX4Linux DOCS/FREEBSD DOCS/INSTALL DOCS/LIRC DOCS/MPlayer-FAQ DOCS/MTRR DOCS/OpenDivX DOCS/README DOCS/SDL DOCS/SOLARIS DOCS/SOUNDCARDS DOCS/SPEED DOCS/TODO DOCS/TVout-G400 DOCS/VIDEOCARDS DOCS/documentation.html |
diffstat | 24 files changed, 0 insertions(+), 4475 deletions(-) [+] |
line wrap: on
line diff
--- a/DOCS/AUTHORS Tue Aug 21 20:58:44 2001 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,183 +0,0 @@ - AUTHORS: - ~~~~~~~~ - -NOTE: Do *NOT* send bugreports, help & feature requests directly to the authors! -===== Read DOCS/BUGREPORTS and subscribe to mplayer-users mailing lists. - Patches & devel stuff should be sent to the mplayer-dev-eng mailing list. - -========================== The MPlayer project: =============================== - -Árpád Gereöffy (A'rpi/ESP-team): <arpi@thot.banki.hu> -- player code (mpeg stream demultiplexer and avi/asf parser, A-V sync, seek...) -- mp3lib, based on mpglib sources [MP3 audio decoder] -- getch2 [keyboard handler] -- some changes in libmpeg2 code (progressive frames, bitrate & fps support) -- libvo improvements: adding OpenGL support, bugfix in mga driver... -- triple buffering & YUY2 support (for DivX/MPEG4) into mga_vid driver -- scripts in the TVout directory (TVout on Matrox G400DH, read DOCS/TVout-G400) -- hacking DivX/Mpeg4 VfW codecs to get YUV output -- opendivx decoder speed optimizations (see opendivx/ChangeLog) -- OSD & SUB display code - -Zoltán Ponekker (Pontscho/Fresh!): <pontscho@makacs.poliod.hu> -- configure script and Makefiles for easy compile -- GUI system (near complete!?) -- 3DNow! support into mp3lib -- 3DNow! support into fastmemcpy.h -- various X11 driver changes (keyboard handling, fullscreen, bpp detect, etc) -- libvo: adding xmga driver, and fullscreen support to xv -- audio mixer (volume) support - -Gábor Lénárt (LGB): <lgb@lgb.hu> -- ./configure script improvements -- Makefile improvements -- prelimenary DVD support -- another GUI code (is that so..?) -- various X11 cleanups and fixes - -Gábor Bérczi (Gabucino): <gabucino@k2.jozsef.kando.hu> -- documentation maintainer -- hungarian translation of documentation -- second webpage design&gfx -- webpage maintainer -- testing, codecs quality & speed comparsions -- IRC channel #MPlayer operator -- experimental MINIX port :) - -Szabolcs Berecz (Szabi): <szabi@inf.elte.hu> -- codecs.conf file parser -- config file and command line parser -- mga_vid fixes, module option etc. -- fbdev support in libvo -- type #7 subtitle support - -László Megyer (Lez, Laaz): <lez@sch.bme.hu> -- SUB reader -- screensaver+DPMS disable for libvo - -Gyula László (Chass, Tégla): <chass-@freemail.hu> -- first fonts (mp_font1.zip) -- third (current) homepage design&gfx - -Zoltán Márk Vicián (Se7en): <se7en@sch.bme.hu> -- SVGAlib support in libvo - -Alex Beregszaszi (Al3x): <alex@naxine.org> -- ALSA output driver in libao2 -- vo_ggi output driver in libvo (www.ggi-project.org) - -Andreas Ackermann (Acki): <asackerm@stud.informatik.uni-erlangen.de> -- LIRC support (see DOCS/LIRC) -- DGA support in libvo - -Felix Bünemann (Atmos): <atmosfear@users.sourceforge.net> -- SDL driver maintainer -- Additional YUV formats fixes -- New font (mp_font2.zip) -- PNG file output support in libvo -- flipping support (for Indeo 3/4, etc) -- SDL audio driver in libao2 -- RAW PCM/WAVE file writer for libao2 - -TeLeNiEkO: <telenieko@telenieko.com> -- spanish translation of documentation - -Michael Graffam: <mgraffam@idsi.net> -- XF86VidMode support to vo_x11 and vo_dga -- Video mode switching code to vo_dga - -Jens Hoffmann: <hoffmajs@gmx.de> -- Additional YUV formats support -- found the big BITMAPINFOHEADER problem -> solved ASV2 pixelization - -Nick Kurshev: <nickols_k@mail.ru> -- memcpy optimizations for AMD K7 and Intel Pentium III (fastmemcpy.h) -- CDROM tune info -- further 3DNow! optimizations into mp3lib, libac3 and ffmpeg -- russian translation of documentation - -German Gomez Garcia: <german@piraos.com> -- SPDIF AC3 output for SBLive! - -Dariush Pietrzak (Eyck): <eyck@incubus.ar.lublin.pl> -- debian packaging support (see debian/* and DOCS/DEBIAN) -- support for vplayer subtitle format -- prelimenary support for .RT subtitle format - -Marcus Comstedt: <marcus@idonex.se> -- initial solaris8-x86 support - -Jürgen Keil and Marcus Comstedt: <jk@tools.de> <marcus@idonex.se> -- patched MPlayer to work on Solaris 8 x86 -- various fixes (win32, configure, etc) -- SUN audio driver in libao2 - -Vladimir Kushnir: <vkushnir@Alfacom.net> -- patched MPlayer to work on FreeBSD x86 - -Bertrand BAUDET: <bertrand_baudet@yahoo.com> -- network streaming support - -Artur Zaprzala: <artur.zaprzala@talex.com.pl> -- Complete font generator prog + OSD font (TOOLS/subfont-c) - -lanzz@lanzz.org: -- GIMP font generator plugin (TOOLS/subfont-gimp) - -Adam Tla/lka: <atlka@pg.gda.pl> -- osd/sub review, fixes, optimization, utf8 support -- various fixes - -Folke Ashberg: <folke@ashberg.de> -- AAlib driver for libvo (vo_aa) - -Main testers: - Tibor Balázs (Tibcu) - Péter Sasi (SaPe) - Christoph H. Lampert - Attila Kinali - Dirk Vornheder - -========================== The codecs, libs: ================================= - -Aaron Holtzman: <aholtzma@engr.uvic.ca> -- ac3dec (and libac3) author [AC3 audio decoder] -- mga_vid driver [Matrox G200/G400 YUV Back-end Scaler] -- mpeg2dec [Fast MPEG1/MPEG2 video decoder, currently used in player] - -Michel Lespinasse: <walken@zoy.org> -- did large libmpeg2 changes for better speed and mpeg conformance - -Eugene Kuznetsov: <divx@euro.ru> -- avifile author [AVI player library for linux, using Win32 VfW/ACM codecs] -- technical help about AVI and ASF formats, and how to get YUV using VfW... -- divx4linux techical support - -Zdenek Kabelac: <kabi@informatics.muni.cz> -- current avifile maintainer(?) -- some technical help about the win32 stuff and timers - -Gerard Lantau: <glantau@yahoo.fr> -- ffmpeg/libavcodec author,maintainer (opensource mpeg, mjpeg & divx codecs) - -Project Mayo: [http://www.projectmayo.com] -- the OpenDivX codec authors - -Michael Hipp: -- mpglib author [isn't used directly but some parts in mp3lib] - -Mark Podlipec: -- xa_gsm.c author [MS-GSM audio codec] - [from a GSM library by Jutta Degener and Carsten Bormann] - -Their code is not used in current player version, but I've got some ideas or -other technical help from: - -John F. McGowan http://www.jmcgowan.com/ -- AVI FAQ author/collector. [site with many useful docs on codecs and avi fmt] - -Dirk Farin: <farin@ti.uni-mannheim.de> -- dvdview author [MPEG1/MPEG2 video decoder, used in v0.5-v0.8] - -Adam Williams: <broadcast@earthling.net> -- libmpeg3 (and xmovie) author [MPEG1/MPEG2 video decoder, used in v0.1-v0.4]
--- a/DOCS/BUGREPORTS Tue Aug 21 20:58:44 2001 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,128 +0,0 @@ -How to report bugs? -~~~~~~~~~~~~~~~~~~~ -First read DOCS/BUGS, and other docs. If your problem isn't -known or isn't solved by our instructions, then report the bug: - -Where? -====== -Subscribe to the mplayer-users mailing list: - http://lists.sourceforge.net/lists/listinfo/mplayer-users -and send your bugreport to: - mplayer-users@lists.sourceforge.net -We won't CC: so please subscribe!!! - -Don't send bugreports private, directly to author's address!!! -We are working together on code, so everyone is interested in it. -BTW many times other users know the solution (system config probs, -bad drivers etc), even when we think it's a bug in our code. -The language of this list is ENGLISH ! - -Please describe your problem in details, examples etc, and don't -forget to include these: - -What? -===== - -1. The system info what we always want: -- linux distribution - examples: - RedHat 7.1 - Slackware 7.0 + devel packs from 7.1 ... -- kernel version: - uname -a -- libc version: - ls -l /lib/libc[.-]* -- X version: - X -version -- gcc and ld version: - gcc -v - ld -v -- binutils version: - as --version - -2. Hardware & drivers: -- CPU info: - cat /proc/cpuinfo -- video card manufacturer and model - examples: - ASUS V3800U chip: nVidia TNT2 Ultra pro 32MB SDRAM - Matrox G400 DH 32MB SGRAM -- video driver type&version - examples: - X built-in driver - nvidia 0.9.623 - Utah-GLX CVS 2001-02-17 - DRI from X 4.0.3 -- sound card type & driver - examples: - Creative SBLive! Gold with OSS driver from oss.creative.com - Creative SB16 with OSS drivers of kernel - GUS PnP with ALSA OSS emulation -- if you are unsure, attach output of lspci -v - -For compiling problems/errors: -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -3. output of configure/make: - make distclean - ./configure &>config.log - ./make &>make.log -4. these files: - config.h - config.mak - libvo/config.mak - -For playback problems: -~~~~~~~~~~~~~~~~~~~~~~ -3. Output of mplayer at verbose level 1 (-v) - mplayer -v [options] filename &> mplayer.log - -4. If the problem is specific to one or a few files, - then please upload that file to: - ftp://thot.banki.hu/MPlayer/incoming/ - Usually first 1-5 MB of the file is enough to reproduce - the problem, but first you should try it: - dd if=yourfile of=smallfile bs=1k count=1024 - (it will cut first 1MB of 'yourfile' and save to 'smallfile') - Then try again on this small file, and if bug still exists - then it's enough to upload this small file. - NEVER send such files via mail! Upload it, and send only - the path/filename of the file on the FTP. - If the file is accessible on the net, then sending the - _exact_ URL is enough! - -5. For crashes (segfault, SIGILL, signal 4 etc): - -If you have coredump of the crash, see 5.a, else see 5.b: - -5.a: Please print us coredump (if it was created). -Howto: -please create following command file: - -disass $eip-32 $eip+32 -printf "eax=%08lX\n",$eax -printf "ebx=%08lX\n",$ebx -printf "ecx=%08lX\n",$ecx -printf "edx=%08lX\n",$edx -printf "esp=%08lX\n",$esp -printf "ebp=%08lX\n",$ebp -printf "edi=%08lX\n",$edi -printf "esi=%08lX\n",$esi - -Then simply execute following command line: -gdb mplayer --core=core -batch --command=command_file >mplayer.bug - -5.b.: run MPlayer in gdb: -[at root/user shell prompt:] - # gdb mplayer -[at gdb prompt:] - > run -v [options-to-mplayer] filename - ... (wait until it will crash) - > bt - > disass $eip-32 $eip+32 -Send us the full output of the above things! - -In general: -~~~~~~~~~~~ - If something is big (logs etc) then it's better to upload to the ftp - (gzipped), and include only path/filename in the bugreport! -
--- a/DOCS/CDROM Tue Aug 21 20:58:44 2001 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,44 +0,0 @@ - -Tune up CDROM -~~~~~~~~~~~~~ - -Introduction -~~~~~~~~~~~~ ->From Linux documentation: - -Some CDROM drives are capable of changing their head-speed. There are several -reasons for changing the speed of a CDROM drive. Badly pressed CDROMs may -benefit from less-than-maximum head rate. Modern CDROM drives can obtain very -high head rates (up to 24-times is common). It has been reported that these -drives can make reading errors at these high speeds, reducing the speed can -prevent data loss in these circumstances. Finally, some of these drives can -make an annoyingly loud noise, which a lower speed may reduce. - -Howto -~~~~~ -The recommended way to do it is with a program called 'setcd' . It's kinda -old, but won't be too hard to find on the Net. -Use it with : - setcd -x <speed> <cdrom device> - -Also you can try : - echo current_speed:4 >/proc/ide/<cdrom device>/settings -but you'll need root privileges. (It didn't work for me - Gabucino) - -I use following command too : - echo file_readahead:2000000 >/proc/ide/<cdrom device>/settings -for 2MB prefetched reading from the file (it's useful for scratched CDROMs). - -It's recommended that you tuneup your CDROM drive also with hdparm : - hdparm -d1 -a8 -u1 <cdrom device> -to enable using DMA access, readahead, and IRQ unmasking. -(if you don't understand these, *read the hdparm manpage*) - -Final words -~~~~~~~~~~~ -Please refer to "/proc/ide/<cdrom device>/settings" for fine-tuning your CDROM. - - Nick Kurshev & Gabucino - <nickols_k@mail.ru> - -
--- a/DOCS/CODECS Tue Aug 21 20:58:44 2001 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,66 +0,0 @@ - -Status of codecs support: -========================= - -See http://mplayer.sourceforge.net/DOCS/codecs.html - -If your codecs isn't listed there then help us adding support for it: - -Extracting codecs from Win32 -============================ - -1. VfW -~~~~~~ - VfW (Video for Windows) is the old Video API for Windows. Its codecs have -the .DLL or (rarely) .DRV extension. -If MPlayer fails with your AVI: - - UNKNOWN video codec: HFYU (0x55594648) - - It means your AVI is encoded with a codec which has the HFYU fourcc (HFYU = -HuffYUV codec, DIV3 = DivX Low Motion, etc...). Now that we know this, we'll -have to find out which DLL Windows loads in order to play this file. In our -case, the system.ini contains this (with many others): - VIDC.HFYU=huffyuv.dll -So we'll need the huffyuv.dll file. Note that the audio codecs are specified -with the MSACM prefix : - msacm.l3acm=L3codeca.acm -This is the MP3 codec. - -So, now we have all the info needed (fourcc, codec file, sample AVI), submit -your codec support request in mail, and upload these files to the FTP: - ftp://thot.banki.hu/MPlayer/incoming/<codecname>/ - - -2. DirectShow -~~~~~~~~~~~~~ - DirectShow is the newer Video API, which is even worse than its predecessor. -Things are harder with DirectShow, since - - system.ini doesn't contain the needed information, instead it's stored in - the registry :( - - we'll need the GUID of the codec. - - So let's search that goddamn registry.. - - Start 'regedit' - - press ctrl-f, disable the first two checkbox, and enable the third. Type -the fourcc of the codec. (for ex.: TM20) - - you should see a field which contains the path and filename - (for ex. : C:\WINDOWS\SYSTEM\TM20DEC.AX) - - now that we have the file, we'll need the GUID. Try searching again, but -now we'll search for the codec's name, not the fourcc. Its name can be acquired -when Media Player is playing that file, by checking File/Properties/Advanced. -If not, bad luck ;) Try guessing. - (for ex. search for : TrueMotion) - - if found (in registry), there should be a FriendlyName field, and a CLSID -field. Write down that 16 byte of CLSID, this is the GUID required by us. - -NOTE : if searching fails, try to enable all the checkboxes.. you may have - false hits, but maybe you'll have the right, too... -NOTE : dump that M$ shit. - -So, now we have all the info needed (fourcc, GUID, codec file, sample AVI), -submit your codec support request in mail, and upload these files to the FTP: - ftp://thot.banki.hu/MPlayer/incoming/<codecname>/ - - - Gabucino & A'rpi
--- a/DOCS/DEBIAN Tue Aug 21 20:58:44 2001 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,19 +0,0 @@ -To build the package: - Get the cvs version, or .tgz and uncompress it, - cd into programs directory: -eyck@incubus:~/src$ cd main -eyck@incubus:~/src/main$ fakeroot debian/rules binary - (... mplayer detects hardware/software, builds itself and.. ) - .. - dpkg-deb: building package `mplayer' in `../mplayer_0.18-1_i386.deb'. - -And now just dpkg -i ../mplayer_0.18-1_i386.deb as root. -Here's how it looks like: - -eyck@incubus:/src/main$ sudo dpkg -i ../mplayer_0.18-1_i386.deb -Password: -(Reading database ... 26946 files and directories currently installed.) -Preparing to replace mplayer 0.17a-1 (using ../mplayer_0.18-1_i386.deb) ... -Unpacking replacement mplayer ... -Setting up mplayer (0.18-1) ... -
--- a/DOCS/DGA Tue Aug 21 20:58:44 2001 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,198 +0,0 @@ - -Contents -~~~~~~~~ - - 1. Summary - 2. What is DGA - 3. Resolution switching - 4. DGA & MPlayer - 5. Features of the DGA driver - 6. Speed issues - 7. Known bugs - 8. Future work - - A. Some modelines - B. Bug Reports - - -1. Summary -~~~~~~~~~~ - This document tries to explain in some words what DGA is in general and - what the DGA video output driver for mplayer can do (and what it can't). - -2. What is DGA? -~~~~~~~~~~~~~~~ - - DGA is short for Direct Graphics Access and is a means for a program to - bypass the X-Server and directly modifying the framebuffer memory. - Technically spoken this happens by mapping the framebuffer memory into - the memory range of your process. This is allowed by the kernel only - if you have superuser privileges. You can get these either by logging in - as root or by setting the suid bit on the mplayer excecutable (NOT - recommended!). - - There are two versions of DGA: DGA1 is used by XFree 3.x.x and DGA2 was - introduced with XFree 4.0.1. - - DGA1 provides only direct framebuffer access as described above. For - switching the resolution of the video signal you have to rely on the - XVidMode extension. - - DGA2 incorporates the features of XVidMode extension and also allows - switching the depth of the display. So you may, although basically - running a 32 bit depth XServer, switch to a depth of 15 bits and vice - versa. - - However DGA has some drawbacks. It seems it is somewhat dependent on the - graphics chip you use and on the implementation of the XServer's video - driver that controls this chip. So it does not work on every system ... - - -3. Resolution switching -~~~~~~~~~~~~~~~~~~~~~~~ - The DGA driver allows for switching the resolution of the output signal. - This avoids the need for doing (slow) software scaling and at the same - time provides a fullscreen image. Ideally it would switch to the exact - resolution (except for honouring aspect ratio) of the video data, but the - XServer only allows switching to resolutions predefined in - /etc/X11/XF86Config (/etc/X11/XF86Config-4 for XFree 4.0.X respectively). - Those are defined by so-called modelines and depend on the capabilites - of your video hardware. The XServer scans this config file on startup and - disables the modelines not suitable for your hardware. You can find - out which modes survive with the X11 log file. It can be found at: - /var/log/XFree86.0.log - See appendix A for some sample modeline definitions. - -4. DGA & MPlayer -~~~~~~~~~~~~~~~~ - - DGA is used in two places with MPlayer: The SDL driver can be made to make - use of it (-vo sdl:dga) and within the DGA driver (-vo dga). - The above said is true for both; in the following sections I'll explain - how the DGA driver for MPlayer works. - - -5. Features of the DGA driver -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - - The DGA driver is invoked by specifying -vo dga at the command line. - The default behaviour is to switch to a resolution matching the original - resolution of the video as close as possible. It deliberately ignores the - -vm and -fs switches (enabling of video mode switching and fullscreen) - - it always tries to cover as much area of your screen as possible by switching - the video mode, thus refraining to use a single additional cycle of your CPU - to scale the image. - If you don't like the mode it chooses you may force it to choose the mode - matching closest the resolution you specify by -x and -y. - By providing the -v option, the DGA driver will print, among a lot of other - things, a list of all resolutions supported by your current XF86-Config - file. - Having DGA2 you may also force it to use a certain depth by using the -bpp - option. Valid depths are 15, 16, 24 and 32. It depends on your hardware - whether these depths are natively supported or if a (possibly slow) - conversion has to be done. - - If you should be lucky enough to have enough offscreen memory left to - put a whole image there, the DGA driver will use doublebuffering, which - results in much smoother movie replaying. It will tell you whether double- - buffering is enabled or not. - - Doublebuffering means that the next frame of your video is being drawn in - some offscreen memory while the current frame is being displayed. When the - next frame is ready, the graphics chip is just told the location in memory - of the new frame and simply fetches the data to be displayed from there. - In the meantime the other buffer in memory will be filled again with new - video data. - - Doublebuffering may be switched on by using the option -double and may be - disabled with -nodouble. Current default option is to disable - doublebuffering. When using the DGA driver, onscreen display (OSD) only - works with doublebuffering enabled. However, enabling doublebuffering may - result in a big speed penalty (on my K6-II+ 525 it used an additional 20% of - CPU time!) depending on the implementation of DGA for your hardware. - - - -6. Speed issues -~~~~~~~~~~~~~~~ - Generally spoken, DGA framebuffer access should be at least as fast as using - the X11 driver with the additional benefit of getting a fullscreen image. - The percentage speed values printed by mplayer have to be interpreted with - some care, as for example, with the X11 driver they do not include the time - used by the X-Server needed for the actual drawing. Hook a terminal to a - serial line of your box and start top to see what is really going on in your - box ... - - Generally spoken, the speedup done by using DGA against 'normal' use of X11 - highly depends on your graphics card and how well the X-Server module for it - is optimized. - - If you have a slow system, better use 15 or 16bit depth since they require - only half the memory bandwidth of a 32 bit display. - - Using a depth of 24bit is even a good idea if your card natively just supports - 32 bit depth since it transfers 25% less data compared to the 32/32 mode. - - I've seen some avi files already be replayed on a Pentium MMX 266. AMD K6-2 - CPUs might work at 400 MHZ and above. - -7. Known Bugs -~~~~~~~~~~~~~ - - Well, according to some developpers of XFree, DGA is quite a beast. They - tell you better not to use it. Its implementation is not always flawless - with every chipset driver for XFree out there. - - o with XFree 4.0.3 and nv.o there is a bug resulting in strange colors - o ATI driver requires to switch mode back more than once after finishing - using of DGA - o some drivers simply fail to switch back to normal resolution (use - Ctrl-Alt-Keypad +, - to switch back manually) - o some drivers simply display strange colors - o some drivers lie about the amount of memory they map into the process's - address space, thus vo_dga won't use doublebuffering (SIS?) - o some drivers seem to fail to report even a single valid mode. In this - case the DGA driver will crash telling you about a nonsense mode of - 100000x100000 or the like ... - o OSD only works with doublebuffering enabled - -8. Future work -~~~~~~~~~~~~~~ - - o use of the new X11 render interface for OSD - o where is my TODO list ???? :-((( - - -A. Sample modelines -~~~~~~~~~~~~~~~~~~~ -Section "Modes" - Identifier "Modes[0]" - # 800x600 @ 60 Hz, 37.8 kHz hsync - Modeline "800x600" 40 800 840 968 1056 600 601 605 628 - Modeline "712x600" 35.0 712 740 850 900 400 410 412 425 - Modeline "640x480" 25.175 640 664 760 800 480 491 493 525 - Modeline "400x300" 20 400 416 480 528 300 301 303 314 Doublescan - Modeline "352x288" 25.10 352 368 416 432 288 296 290 310 - Modeline "352x240" 15.750 352 368 416 432 240 244 246 262 Doublescan - Modeline "320x240" 12.588 320 336 384 400 240 245 246 262 Doublescan -EndSection - - - These entries work fine with my Riva128 chip, using nv.o XServer driver - module. - -B. Bug Reports -~~~~~~~~~~~~~~ - - If you experience troubles with the DGA driver please feel free to file - a bug report to me (e-mail address below). Please start mplayer with the - -v option and include all lines in the bug report that start with vo_dga: - - Please do also include the version of X11 you are using, the graphics card - and your CPU type. The X11 driver module (defined in XF86-Config) might - also help. Thanks! - - - Acki (acki@acki-netz.de, www.acki-netz.de) 18.06.2001 - -
--- a/DOCS/DVD Tue Aug 21 20:58:44 2001 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,139 +0,0 @@ -DVD support in MPlayer! -~~~~~~~~~~~~~~~~~~~~~~~ - -Read file 'DVD-FAQ' as well (and try to avoid recursion by the redirector -message there :). - -IMPORTANT NOTE: please _DO_NOT_ require further features for DVD playback. This -is extremly experimental hack. Maybe it won't work for you. If you're -capable of helping us do it now! First we would like to fix existing problems. -Then we can start implementing advanced DVD playback functions of course. - -This means current DVD functions are mainly for developers and not for users! - -Building MPlayer with libcss support -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -First, you must compile and install libcss on your system. -Second, you have to recompile MPlayer with libcss support. There is -autodetection of libcss, but if it fails, see below : - -Call ./configure script of MPlayer with these options: - -./configure --enable-css --with-csslibdir=/usr/local/lib --with-cssincdir=/usr/local/include - -(of course you can append your favourite options as well) - ---with-csslibdir=/usr/local/lib - Directory contains libcss.so shared library. This directory should - be in your /etc/ld.so.conf as well. - ---with-cssincdir=/usr/local/include - Directory contains header file 'css.h' of libcss. - -Viewing VOB files directly from DVD -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -mplayer -dvdauth /dev/dvd /mnt/cdrom/video_ts/vts_01_1.vob - -where, - - '-dvdauth /dev/dvd' tells MPlayer the device name of your DVD drive. - it's used in disc authentication process - - the filename is simply a VOB file path on the disc - -Note that according to my experiences, disc authentication requires root -privileges so you must run MPlayer as root! (see section 'Problems'). - -NOTE about the sound: - It seems that MPlayer sometimes fails to find the first audio stream. - You can specify it with the '-aid 128' option, for example. - Please experience with 128,129 and similar values. See section - 'Problems'. - - -New source files -~~~~~~~~~~~~~~~~ -dvdauth.c - Issues DVD disc and title authentication and fills key_disc and - key_title arraies. - -dvdauth.h - header file - -These files are embedded inside an '#ifdef ... #endif' block, so if libcss -support was not requested, they do not produce any code and of course -libcss is not linked against MPlayer either. - - -Modifications in the source -~~~~~~~~~~~~~~~~~~~~~~~~~~~ -* (stream.c) STREAM_BUFFER_SIZE is set to 2048 -* (demux_mpg.c) the old message of 'encrypted VOB file is not supported' - was changed to set a flag to 1. After parsing the header, if this - flag is set, we call descramble function of libcss for decrypt. -* (stream.c) on several points where the old 4096 length STREAM_BUFFER_SIZE was - hardcoded into the source, it was replaced with 'STREAM_BUFFER_SIZE' -* (mplayer.c) calling dvd disc and title authentication and seek to sector - boundaries on seeking for mpegs - - -Performance -~~~~~~~~~~~ -On my AMD K6-2 with using hw scaling and colorspace conversion -capability of my G400 it's possible to watch DVD with about 70% -CPU usage with '-nosound'. Unfortunately with sound my machine is -not enough :( Maybe it can be improved somewhat ... -Guess, it's not so bad ... According to reports from my friends -xine uses 80-90% CPU to play DVD on much more powerful machines -like 1GHz Athlon systems (as far as I know, it's said that about -300MHz celeron is the minimum to watch DVDs ... using windows -DVD viewers). - -Hint: I commented out downmix functions from libac3 (of course in this way I -can't get sound) and audio decoding CPU usage became 11% instead of 24 on -my machine. This clearly indicates that we should optimize downmix functions -(KNI code is no use for my k6-2). - -HOT NEWZ: -We have got 3Dnow optimized libac3. Wow ;-) - - -Problems (TODO) -~~~~~~~~~~~~~~~ -* disc authentication (the FIBMAP ioctl) requires root privilegies. - this is strange since OMS can do it as user too. -* sound. I'm using my only DVD disc (The Matrix) to test MPlayer. - some VOB file have English sound, some have Spanish and some have - no sound at all. - IT SEEMS that if I give '-aid 128' everything works with English sound ... -* strange effects but only with SOME vob files (it looks like some interlacing - effect, eg: every 2nd line on the screen is from the last frame). - - -feature TODO -~~~~~~~~~~~~ -* chapter scanner -* audio stream scanner and allow to select one on runtime as well - (in stage#1 it would be enough to select one on the startup, see - 'Problems' above) -* DVD menu - I found (at least on disc 'The Matrix') the menu VOB but I don't - know how can it be used. - (after some eyeballing on the source of OMS, it seems we would have to - parse *.ifo files) -* subtitle support -* OSD/GUI (?) support for select chapter, subtitle and audio stream -* getting some documentation on DVD format, eg: which is the 'root' VOB - file on the disc in video_ts directory, which is the menu and so on. -* improve performance (see 'Performance' above) - - -No sound problem (from Matrix DVD, the menu VOB) -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -End of packet while searching for PCM header - -DEMUXER: Too many (2048 in 4131540 bytes) video packets in the buffer! -(maybe you play a non-interleaved stream/file or video codec failed) -MPEG: No Audio stream found... ->nosound - -However this does not occur if you specify '-aid 128'.
--- a/DOCS/DVD-FAQ Tue Aug 21 20:58:44 2001 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,41 +0,0 @@ -Q: I have some problem not mentioned here ... -A: Read file 'DVD' as well. - -Q: How can I actually watch DVD with MPlayer? -A: Ehh. Go on reading this file as well as 'DVD' (hint: you must have libcss) - -Q: So MPlayer can play DVDs? Then it must use DeCSS! You are under arrest - under the XYZ#$ paragraph of the-- -A: Get back asshole, there is no DeCSS code in MPlayer. It links to libcss. - -Q: Seems to work but no sound. -A: Use '-aid 128' (or try: 128,129,...) command line switch - -Q: I have got Spanish audio instead of English (or similar problems) -A: See the last question/answer. - -Q: MPlayer complains about FIBMAP or something. -A: Try to run MPlayer as root. - -Q: some strange effect (interlace like thing) especially when fast moving - objects are shown in the movie -A: known problem, we try to fix it later - -Q: DVD support in MPlayer is a piece of shit! -A: You're probably right :) However please contact us if you can improve it! - -Q: Where can I get libcss package from? -A: Maybe from the source of OMS (www.linuxvideo.org). - -Q: How can I ... (insert some expectable DVD player feature here) -A: The current implementation is only for viewing VOB files from DVD. - Nothing more, like subtitles, menus and so on. - -Q: How can I set the region code of my DVD-Drive ? I don't have windows! -A: Use the 'regionset' tool : - http://www.linuxtv.org/download/dvd/dvd_disc_20000215.tar.gz - -Q: MPlayer complains about some renamed option? -A: For future development, old '-dvd' option was replaced by '-dvdauth'. - Option '-dvd' *WILL* do the 'full disk movie' mplaying mode. - But until that, '-dvd' does nothing only prints error message.
--- a/DOCS/DivX4Linux Tue Aug 21 20:58:44 2001 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,40 +0,0 @@ - -How to enable DivX4Linux support? -================================= - -1. Download the codec: - http://download2.projectmayo.com/dnload/divx4linux/divx4linux-20010718.zip - -2. Unpack it, and copy files to their place: - cp libdivxdecore.so.0.0.0 /usr/local/lib/ - ln -s /usr/local/lib/libdivxdecore.so.0.0.0 /usr/local/lib/libdivxdecore.so.0 - ln -s /usr/local/lib/libdivxdecore.so.0 /usr/local/lib/libdivxdecore.so - ldconfig - cp decore.h /usr/local/include/ - -3. Run mplayer's ./configure - Change #undef NEW_DECORE to #define NEW_DECORE in config.h - Change #define MPEG12_POSTPROC to #undef MPEG12_POSTPROC in config.h - Change DECORE_LIBS in config.mak to be: - DECORE_LIBS=-L/usr/local/lib -ldivxdecore - -4. Compile mplayer (make;make install) - -5. How to enable it? - It's a bit tricky. As it conflicts with opendivx (it's API is very - similar to opendivx's), opendivx code is disabled, and the opendivx - driver calls this library too. - You have 2 choices: - -vc odivx : using divx4 codec as a new version of opendivx. - in this case it produces YV12 image in its own buffer, - and MPlayer (libvo) does colorspace conversion. - -vc divx4 : using divx4 codec's colorspace conversion. - in this mode, you can use YUY2/UYVY too. - Note: for YV12 (planar YUV 4:2:0) -vc odivx is faster, for packed - YUV modes (YUY2, UYVY) use -vc divx4. For RGB modes you can choose, - I think their speed is the same. Maybe it depends on current bpp. - - Note: it supports postprocessing too, but range of values is strange: - 0 = no postproc - 10 .. 20 = postproc, normal (like level 2 with divxds) - 30 .. 60 = hard postproc, eats many cpu. (like level 4 with divxds)
--- a/DOCS/FREEBSD Tue Aug 21 20:58:44 2001 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,22 +0,0 @@ -Notes for FreeBSD users -======================= - -1. To build the package you will need GNU make (gmake, /usr/ports/devel/gmake), -native BSD make will not work. - -2. To run mplayer you will need to re-compile the kernel with -"options USER_LDT" (unless you are running -CURRENT, where this is default). -If you have a CPU with SSE also use "options CPU_ENABLE_SSE" to use it -(FreeBSD-STABLE required, or use kernel patches). - -3. If mplayer complains about "CD-ROM Device '/dev/cdrom' not found!" make a -symbolic link : ln -s /dev/<your_cdrom_device> /dev/cdrom - -4. There's no DVD support for FreeBSD yet. -Feel free to add them :-) - -Enjoy (as do I)! - --- -Vladimir Kushnir -
--- a/DOCS/INSTALL Tue Aug 21 20:58:44 2001 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,43 +0,0 @@ - ======================================================================= - * HOW TO COMPILE MOVIE PLAYER COMPONENTS * (C) 2001. A'rpi/ESP-team * - ======================================================================= - -1. The Codecs: (w32codecs.zip) -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - download and unzip w32codecs.zip to /usr/lib/win32 - -Note: the avifile project has similar codecs package, but it differs -from our, so if you want to use all supported codecs, then use -our package! - -2. Drivers: (mga_vid.o) -~~~~~~~~~~~~~~~~~~~~~~~ - cd drivers - make - mknod /dev/mga_vid c 178 0 - chmod go+rw /dev/mga_vid - -3. The Player: (mplayer) -~~~~~~~~~~~~~~~~~~~~~~~~ - ./configure -[* read messages printed by ./configure, it may be very usefull! *] -[* check config.h and config.mak files! *] - make -[* check for errors! of none, you should have the ./mplayer binary *] - make install - -4. Matrox G400 DH TV-out tools: -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - cd TVout - ./compile.sh - -5. Fonts: -~~~~~~~~~ - Download mp_font3.zip (and optional language updates) and - unpack to ~/.mplayer/font/ : - - cd ~/.mplayer - mkdir font - cd font - unzip mp_font3.zip - unzip mp_font3_hu.zip
--- a/DOCS/LIRC Tue Aug 21 20:58:44 2001 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,60 +0,0 @@ - -LIRC support for MPlayer - written by Andreas Ackermann in 2/2001 - contact: acki@acki-netz.de - -o What is LIRC? - - Linux Infrared Remote Control - use an easy to build home-brewn IR-receiver, - an (almost) arbitrary remote control and control your linux box with it! - More about it at www.lirc.org. - -o MPlayer and LIRC - - If you have installed the lirc-package, you can compile MPlayer with LIRC - support using ./configure --enable-lirc - - If everything went fine, MPlayer will print a message like - LIRC init was successful. - on startup. If an error occurs it will tell you. If it doens't tell you - anything about LIRC there's no support compiled in. That's it :-) - - The application name for MPlayer is - oh wonder - mplayer_lirc. - It understands the following commands: - - PAUSE - pause playing. Any other keystroke will continue replay. - QUIT - exit mplayer - RWND - 10 secs back - FRWND - 60 secs back - FWD - skip 10 secs - FFWD - skip 60 secs - INCVOL - increase volume one percent - DECVOL - decrease volmue one percent - MASTER - use master mixer channel - PCM - use pcm mixer channel - - Don't forget to enable the repeat flag for RWND/FWD in .lircrc. Here's an - excerpt from my .lircrc: - - begin - remote = CU-SX070 - prog = mplayer_lirc - button = Tape_Play - repeat = 1 - config = FFWD - end - - begin - remote = CU-SX070 - prog = mplayer_lirc - button = Tape_Stop - config = QUIT - end - - I you don't like the standard location for the lirc-config file (~/.lircrc) - use the -lircconf <filename> switch to specify another file. - - Enjoy - - -Andreas -
--- a/DOCS/MPlayer-FAQ Tue Aug 21 20:58:44 2001 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,268 +0,0 @@ -Yes, this is the MPlayer FAQ. -============================= - -About: -~~~~~~ -Many people asked same questions so I decided to write this stuff. -I know that people will never read this but at least i try to -pull down number of these mails. -And from now i can say that "read the fuckin' FAQ!" :-) - -Let's ask! -~~~~~~~~~~ -Q: What about DVD playback? -A: Read files 'DVD' and 'DVD-FAQ'. - -Q: SDL output doesn't work or compile. Problem is .... -A: It is tested with newest SDL (probably runs on 1.1.7+). - It does NOT work with 1.1.6, 1.1.5 1.1.4 1.1.3 1.0.4 etc, don't ask. - -Q: I am still having trouble compiling with SDL support. gcc says something - about "undefined reference to `SDL_EnableKeyRepeat'" What's now? -A: Where did you install the SDL library? If you installed in /usr/local - (the default) then edit the top level config.mak and add - "-L/usr/local/lib " after "X_LIBS=" Now type make. You're done! - -Q: It doesn't compile, and it misses uint64_t inttypes.h and similar things... -A: copy DOCS/inttypes.h to MPlayer directory (cp DOCS/inttypes.h .) - try again... if fail, contact us - -Q: I have Pentium III but ./configure doesn't detect SSE -A: Only kernel versions 2.4.x supports SSE (or try latest 2.2.19 or newer, but - be prepared for problems) - -Q: -xy option doesn't work with x11 driver (-vo x11) -A: x11 driver doesn't support scaling, but XF86VidMode support is now - used: you must specify the -vm and the -fs switch, and you're done. - Make sure you have the right Modelines in your XF86Config file, and - try if the DGA driver (and SDL's DGA driver, see VIDEOCARDS) works for you. - It's much faster. If SDL's DGA works too, use that, it'll be EVEN - faster! - -Q: audio goes out of sync playing .avi file -A: try with -bps or -nobps option - if still bad, send me (upload to ftp) that file, I'll check. - -Q: what is the meaning of numbers in the status line? -A: see: - A: 2.1 V: 2.2 A-V: -0.167 ct: 0.042 57 41% 0% 2.6% 0 - - A: audio position in seconds - - V: video position in seconds - - A-V: audio-video difference in seconds (delay) - - ct: total A-V sync correction done - - frames played (counting from last seek) - - video codec cpu usage in percent (for mpeg it includes video_out too!) - - video_out cpu usage for avi, 0 for mpg (see above) - - audio codec cpu usage in percent - - frames needed to drop to maintain A-V sync - Most of them are for debug purposes, and will be removed soon. - -Q: Why is video_out cpu usage zero (0%) for mpeg files? -A: It's not zero, but it's built in into codec, so can't be measured separated. - You should try to play the file using -vo null and then -vo ... and check - the difference to see video_out speed... - -Q: OpenGL (-vo gl) output doesn't work (hangup/black window/X11 errors/...) -A: your opengl driver doesn't support dynamic texture changes (glTexSubImage) - it's known not to work with nVidia's binary shit. - it's known to work with Utah-GLX/DRI and Matrox G400 card. Also with - DRI and Radeon card. It won't work with DRI others than these. - it will not work with 3DFX cards because the 256x256 texture size limit. - -Q: I have G200/G400, how to compile/use mga_vid driver? -A: read VIDEOCARDS, INSTALL, README - -Q: What's XMMP? (is it XMMS or XMPS but mispelled?) -A: It's a new project, see http://frozenproductions.com for details - -Q: There are error messages about file not found /usr/lib/win32/.... -A: Download & install w32codec.zip from *our* FTP - (avifile's codec package has different DLL set) - -Q: ...... works with avifile/aviplay while doesn't with MPlayer -A: MPlayer != avifile - The only common thing between these players is the Win32 DLL loader. - The codecs (dll) sets, syncronization, demultiplexing etc is totaly - different and shouldn't be compared. - If something works with aviplay it doesn't mean that MPlayer should do - it and vice versa. - -Q: Indeo 3.x/4.x movies are viewed upside-down!!!? -A: It's a known bug (really it's a bug/limitation of the DLL codec) - Try if your vo driver supports the -flip switch. - -Q: Indeo 3.x,4.x video doesn't work at 32bpp resolutions (16,24 bpp are ok) -A: It's a known bug (really it's a bug/limitation of the DLL codec) - -Q: I've got 'MPlayer interrupted by signal 11' in module audio_setup or - decode_audio. -A: This is highly unlikely, since the mp3lib rewrite. Contact us, it may be - a bug. Possibly it's a damaged file, try with -afm 4 . - -Q: Are there rpm/deb/... packages of MPlayer? -A: You can make a .deb package for yourself, check DOCS/DEBIAN . - It's _STRONGLY_ discouraged to use precompiled packages - of MPlayer, since it (currently) _highly_ depends on compile-time - options and optimizations! - Precompiled packages are COMPLETELY unsupported by the MPlayer team! - -Q: Are there any mailing lists on MPlayer? -A: Yes! See README on how to subscribe them! - -Q: I've found a nasty bug when I tried to play my favourite video!! - Who should I inform? -A: See DOCS/BUGREPORTS - -Q: During 'make', MPlayer complains about X11 libraries. I don't understand, - I DO have X installed!? -A: ...but you don't have the X development package installed. Or not - correctly. It's called XFree86-devel* under RedHat, and xlib6g-dev* under - Debian. Also check if the /usr/X11 symlink exists (this can be a problem on - Mandrake systems). It can be created with the - $ ln -sf /usr/X11R6 /usr/X11 - command. Also check the /usr/include/X11 link : - $ ln -sf /usr/X11R6/include/X11 /usr/include/X11 - Your distribution may differ from the Linux Filesystem Standard. - -Q: I have problems playing files with ... codec. Can I use'em? -A: Check http://mplayer.sourceforge.net/DOCS/codecs.html, - if it doesn't contain your codec, read - http://mplayer.sourceforge.net/DOCS/CODECS, and contact us. - -Q: What about DGA driver? I can't find it!!! -A: ./configure autodetects your DGA driver. If -vo help doesn't show - DGA, then there's a problem with your X installation. - Try ./configure --enable-dga (and read VIDEOCARDS) - Alternatively, try SDL's DGA driver with '-vo sdl:dga' options. - -Q: Ok, -vo help shows DGA driver, but it is babbling about permissions! - Help me! -A: It works only if running as root! It's a DGA limitation. - You should become to root (su -), and try again. - - Another solution is making mplayer SUID root, but its NOT RECOMMENDED! - 'chown root /usr/local/bin/mplayer' - 'chmod 750 /usr/local/bin/mplayer' - 'chmod +s /usr/local/bin/mplayer' - !!!! BUT STAY TUNED !!!! - This is a *BIG* security risk! *NEVER* do this on a server or on a computer - can be accessed by more people than only you because they can gain root - privilegies through suid root mplayer!!! - !!!! SO YOU HAVE BEEN WARNED ... !!!! - -Q: The fsdga driver doesn't work with my xyz.avi file. Why is that? -A: Because it only works with MPEG. (yet) - -Q: When using Xvideo, my Voodoo 3/Banshee says: - X Error of failed request: BadAccess (attempt to access private resource - denied) - Major opcode of failed request: 147 (MIT-SHM) - Minor opcode of failed request: 1 (X_ShmAttach) - Serial number of failed request: 26 - Current serial number in output stream:27 -A: Your driver is old, update it. Either download (at least) DRI version 0.6 - from http://dri.sourceforge.net , or use the DRI cvs. - -Q: When using Xvideo, I can't play DivX avis with my Voodoo 3/Banshee ! - It says: - ... - Xvideo image format: 0x32315659 (YV12) planar - Xvideo image format: 0x30323449 (I420) planar - ... -A1: See the previous answer. -A2: Since 0.18pre4 we include libavcodec from the ffmpeg package. It contains - a C language DivX and OpenDivX decoder. The DivX decoder uses YV12 format - for output, thus it should work for you. Compile in libavcodec support. - -Q: Umm, what is "IdegCounter" ? -A: A mixture of a hungarian and an english word. In english, "Ideg" means - "nerve", and is pronounced as something like "ydaegh" . It was first used - to measure the nervousness of A'rpi, after some (umm) "mystic" disappearance - of CVS code ;) - -Q: I can't compile SVGAlib.. I'm using 2.3/2.4 kernel. -A: You have to edit SVGAlib's Makefile.cfg and comment "BACKGROUND = y" out. - -Q: LIRC doesn't work, because ... -A: Are you sure you use "mplayer_lirc" instead of "mplayer" ? - -Q: MPlayer exits with something error when using l3codeca.acm -A: Check 'ldd /usr/local/bin/mplayer' output. If it contains - libc.so.6 => /lib/libc.so.6 (0x4???????) - where "?" is any number then it's ok, the error is not here. If it is: - libc.so.6 => /lib/libc.so.6 (0x00??????) - then there is problem with your kernel/libc. Maybe you are using some - security patches (for example Solar Designer's OpenWall patch) which - forces loading libraries to very low addresses. - Because l3codeca.acm is a non-relocatable DLL, it must be loaded to - 0x00400000, we can't change this. You should use non-patched kernel, - or use MPlayer's -afm 1 option to disable using l3codeca.acm. - -Q: My computer plays M$ DivX AVIs with resolutions ~ 640x300 and stereo mp3 - sound too slow. When I use -nosound switch, everything is ok (but quiet). -A: Those files probably have 48Khz audio, and your soundcard/driver can't play - it correctly. Audio downsampling isn't implemented in MPlayer (yet). - -Q: MPlayer dies with "MPlayer interrupted by signal 4 in module: decode_video". -A: Try running MPlayer on the machine you compiled on. Or recompile. Don't - use MPlayer on different CPU than it was compiled on. - -Q: I have problems with <your window manager> and fullscreen xv/xmga/sdl/x11 - modes.. -A1: Use the -fsmode switch. See example.conf or manpage. - -Q: But it works with avifile ! -A: So what? - -Q: Then avifile is better ! -A: Then use avifile, it has nice GUI and nice C++ code :) - -Q: I got this playing mpeg files: Can't find codec for video format 0x10000001 ! -A: You have old version of codecs.conf at ~/.mplayer/. Upgrade it from DOCS/ - -Q: After starting mplayer under KDE(1/2) I just get a black screen and nothing - happens, after about one minute the video starts playing. -A: The KDE arts sound daemon is blocking the sound device, either wait the time - until video starts or you disable the arts-daemon in kontrollcenter. - -Q: Subtitles are very nice, the most beautiful I've ever seen, but they slow - down the playing! I know it's unlikely... -A: After running ./configure , edit config.h and replace #undef FAST_OSD with - #define FAST_OSD . Then recompile. - -Q: The OSD is flickering! -A: You use a vo driver with single buffering (x11,xv). With xv you can change - the number of buffers in libvo/vo_xv.c : - Increase #define NUM_BUFFERS 1 - -Q: What's the problem with gcc 2.96 ? -A: gcc 2.96 is RedHat's UNOFFICIAL (it can be found only on RedHat sites, or - RedHat distributions) and BUGGY gcc release. gcc 2.96 is TOTALLY - unsupported by MPlayer, because it simply SKIPS MMX codes, it just does not - compile it. Important: this is NOT an MPlayer-specific problem, numerous - other projects (DRI, avifile, etc..) have problems with this shit too. - ** DO NOT USE gcc 2.96 !!! ** - -Q: Is there a hint on how to watch QuickTime and RealMedia movies in mplayer? -A: There's no way to do it. Therefore these formats deserve to die in flames. - Theoretically you can reverse engineer Real codecs built for Linux (they - are available as .so files), but in practice that's really difficult, even - if you know how the compiler used by Real is making assembler code. - As for QuickTime, it's possible to play some old movies and this - capability will be added to mplayer soon, but newer clips are all Sorenson - encoded, and that codec is built-in deep in the QT executable, there's - no way to use it. - -Q: I have an nVidia TNT/TNT2 card, and I have a band with strange colours, - right under the movie! Whose fault is this? -A: It's the nVidia X driver's. These bugs are ONLY with the TNT/TNT2 cards, - and we can't do anything about it, it's not our bug. - -Q: What exactly is this libavcodec? -A: It's from Gerard Lantau's ffmpeg package (http://ffmpeg.sourceforge.net). - It has C language DivX ;-) and OpenDivX codec. Some benchmarks - showed that its DivX seems to be even faster than DirectShow codec without - preprocessing, and only a few percent slower than ProjectMayo's OpenDivX - decoder. It uses YV12 pixel format, so old Voodoo users can use it for YUV. - Also, open the possibility to play DivX on virtually every computer that - has a C compiler. Kinda great stuff, isn't it?
--- a/DOCS/MTRR Tue Aug 21 20:58:44 2001 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,39 +0,0 @@ -Setting up MTRR for X11 3.3.x, SVGAlib or mga_vid: -================================================== - -1. find the base address -~~~~~~~~~~~~~~~~~~~~~~~~ -You have 3 ways to find it: - -- from X11 startup messages, for example: -(--) SVGA: PCI: Matrox MGA G400 AGP rev 4, Memory @ 0xd8000000, 0xd4000000 -(--) SVGA: Linear framebuffer at 0xD8000000 - -- from /proc/pci (use lspci -v command): -01:00.0 VGA compatible controller: Matrox Graphics, Inc.: Unknown device 0525 - Memory at d8000000 (32-bit, prefetchable) - -- from mga_vid kernel driver messages (use dmesg): -mga_mem_base = d8000000 - -2. find memory size -~~~~~~~~~~~~~~~~~~~ -This is very easy, just convert video ram size to hexadecimal, or -use this table: - 1 MB 0x100000 - 2 MB 0x200000 - 4 MB 0x400000 - 8 MB 0x800000 - 16 MB 0x1000000 - 32 MB 0x2000000 - -3. setting up mtrr -~~~~~~~~~~~~~~~~~~ -You know base address and memory size, let's setup mtrr registers! - - For example, for the matrox card above (base=0xd8000000) with 32MB - ram (size=0x2000000) just execute: -echo "base=0xd8000000 size=0x2000000 type=write-combining" >| /proc/mtrr - - - Older K6-2's [around 266Mhz, stepping 0] doesn't support MTRR, but - stepping 12's do ('cat /proc/cpuinfo' to check it).
--- a/DOCS/OpenDivX Tue Aug 21 20:58:44 2001 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,37 +0,0 @@ - -OpenDivX support in MPlayer -~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -See http://www.projectmayo.com for details on the OpenDivX codec. It's the -opensource successor of the DivX codec (really it's a somewhat enhanced version -of the MPEG-4 standard), already available on most platforms. We use an -MMX-optimized Decore. OpenDivX version supported in MPlayer : 4.0alpha48 - -Decoder: -~~~~~~~~ -Now it's used for AVI & ASF files with fourcc 'dvx1' and 'divx' - -You can adjust Quality level using the -pp option: -Combine (add) flags you need: - -1 Y horizontal deblocking -2 Y vertical deblocking -4 C horizontal deblocking -8 C vertical deblocking -16 Y dering -32 C dering - -For example, if you want horiz+vert chroma deblocking, then use - -pp 12 (4+8=12) - -Note: C filters works only with n*16 height movies. - -Note2: the postprocessing filter can be used for mpeg 1/2 files too (-pp) - -Encoder: -~~~~~~~~ -There is a very alpha hack to convert video into OpenDivX .avi files. -Audio is automatically disabled. Select 'odivx' video device as output: - mplayer input.mpg -vo odivx -encode output.avi -Yes, I know that it's unusable now, it's only for testing purposes. -Real encoding feature (with audio) is planned, but in the far future.
--- a/DOCS/README Tue Aug 21 20:58:44 2001 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,308 +0,0 @@ -MPlayer - Movie Player for LINUX (C) 2000-2001 Arpad Gereoffy (A'rpi/ESP-team) -================================ * See the file AUTHORS for the complete list * -http://mplayer.sourceforge.net (or http://mplayer.dev.hu) - -About: -~~~~~~ -MPlayer is a movie player for LINUX. It plays most MPEG, AVI and ASF files, -supported by many native and Win32 DLL codecs. You can watch VCD, DVD and even -DivX movies too. The another big feature of mplayer is the wide range of -supported output drivers. It works with X11, Xv, DGA, OpenGL, SVGAlib, fbdev, -but you can use SDL (and this way all drivers of SDL, for example AAlib) and -some lowlevel card-specific drivers (for Matrox) too! Most of them supports -software or hardware scaling, so you can enjoy movies in fullscreen. And what -about the nice big antialiased shaded subtitles (7 supported types!!!) with -hungarian, english, cyrillic, czech, korean fonts, and OSD? - -History: -~~~~~~~~ -This began a year ago... -I've tried lots of players under linux (mtv,xmps,dvdview,livid/oms,VideoLAN, -xine,xanim,avifile,xmmp) but they all have some problem. Mostly with -special files or with audio/video sync. Most of them is unable to play -both MPEG1, MPEG2 and AVI (DivX) files. Many players have image quality -or speed problems too. So I've decided to write/modify one... - -- mpg12play v0.1-v0.3: - The first try, hacked together in a half hour! - I've used libmpeg3 from www.heroinewarrior.com up to the version 0.3, - but there were image quality and speed problems with it. -- mpg12play v0.5-v0.87: - Mpeg codec replaced with DVDview by Dirk Farin, it was a great stuff, - but it was slow and was written in C++ (I hate C++!!!) -- mpg12play v0.9-v0.95pre5: - Mpeg codec was libmpeg2 (mpeg2dec) by Aaron Holtzman & Michel Lespinasse. - It's great, optimized very fast C code with perfect image quality and - 100% MPEG standard conformance. -- MPlayer v0.3-v0.9: - It was a pack of two programs: mpg12playv0.95pre6 and my new simple AVI - player 'avip' based on avifile's Win32 DLL loader. -- MPlayer v0.10: - The MPEG and AVI player in a single binary! -- MPlayer v0.11: - Some new developers joined and from 0.11 the mplayer project is a team-work! - Added .ASF file support, and OpenDivX (see www.projectmayo.com) en/decoding. -- MPlayer v0.17 "The IdegCounter" - The release version of the 0.11pre after 4 months of heavy development! - Try it, and be amazed! Thousands of new features added... and of course - old code was improved too, bugs removed etc. -- MPlayer 0.18 "The BugCounter" - 2 months since 0.17 and here's a new release.. Completed ASF support, - more subtitle formats, introduced libao (similar to libvo but to audio), - even more stable than ever, and so on. It's a MUST ! - -As you see, I didn't write any codecs, just some players. Instead I spent -a lot of time finding the best way to parse bad damaged input files -(both MPEG and AVI) and to do perfect A-V sync with seeking ability. -My player is rock solid playing damaged MPEG files (useful for some VCDs), -and it plays bad AVI files which are unplayable with the famous -windows media player. Even AVI files without index chunk are playable, and -you can rebuild their indexes with the -idx option, thus enabling seeking! -As you see, stability and quality are the most important things for me, -but the speed is also amazing. - -What about the GUI? -~~~~~~~~~~~~~~~~~~~ -I'm not a GUI programmer. I hate GUIs, I like the pure black 80x25 console. -So the player has only keyboard control from the controlling console/xterm now. -There is a GUI development for the player, coordinated by Pontscho/Fresh! -It's still under development, but it will be merged and released real soon. -BTW he needs some nice skins, if you are a good graphician, contact him!!! - -Supported input formats: -~~~~~~~~~~~~~~~~~~~~~~~~ -- VCD (Video CD) directly from CD-ROM or from CDRwin's .bin image file -- DVD, directly from your DVD disk, using optional libcss for decryption -- MPEG 1/2 System Stream (PS/PES/VOB) and Elementary Stream (ES) file formats -- RIFF AVI file format -- ASF 1.0 file format -- supports reading from file, stdin, DVD drive or network via HTTP - -Note: about quicktime (.mov/.qt) and realmedia (.ra/.rm) support read the FAQ! - -Supported audio & video codecs: -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -*** See http://mplayer.sourceforge.net/DOCS/codecs.html *** -*** for the complete, daily updated list!!! *** - -The most important video codecs: -- MPEG1 (VCD) and MPEG2 (DVD) video -- DivX, OpenDivX and other MPEG4 variants -- Windows Media Video 7 (WMV1) used in .wmv files -- Intel Indeo codecs (3.1,3.2,4.1,5.0) -- MJPEG, ASV2 and other hardware formats - -The most important audio codecs: -- MPEG layer 2, and layer 3 (MP3) audio (native code, with 3dnow optimization) -- AC3 dolby audio (native code, with 3dnow optimization) -- Voxware audio -- alaw, msgsm, pcm and other simple old audio formats - -If you have a codec not listed here, and not supported yet, just -read http://mplayer.sourceforge.net/DOCS/codecs.html and DOCS/CODECS -to get info about its status and about how to help us adding support for it! - -Supported video output devices: -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -General: -- x11: X11 with optional SHM extension -- xv: X11 using overlays with the Xvideo extension (hardware YUV & scaling) -- gl: OpenGL renderer, so far works only with : - - all cards with Utah-GLX - - Matrox cards with X/DRI >=4.0.3 - - Radeon with X/DRI CVS -- dga: X11 DGA extension -- fbdev:Output to general framebuffers -- svga: Output to SVGAlib -- sdl: 1.1.7 : supports software scaling - 1.1.8 : supports Xvideo (hardware scaling/fullscreen) - 1.2.0 : supports aalib (textmode rendering, very funny!) -- ggi: similar to SDL - -Card specific: -- mga: Matrox G200/G400 hardware YUV overlay via the mga_vid device -- xmga: Matrox G200/G400 overlay (mga_vid) in X11 window - (Xv emulation on X 3.3.x !) -- syncfb: Matrox G400 YUV support on framebuffer (obsoleted, use mga/xmga) -- 3dfx: Voodoo2/3 hardware YUV (/dev/3dfx) support (not yet tested, maybe broken) - -Special: -- png: PNG files output (use -z switch to set compression) -- pgm: PGM files output (for testing purposes or ffmpeg encoding) -- md5: MD5sum output (for MPEG conformance tests) -- odivx:OpenDivX AVI File writer (use -br to set encoding bitrate) -- null: Null output (for speed tests/benchmarking) - -NOTE: check DOCS/VIDEOCARDS for details and requirements! - -Supported audio output devices: -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -- OSS (ioctl) driver -- SDL driver (supports up/downsampling, esd, arts etc) -- native ALSA 0.5 driver -- native ALSA 0.9 driver (buggy, use OSS emulation!) -- native ESD driver (under development?) -- SUN audio driver (/dev/audio) for BSD and Solaris8 users - -NOTE: check DOCS/SOUNDCARDS for details! - -Speed: -~~~~~~ -Most of time-critical parts are optimized for MMX/MMXext/SSE/3DNow!/3DNow!Ex. -You can improve rendering speed by setting up MTRR registers, see doc in MTRR. -Some *old* benchmark results can be found in the file DOCS/SPEED. - -Usage: -~~~~~~ - file: mplayer [options] [path/]filename - VCD: mplayer [options] -vcd trackno /dev/cdrom - DVD: mplayer [options] -dvdauth /dev/dvd filename.VOB - net: mplayer [options] http://site.com/file.[mpg|avi] - - Options: - see `mplayer -h' for options - see `mplayer -vo help' for list of available video output drivers - see `mplayer -ao help' for list of available audio output drivers - - Keys: - <- or -> seek backward/forward 10 seconds - up or down seek backward/forward 1 minute - p or SPACE pause movie (press any key to continue) - q or ^C stop playing and quit program - o toggle OSD : none / seek / seek+timer - / and * decrease/increase volume - m toggle using master/pcm channel for volume setting - f toggle fullscreen (only with -vo sdl) - - Examples: - mplayer -vo x11 /mnt/Films/Contact/contact2.mpg - mplayer -vcd 2 /dev/cdrom - mplayer -afm 3 /mnt/DVDtrailers/alien4.vob - mplayer -dvd /dev/dvd /mnt/dvd/matrix.vob - mplayer -abs 65536 -delay -0.4 -nobps ~/movies/test.avi - - Note: in order to use Matrox YUV driver (-vo mga or xmga), first you'll have - to load the driver: see DOCS/VIDEOCARDS . - -Playing from Net & stdin: -~~~~~~~~~~~~~~~~~~~~~~~~~ -Now it's possible. - -To play something by reading from stdin, just use '-' as filename: - -cat test.mpg | mplayer -vo xv - - -Restrictions: - mpg: no backward seeking - asf: no backward seeking - avi: no index reading -> no seeking at all, and playing of some files are - +impossible - -No control from controlling terminal/xterm, but hotkeys and osd works -from the window. or course LIRC still works everywhere. - -This feature combined with external wrappers extends possibilities. -For example, to play a movie just downloaded from your favourite divx -server: - rar p ast-nssvcd.rar | mplayer -vo xmga -fs - -or: - wget ftp://micorsops.com/something.avi -O - | mplayer - - - -TV output: -~~~~~~~~~~ -If you have a Matrox G400 Dual-Head card, you can watch movies on TV, using -the TV-out feature of the second head. Read DOCS/TVout-G400 for details! - -Sending bugreports, comments, feature requests etc: -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -First please read all the docs in this package, most of the problems are -described somewhere. At least read DOCS/BUGS ! We don't like answering -questions which are already answered in this readme or other docs. - -Read the DOCS/MPlayer-FAQ. Most common problems are answered there! - -You should try the latest development version (from CVS) too, maybe your -bug is already fixed, but the new version hasn't been released. -If you couldn't solve the problem, then send a quality bugreport: -read DOCS/BUGREPORTS for instructions (where, what and how...) - -Subscribe to the mplayer-users mailing list. There are many MPlayer -users, maybe they can help or know the solution to your problem. -You also should send ideas, feature requests, comments to there! -Please do not ask for features already listed in the DOCS/TODO! - -Contact information: -~~~~~~~~~~~~~~~~~~~~ -Homepage: http://mplayer.sourceforge.net - -Mailing lists: -~~~~~~~~~~~~~~ -There are some public mailing lists on MPlayer. Subscribing can be achieved on -the following addresses: - -- MPlayer core/hungarian developers list: - http://mp.dev.hu/mailman/listinfo/mplayer-devel - - I dunno, it is the FLAME list in hungarian language :) - Also some talking about mplayer core team internals, like mplayer - party, sponsors etc can be here. - -- MPlayer developers list: - http://lists.sourceforge.net/lists/listinfo/mplayer-dev-eng - - This list is about mplayer development! Talking about interface/API changes, - new libraryes, code optimization, ./configure changes, and send patches here. - Do NOT send bugreports, user questions, feature requests here! - This list should be kept low-traffic. - -- MPlayer users list: - http://lists.sourceforge.net/lists/listinfo/mplayer-users - - - send bugreports here (after reading DOCS/BUGS, BUGREPORTS) - - send feature requests here (after reading DOCS/TODO) - - send user questions here (after reading DOCS/README, INSTALL, FAQ etc) - -- MPlayer & Matrox G200/G400/G450 users: - http://lists.sourceforge.net/lists/listinfo/mplayer-matrox - - Send matrox-related questions here, - - things about mga_vid, - - matrox's official beta drivers (for X 4.x.x) - - and about matroxfb-TVout stuff. - -- mpg12play-portable developers: - http://lists.sourceforge.net/lists/listinfo/mplayer-mpg12play - - This list is for talking about mplayer ports to non-x86 platforms - (IRIX, Solaris-SPARC, Alpha, Commodore64, Sharp Calculator, - Teapot etc...) - -- MPlayer announce: - http://lists.sourceforge.net/lists/listinfo/mplayer-announce - - Very low traffic list :) - And it's read-only. I'll post something shit there if a new release - is done. - -- MPlayer CVS-log: - http://mp.dev.hu/mailman/listinfo/mplayer-cvslog - - Send only questions about CVS changes here. - (if you don't understand why a change is required or you've better fix) - Be sure in that your target developer reads this list! - -NOTE: language of above lists are ENGLISH, unless explicitly stated otherwise. - Please do not send messages using other language! - -License: -~~~~~~~~ -MPlayer incorporates a lot of code from other projects, but for now everything -except the OpenDivX stuff is under General Public License (GPL) version 2 or -later. - -Standard Disclaimer: -~~~~~~~~~~~~~~~~~~~~ -Use only at your own risk! There may be errors and inaccuracies that could -damage your system, your eye or ear. Proceed with caution, and although this is -highly unlikely, we don't take any responsibility for that!
--- a/DOCS/SDL Tue Aug 21 20:58:44 2001 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,24 +0,0 @@ -Here are some notes about SDL out in MPlayer. - -There are several commandline switches for sdl: --vo sdl:<name> specifies sdl video driver to use (ie. aalib, - dga, x11) --ao sdl:<name> specifies sdl audio driver to use (ie. dsp, esd) --noxv disables Xvideo hardware acceleration --forcexv tries to force Xvideo acceleration - -SDL Keys: -F toggles fullscreen/windowed mode -C cycles available fullscreen modes -W/S mappings for * and / (mixer control) -N sets normal/double size - -KNOWN BUGS: -- Keys pressed under aalib console driver repeat forever. - It's bug in SDL, I can't change it (tested with SDL 1.2.1). - -Please report problems or bugs with sdl out to the MPlayer-users -mailinglist. - --- -Felix Bünemann, 2001-08-14
--- a/DOCS/SOLARIS Tue Aug 21 20:58:44 2001 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,81 +0,0 @@ -Notes for Solaris users -======================= - -1. AVI file playback works best on Solaris x86, because you have the - option to use the win32 codecs on the x86 platform. On Solaris SPARC, - you'll find quite a few AVI files with non working video and/or - audio playback, because the video/audio codecs using the win32 DLLs - are not available. - - -2. To build the package you will need GNU make (gmake, /opt/sfw/gmake), - native Solaris make will not work. - - Typical error you get when building with solaris' make instead of GNU - make: - - % /usr/ccs/bin/make - make: Fatal error in reader: Makefile, line 25: Unexpected end of line seen - - -3. On Solaris SPARC, you need the GNU C/C++ Compiler; it does not matter - if GNU C/C++ compiler is configured with or without the GNU assembler. - - On Solaris x86, you need the GNU assembler and the GNU C/C++ - compiler, configured to use the GNU assembler! The mplayer code on - the x86 platform makes heavy use of MMX, SSE and 3DNOW! - instructions that cannot be compiled using Sun's assembler - /usr/ccs/bin/as. - - - The configure script tries to find out, which assembler program is - used by your "gcc" command (in case the autodetection fails, use - the "--as=/whereever/you/have/installed/gnu-as" option to tell the - configure script where it can find GNU "as" on your system). - - Error message from configure on a Solaris x86 system using GCC - without GNU assembler: - - % configure - ... - Checking assembler (/usr/ccs/bin/as) ... , failed - Please upgrade(downgrade) binutils to 2.10.1... - - (Solution: Install and use a gcc configured with "--with-as=gas") - - - Typical error you get when building with a GNU C compiler that does - not use GNU as: - - % gmake - ... - gcc -c -Iloader -Ilibvo -O4 -march=i686 -mcpu=i686 -pipe -ffast-math - -fomit-frame-pointer -I/usr/local/include -o mplayer.o mplayer.c - Assembler: mplayer.c - "<stdin>", line 3567 : Illegal mnemonic - "<stdin>", line 3567 : Syntax error - ... more "Illegal mnemonic" and "Syntax error" errors ... - - -4. For DVD support you must have the patched libcss installed. Patch: - http://www.tools.de/solaris/mplayer/ - - On that web page you'll also find solaris patches for libdvdread-0.8.0. - - -5. Due to two bugs in solaris 8 x86, you cannot reliably play DVDs using a - capacity >4GB: - - - The sd(7D) driver on solaris 8 x86 driver has bug when accessing a - disk block >4GB on a device using a logical blocksize != DEV_BSIZE - (i.e. CDROM and DVD media). Due to a 32bit int overflow, a disk - address modulo 4GB is accessed. - (http://groups.yahoo.com/group/solarisonintel/message/22516) - - - The similar bug is present in the hsfs(7FS) filesystem code (aka - ISO9660), hsfs currently does not support partitions/disks >4GB, - all data is accessed modulo 4GB - (http://groups.yahoo.com/group/solarisonintel/message/22592) - --- -Jürgen Keil
--- a/DOCS/SOUNDCARDS Tue Aug 21 20:58:44 2001 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,61 +0,0 @@ - -Recommendations for misc. soundcards -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -Aureal Vortex 2: - OSS/Free: no driver - OSS : OK - ALSA : no driver - Max kHz : 48 - Driver : aureal.sourceforge.net - Driver2 : http://makacs.poliod.hu/~pontscho/aureal/au88xx-1.1.3.tar.bz2 - (buffer size increased to 64k) - -GUS PnP: - OSS/Free: no driver - OSS : OK - ALSA : OK - Max kHz : 48 - -SB Live!: - OSS : OK - ALSA : (?) - Max kHz : 48 - -SB AWE 64 OSS : max 44kHz - ALSA : 48kHz sounds shit - Max kHz : 48 - -Gravis UltraSound ACE: - OSS : max 44Khz. Also has problems with the - new sound code. - ALSA : OK - Max kHz : 48 - -Gravis UltraSound MAX: - OSS : OK - ALSA : OK (?) - Max kHz : 48 - -ESS 688: - OSS : OK - ALSA : OK (?) - Max kHz : 48 - -PC Speaker or DAC: - OSS : OK (new timing code?) - ALSA : no driver - Max kHz : 6 ;) (the driver emulates 44.1 maybe more) - Driver : ftp://ftp.infradead.org/pub/pcsp - - - use at least 2.4 if possible, 2.2 isn't tested - - if sound clicks when playing from CD-ROM, turn on IRQ unmasking ! - for example "hdparm -u1 /dev/cdrom" (see "man hdparm" !!!) - This is recommended anyways... (for XMMS, etc...) - Read DOCS/CDROM . - - don't use your soundcard by other application ( for ex. XMMS ) ! - if you use ESD, start MPlayer with the esddsp utility ! - - Please tell us how MPlayer and your soundcard(s) worked together! - - Gabucino -
--- a/DOCS/SPEED Tue Aug 21 20:58:44 2001 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,42 +0,0 @@ -Some benchmark values -===================== - -* OLD! MPlayer is even faster now :) - -Test system: Abit BE6-2 mb, Intel Celeron2-566 @ 850Mhz, Matrox G400 MAX -Linux: Slackware 7.0, kernel 2.4.0-test8, glibc 2.1.2 - -MPEG 1/2 Video codec CPU usage in percent (%) : -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -1. Setup: mga_vid YUV, MMX idct, no mtrr settings -2. Setup: mga_vid YUV, SSE idct, with mtrr settings -3. Setup: Utah-GLX OpenGL + software C YUV->RGB, SSE idct -4. Setup: X11 Shm (32bpp) + software MMX YUV->RGB, SSE idct, with mtrr -5. Setup: null output (codec speed only) -6. Setup: X11 4.0.1e + Xv extension, SSE idct, with mtrr - - 1. 2. 3. 4. 5. 6. - DolbyDigitalBroadway.vob: 60% 35% 78% 67% 26% 47% - matrix.vob (trailer): 51% 30% 62% 56% 23% 40% - PAL (352x288/25) mpeg1: 16% 9% 30% 13% 7% 8% - 3D anim (30fps mpeg1): 20% 14% 35% 25% 12% 14% - -Win32 Video codec CPU usage in percent (%) : -~~~~~~~~~~~~~~~~~~~~~~~~~~~ -(All tests with YUV/YUY2 output format to null device) - DivX 720x416/30fps 27% - DivX 704x320/25fps 24% - DivX 640x352/24fps 22% - DivX 480x204/24fps 12% - IV50 320x240/15fps 7% - -Audio codec CPU usage in percent (%) : -~~~~~~~~~~~~~~~~~~~~~ - Mpeg layer-2 audio (VCD): 1.2% - PCM audio (DVD, 48khz): 1.3% - AC3 audio (DVD, 2.0 mode) 4.1% - AC3 audio (DVD, 5.1 mode) 6.5% - AC3 audio (DivX, 5.1 mode) 3.5% - MP3 audio (mp3lib) 2.8% - MP3 audio (l3codeca.dll) 1.8% - DivX audio (divxa32.dll) 3.3%
--- a/DOCS/TODO Tue Aug 21 20:58:44 2001 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,54 +0,0 @@ -TO DO: -~~~~~~ -For the Release: -- update homepage about CVS access (new server) - -After the release: -- fix cvslog postings for new CVS server - DONE -- finish OSD control (mixer, brightness/contrast/etc..) -- libvo2... -- direct rendering -- interlaced mpeg2 support -- move video decoding out of mplayer.c -- move fileformat-dependent code out of mplayer.c -- qt/mov support (alex: working on it) -- real mpeg4 (momusys) support (mp4v) -- fast forward (changing fps on-the-fly) -- subtitles with black rectangle background (option) -- audio downmixing (for fast-forward and for old soundcards) -- upgrade opendivx decore - FAILED (CVS version is unstable now) -- remove opendivx encore - SKIPPED - -DONE: (move this to ChangeLog among other things) -- CVS snapshots - DONE (generated after each commits) -- update win32codec.zip package!!! (missing qdv.dll etc) - DONE -- fix help-mp.h (remove -alsa etc, add new important options) - DONE -- fix up fonts (make release version of font generator?) - DONE -- apply X11/ICCCM compliance patches - DONE -- play_only_n_frames option (chl) - DONE -- -benchmark option [Gabucino] - DONE -- gcc 3.0 fixup - DONE -- ': File not found!' bug - DONE [szabi] -- sub sync +/- keys - DONE (lez) -- fix subtitle path in sub_filename() - DONE (lez) -- fix -nobps avi seeking - DONE? (arpi) -- fix x11 driver to work without SHM (for remote playing etc) - DONE? -- fast OSD renderer - DONE (arpi) -- fix -fps option for mpeg2 - DONE (arpi) -- fix -framedrop, support for mpeg files - DONE -- audio playback rate setting [Jelmer Feenstra] - DONE -- RESET_AUDIO optional - DONE? - with libao2 it shouldn't be problem -- support SSA subtitles : http://www.eswat.demon.co.uk - DONE??? -- fix X4.0.x/DRI OpenGL - DONE? mga&radeon works with 4.0.3/DRI -- finish ASF seeking (find next keyframe) - DONE? -- show current frame number [Gabucino] - DONE! (for AVI) - -High Priority: -- further optimizations - DONE? -- support mpeg2 interlaced files (field pictures) - hacked -- integrating the gui? - DONE? -- seek_to_frame and seek_to_index options - -Low Priority: -- support for MPEG TS (transport streams) - I need sample files! -- audio copy/encoding capability - working on (Atmos)
--- a/DOCS/TVout-G400 Tue Aug 21 20:58:44 2001 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,67 +0,0 @@ -MPlayer TV-out with G400 -~~~~~~~~~~~~~~~~~~~~~~~~ -(this was a reply at the mplayer-matrox list) - -> What I'd love to see in mplayer is the the same feature that I see in my -> windows box. When I start a movie in windows (in a window or in full screen) -> the movie is also redirected to the tv-out and I can also see it full screen -> on my tv. I love this feature and was wondering how hard it would be to add -> such a feature to mplayer. - -It's a driver limitation. BES (Back-End Scaler, it's the overlay generator -and YUV scaling engine of G200/G400/G450 cards) works only with CRTC1. -Normally, CRTC1 (textmode, every bpp gfx and BES) is routed to HEAD1, -and CRTC2 (only 16/32bpp gfx) is routed to HEAD2 (TV-out). - -Under linux, you have two choices to get TV-out working: - -1. Using X 4.0.x + the HAL driver from matrox, so you'll get dual-head - support, and you'll be able to redirect second output to the TV. - Unfortunately it has Macrovision encryption enabled, so it will - only work on directly-connected TV, no through VCR. - Other problem is that Xv doesn't work on the second head. - (I don't know how Windows solve it, maybe it swaps the CRTCs between - the heads, or just uses YUV framebuffer of second DAC with some trick) - -2. Using matroxfb with dual-head support enabled (2.4.x kernels). - You'll be able to get a framebuffer console (using CRTC2, so it's - slow), and TV-out (using CRTC1, with BES support). - You have to forget X while using this kind of TV-out! :( - - How to enable? - -- Compile all the matrox-related things to modules in the kernel. - (you MUST compile them to modules, at least I couldn't get them - working built-in yet) - [reboot to new kernel & install modules, but don't load them yet!] - -- Run the 'modules' script from the TV-out directory of mplayer. - It will switch your console to framebuffer. - Change to tty1 (ALT+F1)! - Now run the script 'independent', it will set up your tty's: - tty 1,2: fb console, CRTC2, head 1 (monitor) - tty 3,4,5...: framebuffer+BES, CRTC1, head 2 (TV-out) - You should run the scripts TV-* and Mon-* to set up resolutions: - change to tty1 (ALT+F1), and run Mon-* (one of them) - change to tty3 (ALT+F3) and then back to tty1 (ALT+F1) - (this change will select tty3 on /dev/fb1 - tricky) - run TV-* (one of them) - (now you'll get a console on your PAL TV - don't know about NTSC) - - Now if you start mplayer (on tty1), the picture will show up on - the tty3, so you'll see it on your TV or second monitor. - -Yes, it is a bit 'hack' now. But I'm waiting for the marvel -project to be finished, it will provide real TV-out drivers, I hope. - -My current problem is that BES is working only with CRTC1. So picture -will always shown up on head routed to CRTC1 (normaly the monitor), -so i have to swap CRTC's, but this way your console will framebuffer -(CRTC2 can't do text-mode) and a bit slow (no acceleration). :( - - -> anyway i also just get monochrome output on the tv ... -Maybe you have NTSC TV? Or just didn't run one of TV-* scripts. - - -A'rpi / Astral & ESP-team
--- a/DOCS/VIDEOCARDS Tue Aug 21 20:58:44 2001 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,199 +0,0 @@ - -Videocards with hardware acceleration: -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -* read DOCS/MTRR too! - - "Hardware acceleration" usually means hardware YUV conversion, scaling, -bilinear filtering. Under Linux, there are several ways to access it: - -I. The Xv (XVideo) extension of XFree86 4.0.2 -I.1. Card-specific notes/settings -II. OpenGL drivers with glTexSubImage() support -III. Native card-specific drivers, using special abilities of some cards -IV. DGA - direct graphic access. no YUV & scaling, but faster than raw X11 -V. Not really acceleration, but... - -Now, let's see them in details: - -But before reading this, read DOCS/MTRR, and check your /proc/mtrr. -Believe me, it's worth it! Speeds things up more than 5 times on P3!!! - -I. Under XFree86 4.0.2 or newer, using the XVideo extension: - this is what the option '-vo xv' uses. - -In order to make this work, be sure to check the following: - -1. You use XFree86 4.0.2 or newer (former versions don't have XVideo) - -2. Your card actually supports harware acceleration (modern cards do) - -3. X loads the XVideo extension, it's something like this: - (II) Loading extension XVideo - in /var/log/XFree86.0.log - NOTE : this loads only the XFree86's extension. In a good install, this is - always loaded, and doesn't mean that the _card's_ XVideo support is - loaded! - -4. Your card has Xv support under Linux. To check, try 'xvinfo', it is the - part of the XFree86 distribution. It should display a long text, similar - to this: - - X-Video Extension version 2.2 - screen #0 - Adaptor #0: "Savage Streams Engine" - number of ports: 1 - port base: 43 - operations supported: PutImage - supported visuals: - depth 16, visualID 0x22 - depth 16, visualID 0x23 - number of attributes: 5 - (...) - Number of image formats: 7 - id: 0x32595559 (YUY2) - guid: 59555932-0000-0010-8000-00aa00389b71 - bits per pixel: 16 - number of planes: 1 - type: YUV (packed) - id: 0x32315659 (YV12) - guid: 59563132-0000-0010-8000-00aa00389b71 - bits per pixel: 12 - number of planes: 3 - type: YUV (planar) - (...etc...) - - It must support YUY2 packed, and YV12 planar pixel formats to be - usable with MPlayer. - -I.1. - a, If xvinfo doesn't show these, but XVideo extension is loaded and you're - sure your card can do YUV conversion, - - 3dfx voodoo3/banshee users download a new DRI from - http://dri.sourceforge.net (or possibly use X 4.1.0) - - S3 Savage4 users download XFree86 >= 4.0.3 (4.1.0 preferred) - - nVidia users sell their card.. or download the nVidia driver from - nVidia's website - b, The GATOS driver (for ATI cards) has VSYNC enabled by default. It means - that decoding speed (!) is synced to the monitor's refresh rate. If - playing seems to be slow, try disabling VSYNC somehow, or set refresh - rate to n*(fps of the movie) Hz. - -5. Be sure MPlayer is compiled with the "xv" target. "./configure" should say: - Checking for Xv ... yes - -6. If all is fine, try the option '-vo xv' . It should work. - (if it doesn't, send us a bugreport. See the BUGREPORTS on how to do this.) - - -II. OpenGL drivers with *working* *fast* glTexSubImage() support. - - The old Utah-GLX drivers (for X 3.3.6) have it, with all cards. - See http://utah-glx.sourceforge.net for details about how to install it. - - DRI >= 4.0.3 supports it only with Matrox cards, and Radeon. - See dri.sourceforge.net for download, and installation instructions. - -III. Native card-specific drivers - -There are 3 native drivers for Linux: -1. Matrox G200/G400/G450 BES (Back-End Scaler) support -> mga_vid kernel drv. - It's active developed by me (A'rpi), and it has hardware VSYNC support - with triple buffering. It works on both framebuffer console and under X. - - To use, simply compile the mga_vid.o in the drivers/ subdir (type: make) - create /dev/mga_vid device : - mknod /dev/mga_vid c 178 0 - and load the driver with insmod mga_vid.o. You should verify the memory size - detection using the 'dmesg' command. If it's bad, use the mga_ram_size - option (rmmod mga_vid first), specify card's memory size in MB: - insmod mga_vid.o mga_ram_size=16 - To make it load/unload automatically when needed, insert the following line - at the end of /etc/modules.conf : - alias char-major-178 mga_vid - Then run - depmod -a - - Using it from MPlayer: (you should re-compile it with mga_vid support...) - - Use the 'mga' vo driver on framebuffer console (matroxfb): -vo mga - and use the xmga driver for X 3.3.x: -vo xmga - - Note: it works under X 4.0.2 too, but it conflicts with the Xv driver, - so avoid using both. Usually X restart or reboot needs to get Xv usable - again :( - - If you have a dual-head G400, and a TV or second monitor connected to head2, - then you can watch movies on it: read DOCS/TVout-G400 for details (big hack) - -2. SiS 6326 YUV Framebuffer driver -> sis_vid kernel driver - Its interface should be compatible with the mga_vid, but the driver - was not updated after the mga_vid changes, so it's outdated now. - Volunteers needed to test it and bring the code up-to-date. - -3. 3dfx (which ones?) YUV+scaler support, using /dev/3dfx (tdfx.o driver?) - The /dev/3dfx kernel driver exists only for 2.2.x kernels, for use with - Glide 2.x Linux ports. It's not tested with MPlayer, and so no more - supported. Volunteers needed to test it and bring the code up-to-date. - - -IV. If your card lacks hardware acceleration, you can still boost your fps by -using the DGA driver: - -1. Make sure X loads the DGA extension: - (II) Loading extension XFree86-DGA - (you see, XFree86 4.0.x or greater is VERY RECOMMENDED!) -2. MPlayer's DGA driver is autodetected on ./configure, or you can force it - with --enable-dga. -3. If the driver couldn't switch to a smaller resolution, experiment with - switches -vm (only with X 3.3.x), -fs, -bpp, -zoom to find a video mode that - the movie fits in. There is no converter right now.. :( -4. Become ROOT. DGA needs root access to be able to write directly video memory. - If you want to run it as user, then install MPlayer SUID root: - 'chown root /usr/local/bin/mplayer' - 'chmod 750 /usr/local/bin/mplayer' - 'chmod +s /usr/local/bin/mplayer' - Now it works as a simple user, too. - !!!! BUT STAY TUNED !!!! - This is a BIG security risk! Never do this on a server or on a computer - can be accessed by more people than only you because they can gain root - privilegies through suid root mplayer. - !!!! SO YOU HAVE BEEN WARNED ... !!!! -5. Use '-vo dga' option, and there you go! (hope so:) -6. Try if the '-vo sdl:dga' options work for you! It's much faster!!! - -If you have fast enough CPU (P3 800 for example) you can try fsdga for -fullscreen mpeg playing (using software YUV->RGB scaling): -mplayer -vo fsdga ... - - -V. Not really acceleration, but... - -a, If you don't have X... - ...use the SVGAlib target! Be sure not to use the -fs switch, since it - toggles the usage of the software scaler, and it's SLOOOW now, unless you - have a real fast CPU (and/or MTRR?). :( - - Of course you'll have to install svgalib and its development package in - order for MPlayer build its SVGAlib driver (autodetected, but can be - forced), and don't forget to edit /etc/vga/libvga.config to suit your - card & monitor. - - Try the aalib target ('-vo sdl:aalib'), it's great! :) - -b, You want to use framebuffer... - ... Whether to build the FBdev target is autodetected during ./configure . - Read the framebuffer documentation in the kernel sources - (Documentation/fb/*) for info on how to enable it, etc.. ! - - ... but your card doesn't support VBE 2.0 standard (older ISA/PCI - cards, such as S3 Trio64), only VBE 1.2 (or older?) : - Well, VESAfb is still available, but you'll have to load SciTech Display - Doctor (formerly UniVBE) before booting Linux. Use a DOS boot disk or - whatever. And don't forget to register your UniVBE ;)) - - NOTE : FBdev video mode changing _does not work_ with the VESA framebuffer, - and don't ask for it, since it's not an MPlayer limitation. - - Gabucino & A'rpi -
--- a/DOCS/documentation.html Tue Aug 21 20:58:44 2001 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,2312 +0,0 @@ -<HTML> - -<BODY> - -<P> -<CENTER>MPlayer - Movie Player for LINUX (C) 2000-2001 Arpad Gereoffy (A'rpi/ESP-team)<BR> -<BR> -<A HREF="http://www.mplayerhq.hu">http://www.mplayerhq.hu</A></CENTER><BR> -</P> - -<P><HR></P> - -<P> -Table of Contents -</P> - -<P><HR></P> - -<PRE> -<P> - <A HREF="#1">1. Introduction</A> -</P> -<P> - <A HREF="#1.1">1.1 Overview</A> - <A HREF="#1.2">1.2 History</A> - <A HREF="#1.3">1.3 Installation</A> - <A HREF="#1.4">1.4 What about the GUI?</A> -</P> -<P> - <A HREF="#2">2. Features</A> -</P> -<P> - <A HREF="#2.1">2.1 Video Formats, Audio & Video Codecs</A> - <A HREF="#2.1.1">2.1.1 Supported input formats</A> - <A HREF="#2.1.2">2.1.2 Supported audio & video codecs</A> - <A HREF="#2.1.2.1">2.1.2.1 OpenDivX</A> - <A HREF="#2.1.2.2">2.1.2.2 ffmpeg's DivX/libavcodec</A> - <A HREF="#2.1.4">2.1.4 Codec importing howto</A> - <A HREF="#2.1.4.1">2.1.4.1 VFW codecs</A> - <A HREF="#2.1.4.2">2.1.4.2 DirectShow codecs</A> -</P> -<P> - <A HREF="#2.2">2.2 Video & Audio output devices</A> - <A HREF="#2.2.1">2.2.1 Video output devices</A> - <A HREF="#2.2.1.1">2.2.1.1 Xv</A> - <A HREF="#2.2.1.1.1">2.2.1.1.1 3dfx cards</A> - <A HREF="#2.2.1.1.2">2.2.1.1.2 S3 cards</A> - <A HREF="#2.2.1.1.3">2.2.1.1.3 nVidia cards</A> - <A HREF="#2.2.1.1.4">2.2.1.1.4 ATI cards</A> - <A HREF="#2.2.1.2">2.2.1.2 DGA</A> - <A HREF="#2.2.1.2.1">2.2.1.2.1 Summary</A> - <A HREF="#2.2.1.2.2">2.2.1.2.2 What is DGA</A> - <A HREF="#2.2.1.2.3">2.2.1.2.3 Installing DGA support for MPlayer</A> - <A HREF="#2.2.1.2.4">2.2.1.2.4 Resolution switching</A> - <A HREF="#2.2.1.2.5">2.2.1.2.5 DGA & MPlayer</A> - <A HREF="#2.2.1.2.6">2.2.1.2.6 Features of the DGA driver</A> - <A HREF="#2.2.1.2.7">2.2.1.2.7 Speed issues</A> - <A HREF="#2.2.1.2.8">2.2.1.2.8 Known bugs</A> - <A HREF="#2.2.1.2.9">2.2.1.2.9 Future work</A> - <A HREF="#2.2.1.2.A">2.2.1.2.A Some modelines</A> - <A HREF="#2.2.1.2.B">2.2.1.2.B Bug Reports</A> - <A HREF="#2.2.1.3">2.2.1.3 SDL</A> - <A HREF="#2.2.1.4">2.2.1.4 SVGAlib</A> - <A HREF="#2.2.1.5">2.2.1.5 Framebuffer output (FBdev)</A> - <A HREF="#2.2.1.6">2.2.1.6 Matrox framebuffer (mga_vid)</A> - <A HREF="#2.2.1.7">2.2.1.7 SiS 6326 framebuffer (sis_vid)</A> - <A HREF="#2.2.1.8">2.2.1.8 3dfx YUV support</A> - <A HREF="#2.2.1.9">2.2.1.9 OpenGL output</A> - <A HREF="#2.2.1.10">2.2.1.10 AAlib - text mode displaying</A> - <A HREF="#2.2.2">2.2.2 Audio output devices</A> - <A HREF="#2.2.2.1">2.2.2.1 Soundcard experiences, recommendations</A> -</P> -<P> - <A HREF="#3">3. Usage</A> -</P> -<P> - <A HREF="#3.1">3.1 Control from keyboard</A> - <A HREF="#3.2">3.2 Control from LIRC (Linux Infrared Remote Control)</A> - <A HREF="#3.3">3.3 Streaming from network or pipes</A> -</P> -<P> - <A HREF="#4">4. TV-out support</A> -</P> -<P> - <A HREF="#4.1">4.1 Matrox cards</A> -</P> -<P> - <A HREF="#5">5. Tuning</A> -</P> -<P> - <A HREF="#5.1">5.1 CD drives</A> - <A HREF="#5.2">5.2 DVD drives</A> - <A HREF="#5.3">5.3 MTRR</A> -</P> -<P> - <A HREF="#6">6. FAQ section</A> -</P> -<P> - <A HREF="#6.1">6.1 Compilation</A> - <A HREF="#6.2">6.2 General questions</A> - <A HREF="#6.3">6.3 File playing problems</A> - <A HREF="#6.4">6.4 Video/audio driver problems</A> - <A HREF="#6.5">6.5 Feature requests</A> - <A HREF="#6.6">6.6 DVD FAQ</A> -</P> -<P> - <A HREF="#7">7. Misc OS'es</A> -</P> -<P> - <A HREF="#7.1">7.1 Debian packaging</A> - <A HREF="#7.2">7.2 FreeBSD</A> - <A HREF="#7.3">7.3 Solaris 8</A> - <A HREF="#7.4">7.4 StrongARM</A> -</P> -<P> - <A HREF="#A">A. Authors</A> -</P> -<P> - <A HREF="#B">B. Mailing lists</A> -</P> -<P> - <A HREF="#C">C. How to report bugs</A> -</P> -</PRE> -<P><HR></P> - -<P><PRE> - <A NAME=1>1. Introduction - - - <A NAME=1.1>1.1. Overview - - <B>MPlayer</B> is a movie player for LINUX. It plays most MPEG, AVI and ASF files, - supported by many native and Win32 DLL codecs. You can watch VCD, DVD and - even DivX movies too. The another big feature of mplayer is the wide range of - supported output drivers. It works with X11, Xv, DGA, OpenGL, SVGAlib, fbdev, - AAlib, but you can use SDL (and this way all drivers of SDL) and some - lowlevel card-specific drivers (for Matrox) too! Most of them supports - software or hardware scaling, so you can enjoy movies in fullscreen. And what - about the nice big antialiased shaded subtitles (7 supported types!!!) with - hungarian, english, cyrillic, czech, korean fonts, and OSD? - - I didn't write any codecs, just some players. I spent - a lot of time finding the best way to parse bad damaged input files - (both MPEG and AVI) and to do perfect A-V sync with seeking ability. - My player is rock solid playing damaged MPEG files (useful for some VCDs), - and it plays bad AVI files which are unplayable with the famous - windows media player. Even AVI files without index chunk are playable, and - you can rebuild their indexes with the -idx option, thus enabling seeking! - As you see, stability and quality are the most important things for me, - but the speed is also amazing. - - - <A NAME=1.2>1.2. History - - This began a year ago... - I've tried lots of players under linux (mtv,xmps,dvdview,livid/oms,VideoLAN, - xine,xanim,avifile,xmmp) but they all have some problem. Mostly with special - files or with audio/video sync. Most of them is unable to play both MPEG1, - MPEG2 and AVI (DivX) files. Many players have image quality or speed problems - too. So I've decided to write/modify one... - - - mpg12play v0.1-v0.3: - The first try, hacked together in a half hour! - I've used libmpeg3 from www.heroinewarrior.com up to the version 0.3, - but there were image quality and speed problems with it. - - mpg12play v0.5-v0.87: - Mpeg codec replaced with DVDview by Dirk Farin, it was a great stuff, - but it was slow and was written in C++ (I hate C++!!!) - - mpg12play v0.9-v0.95pre5: - Mpeg codec was libmpeg2 (mpeg2dec) by Aaron Holtzman & Michel Lespinasse. - It's great, optimized very fast C code with perfect image quality and - 100% MPEG standard conformance. - - <B>MPlayer</B> v0.3-v0.9: - It was a pack of two programs: mpg12playv0.95pre6 and my new simple AVI - player 'avip' based on avifile's Win32 DLL loader. - - <B>MPlayer</B> v0.10: - The MPEG and AVI player in a single binary! - - <B>MPlayer</B> v0.11: - Some new developers joined and from 0.11 the mplayer project is a team-work! - Added .ASF file support, and OpenDivX (see www.projectmayo.com) en/decoding. - - <B>MPlayer</B> v0.17 "The IdegCounter" - The release version of the 0.11pre after 4 months of heavy development! - Try it, and be amazed! Thousands of new features added... and of course - old code was improved too, bugs removed etc. - - <B>MPlayer</B> 0.18 "The BugCounter" - 2 months since 0.17 and here's a new release.. Completed ASF support, - more subtitle formats, introduced libao (similar to libvo but to audio), - even more stable than ever, and so on. It's a MUST ! - - - <A NAME=1.3>1.3. Installation - - If you plan to use <B>MPlayer</B> on x86 architecture, you possibly want to use - Win32 codecs. Download and unzip w32codecs.zip to /usr/lib/win32 . - Note: the avifile project has similar codecs package, but it differs - from our, so if you want to use all supported codecs, then use - our package! However, you can use our codecs package with avifile. - - If you own a Matrox G200/G400/G450 card, then please see the <A HREF="#2.2.1.6">2.2.1.6</A> - section in order to gain big speedup. It is important to do these steps - _before_ compiling <B>MPlayer</B>, otherwise no Matrox-specific support will be - built. - - If you plan to use the ProjectMayo's <B>OpenDivX</B> codec, check the - <A HREF="#2.1.2.1">2.1.2.1</A> section before compiling. - - Then build <B>MPlayer</B>: - - - ./configure - make - make install - - - It is recommended to browse the output of ./configure , it contains info - about what will be built, and what won't. You may also want to view - config.h and config.mak files. - - Though not mandatory, the fonts should be installed in order to gain - OSD, and subtitle functionality. Download mp_font3.zip (and optional - language updates) and optional (if exists) language updates. - - - mkdir ~/.mplayer/font - cd ~/.mplayer/font - unzip mp_font3.zip - unzip mp_font3_hu.zip - - - <A NAME=1.4>1.4. What about the GUI ? - - I'm not a GUI programmer. I hate GUIs, I like the pure black 80x25 console. - So the player has only keyboard control from the controlling console/xterm now. - There is a GUI development for the player, coordinated by Pontscho/Fresh! - It's still under development, but it will be merged and released real soon. - BTW he needs some nice skins, if you are a good graphician, contact him!!! - - - <A NAME=2>2. Features - - - <A NAME=2.1>2.1. Video Formats, Audio & Video Codecs - - - <A NAME=2.1.1>2.1.1. Supported input formats - - <B>MPlayer</B> can read/play from the following devices/formats: - - VCD (Video CD) directly from CD-ROM or from CDRwin's .bin image file - - DVD, directly from your DVD disk, using optional libcss for decryption - - MPEG 1/2 System Stream (PS/PES/VOB) and Elementary Stream (ES) file - formats - - RIFF AVI file format - - ASF 1.0 file format - - supports reading from file, stdin, DVD drive or network via HTTP - - Note: about quicktime (.mov/.qt) and realmedia (.ra/.rm) support read the FAQ! - - - <A NAME=2.1.2>2.1.2. Supported audio & video codecs - - See http://mplayer.sourceforge.net/DOCS/codecs.html for the complete, - daily updated list!!! - - The most important video codecs: - - MPEG1 (VCD) and MPEG2 (DVD) video - - DivX, FFmpeg, OpenDivX and other MPEG4 variants - - Windows Media Video 7 (WMV1) and Windows Media Video 8 used in .wmv files - - Intel Indeo codecs (3.1,3.2,4.1,5.0) - - MJPEG, ASV2 and other hardware formats - - The most important audio codecs: - - MPEG layer 2, and layer 3 (MP3) audio (native code, with 3dnow optimization) - - AC3 dolby audio (native code, with 3dnow optimization) - - Voxware audio - - alaw, msgsm, pcm and other simple old audio formats - - If you have a codec not listed here, and not supported yet, just - read http://mplayer.sourceforge.net/DOCS/codecs.html - to get info about its status and about how to help us adding support for it! - - - <A NAME=2.1.2.1>2.1.2.1. OpenDivX - - This section contains information about the DivX/OpenDivX codecs of - <A HREF="http://www.projectmayo.com">ProjectMayo</A>. Their first available alpha version was the OpenDivX 4.0 - alpha 47 and 48. Support for this was/is included in <B>MPlayer</B>, and built by - default. We even used its postprocessing code to optionally enhance visual - quality of MPEG1/2 movies. - - The new generation of this codec can even decode movies made with the - infamous DivX codec! And it's not everything, it's MUCH faster than the - traditional Win32 DivX DLL's. See below for configuration. The only - disadvantage of this codec is that it's currently closed-source. :( - - The codec can be downloaded from the following URL: - - - http://download2.projectmayo.com/dnload/divx4linux/divx4linux-20010718.zip - - - No automatic installing available at this time, so install it manually, - EXACTLY as described here. Unpack it, and copy files to their place: - - - cp libdivxdecore.so.0.0.0 /usr/local/lib/ - ln -s /usr/local/lib/libdivxdecore.so.0.0.0 /usr/local/lib/libdivxdecore.so.0 - ln -s /usr/local/lib/libdivxdecore.so.0 /usr/local/lib/libdivxdecore.so - ldconfig - cp decore.h /usr/local/include/ - - - <B>MPlayer</B> autodetects if OpenDivX is (properly) installed, just compile - as usual. If it doesn't detect it, you didn't install it exactly as above, - and/or has fucked up config (see last question of 6.1 section). - - Using it is a bit tricky. As it conflicts with the old OpenDivX (it's API is - very similar to OpenDivX's), OpenDivX code is disabled, and the OpenDivX - driver calls this library too. - - Generally we can pinpoint this issue to that you have two options to use - this codec: - - - -vc odivx : using divx4 codec as a new version of OpenDivX. - in this case it produces YV12 image in its own buffer, - and <B>MPlayer</B> (libvo) does colorspace conversion. - - -vc divx4 : using divx4 codec's colorspace conversion. - in this mode, you can use YUY2/UYVY too. - - The 'odivx' method is usually faster, due to the fact that it transfers - image data in YV12 (planar YUV 4:2:0) format, thus requiring much less - bandwidth on the bus. For packed YUV modes (YUY2, UYVY) use the 'divx4' - method. For RGB modes you can choose freely, their speed is same, maybe - differ according to the current bpp. - - Note: it supports postprocessing too, but range of values is strange: - - 0 no postproc - 10 .. 20 postprocessing, normal - (like level 2 with divxds) - 30 .. 60 hard postprocessing, eats many CPU. - (like level 4 with divxds) - - - <A NAME=2.1.2.2>2.1.2.2. ffmpeg's DivX/libavcodec - - Beginning with version 0.4.2 , <A HREF="http://ffmpeg.sourceforge.net">ffmpeg</A> contains an <B>opensource</B> DivX codec, - which is compatible with the traditional DivX. <B>MPlayer</B> contains this codec, - and this makes it possible to <B>watch DivX movies on non-x86 platforms!</B> - To get it compile, you'll need nasm, bison, and flex, above the other - devel tools. It was removed from <B>MPlayer</B>'s cvs tree, you have - to download it manually directly from <B>FFmpeg</B>'s tree : - - - cvs -d:pserver:anonymous@cvs.ffmpeg.sourceforge.net:/cvsroot/ffmpeg login - cvs -d:pserver:anonymous@cvs.ffmpeg.sourceforge.net:/cvsroot/ffmpeg co ffmpeg - - - Note: if you copy with CVS subdirs, next time it's enough to do - 'cvs update'. - - Now, move the newly downloaded ffmpeg source's <B>libavcodec</B> directory, - (with all it's subdirectories) to <B>MPlayer</B>'s tree, so it will look - like this : - - - main/libavcodec - - - Symlinking is NOT enough, you have to copy it. - - ./configure detects if it can be built. At the moment it doesn't support - postprocessing, and is under optimization (it's faster than the DS/VfW DivX - codec). - - In order to use it, refresh your codecs.conf file, and do as the manpage, - or the example.conf says (the -vfm option). - - Note: libavcodec contains other codecs as well, but at the moment we mostly - focus on ffdivx, and it's unlikely that this will change. - - <A NAME=2.1.3>2.1.4. Codec importing howto - - - <A NAME=2.1.4.1>2.1.4.1. VFW codecs - - VfW (Video for Windows) is the old Video API for Windows. Its codecs have - the .DLL or (rarely) .DRV extension. - If <B>MPlayer</B> fails with your AVI: - - - UNKNOWN video codec: HFYU (0x55594648) - - - It means your AVI is encoded with a codec which has the HFYU fourcc (HFYU = - HuffYUV codec, DIV3 = DivX Low Motion, etc...). Now that we know this, we'll - have to find out which DLL Windows loads in order to play this file. In our - case, the system.ini contains this (with many others): - - - VIDC.HFYU=huffyuv.dll - - - So we'll need the huffyuv.dll file. Note that the audio codecs are specified - with the MSACM prefix : - - - msacm.l3acm=L3codeca.acm - - - This is the MP3 codec. - So, now we have all the info needed (fourcc, codec file, sample AVI), submit - your codec support request in mail, and upload these files to the FTP: - ftp://mplayerhq.hu/MPlayer/incoming/[codecname]/ - - - <A NAME=2.1.4.2>2.1.4.2. DirectShow codecs - - DirectShow is the newer Video API, which is even worse than its predecessor. - Things are harder with DirectShow, since - - system.ini doesn't contain the needed information, instead it's stored in - the registry :( - - we'll need the GUID of the codec. - - So let's search that goddamn registry.. - - Start 'regedit' - - press ctrl-f, disable the first two checkbox, and enable the third. Type - the fourcc of the codec. (for ex.: TM20) - - you should see a field which contains the path and filename - (for ex. : C:\WINDOWS\SYSTEM\TM20DEC.AX) - - now that we have the file, we'll need the GUID. Try searching again, but - now we'll search for the codec's name, not the fourcc. Its name can be acquired - when Media Player is playing that file, by checking File/Properties/Advanced. - If not, bad luck ;) Try guessing. - (for ex. search for : TrueMotion) - - if found (in registry), there should be a FriendlyName field, and a CLSID - field. Write down that 16 byte of CLSID, this is the GUID required by us. - - - NOTE : if searching fails, try to enable all the checkboxes.. you may have - false hits, but maybe you'll have the right, too... - NOTE : dump that M$ shit. - - - So, now we have all the info needed (fourcc, GUID, codec file, sample AVI), - submit your codec support request in mail, and upload these files to the FTP: - ftp://mplayerhq.hu/MPlayer/incoming/[codecname]/ - - - <A NAME=2.2>2.2. Video & Audio output devices - - - <A NAME=2.2.1>2.2.1. Video output devices - - General: - - x11: X11 with optional SHM extension - - xv: X11 using overlays with the Xvideo extension (hardware YUV & scaling) - - gl: OpenGL renderer, so far works only with : - - all cards with Utah-GLX - - Matrox cards with X/DRI >=4.0.3 - - Radeon with X/DRI CVS - - dga: X11 DGA extension - - fbdev:Output to general framebuffers - - svga: Output to SVGAlib - - sdl: 1.1.7 : supports software scaling - 1.1.8 : supports Xvideo (hardware scaling/fullscreen) - 1.2.0 : supports AAlib (-vo aa is very recommended, see below!) - - ggi: similar to SDL - - aa: textmode rendering with AAlib - - Card specific: - - mga: Matrox G200/G400 hardware YUV overlay via the mga_vid device - - xmga: Matrox G200/G400 overlay (mga_vid) in X11 window - (Xv emulation on X 3.3.x !) - - syncfb: Matrox G400 YUV support on framebuffer (obsoleted, use mga/xmga) - - 3dfx: Voodoo2/3 hardware YUV (/dev/3dfx) support (not yet tested, maybe - broken) - - Special: - - png: PNG files output (use -z switch to set compression) - - pgm: PGM files output (for testing purposes or ffmpeg encoding) - - md5: MD5sum output (for MPEG conformance tests) - - odivx:OpenDivX AVI File writer (use -br to set encoding bitrate) - - null: Null output (for speed tests/benchmarking) - - NOTE: check the following subsections for details and requirements! - - - <A NAME=2.2.1.1>2.2.1.1. Xv - - Under XFree86 4.0.2 or newer, you can use your card's hardware YUV routines - using the XVideo extension. This is what the option '-vo xv' uses. - In order to make this work, be sure to check the following: - - You have to use XFree86 4.0.2 or newer (former versions don't have XVideo) - - Your card actually supports harware acceleration (modern cards do) - - X loads the XVideo extension, it's something like this: - - - (II) Loading extension XVideo - - - in /var/log/XFree86.0.log - - - NOTE : this loads only the XFree86's extension. In a good install, this is - always loaded, and doesn't mean that the _card's_ XVideo support is - loaded! - - - Your card has Xv support under Linux. To check, try 'xvinfo', it is the - part of the XFree86 distribution. It should display a long text, similar - to this: - - - X-Video Extension version 2.2 - screen #0 - Adaptor #0: "Savage Streams Engine" - number of ports: 1 - port base: 43 - operations supported: PutImage - supported visuals: - depth 16, visualID 0x22 - depth 16, visualID 0x23 - number of attributes: 5 - (...) - Number of image formats: 7 - id: 0x32595559 (YUY2) - guid: 59555932-0000-0010-8000-00aa00389b71 - bits per pixel: 16 - number of planes: 1 - type: YUV (packed) - id: 0x32315659 (YV12) - guid: 59563132-0000-0010-8000-00aa00389b71 - bits per pixel: 12 - number of planes: 3 - type: YUV (planar) - (...etc...) - - - It must support YUY2 packed, and YV12 planar pixel formats to be - usable with <B>MPlayer</B>. - - - And finally, check if <B>MPlayer</B> was compiled with 'xv' support. - ./configure prints this. - - - <A NAME=2.2.1.1.1>2.2.1.1.1. 3dfx cards - - Older 3dfx drivers were known to have problems with XVideo acceleration, - it didn't support either YUY2 or YV12, and so. Verify that you have - XFree86 version 4.1.0 or greater, it works ok. Alternatively, you can use - <A HREF="http://dri.sourceforge.net">DRI</A> cvs. - If you experience strange effects using -vo xv, try SDL (it has XVideo too) - and see if it helps. Check the <A HREF="#2.2.1.3">SDL section</A> for details. - - - <A NAME=2.2.1.1.2>2.2.1.1.2. S3 cards - - S3 Savage3D's should work fine, but for Savage4, use XFree86 version 4.0.3 - or greater. As for S3 Virge.. sell it. - - - <A NAME=2.2.1.1.3>2.2.1.1.3. nVidia cards - - nVidia isn't a very good choice under Linux.. You'll have to use the - binary nVidia driver, available at nVidia's website. The standard X - driver doesn't support XVideo for these cards, due to nVidia's closed - sources/specifications. - - - Riva128 cards don't have XVideo support even with the nvidia driver :( - Complain to NVidia. - - - <A NAME=2.2.1.1.4>2.2.1.1.4. ATI cards - - The GATOS driver has VSYNC enabled by default. It means that decoding speed - (!) is synced to the monitor's refresh rate. If playing seems to be slow, try - disabling VSYNC somehow, or set refresh rate to n*(fps of the movie) Hz. - - - <A NAME=2.2.1.2>2.2.1.2. DGA - - <A NAME=2.2.1.2.1>2.2.1.2.1. Summary - - This document tries to explain in some words what DGA is in general and - what the DGA video output driver for mplayer can do (and what it can't). - - - <A NAME=2.2.1.2.2>2.2.1.2.2. What is DGA - - DGA is short for Direct Graphics Access and is a means for a program to - bypass the X-Server and directly modifying the framebuffer memory. - Technically spoken this happens by mapping the framebuffer memory into - the memory range of your process. This is allowed by the kernel only - if you have superuser privileges. You can get these either by logging in - as root or by setting the suid bit on the mplayer excecutable (NOT - recommended!). - - There are two versions of DGA: DGA1 is used by XFree 3.x.x and DGA2 was - introduced with XFree 4.0.1. - - DGA1 provides only direct framebuffer access as described above. For - switching the resolution of the video signal you have to rely on the - XVidMode extension. - - DGA2 incorporates the features of XVidMode extension and also allows - switching the depth of the display. So you may, although basically - running a 32 bit depth XServer, switch to a depth of 15 bits and vice - versa. - - However DGA has some drawbacks. It seems it is somewhat dependent on the - graphics chip you use and on the implementation of the XServer's video - driver that controls this chip. So it does not work on every system ... - - -<A NAME=2.2.1.2.3>2.2.1.2.3. Installing DGA support for <B>MPlayer</B> - - First make sure X loads the DGA extension, see in /var/log/XFree86.0.log : - - - (II) Loading extension XFree86-DGA - - - See, XFree86 4.0.x or greater is VERY RECOMMENDED! - <B>MPlayer</B>'s DGA driver is autodetected on ./configure, or you can force it - with --enable-dga. - - If the driver couldn't switch to a smaller resolution, experiment with - switches -vm (only with X 3.3.x), -fs, -bpp, -zoom to find a video mode that - the movie fits in. There is no converter right now.. :( - - Become ROOT. DGA needs root access to be able to write directly video memory. - If you want to run it as user, then install <B>MPlayer</B> SUID root: - - - chown root /usr/local/bin/mplayer - chmod 750 /usr/local/bin/mplayer - chmod +s /usr/local/bin/mplayer - - - Now it works as a simple user, too. - - - !!!! BUT STAY TUNED !!!! - This is a BIG security risk! Never do this on a server or on a computer - can be accessed by more people than only you because they can gain root - privilegies through suid root mplayer. - !!!! SO YOU HAVE BEEN WARNED ... !!!! - - - Now use '-vo dga' option, and there you go! (hope so:) - You should also try if the '-vo sdl:dga' option works for you! It's much - faster!!! - - - <A NAME=2.2.1.2.4>2.2.1.2.4. Resolution switching - - The DGA driver allows for switching the resolution of the output signal. - This avoids the need for doing (slow) software scaling and at the same - time provides a fullscreen image. Ideally it would switch to the exact - resolution (except for honouring aspect ratio) of the video data, but the - XServer only allows switching to resolutions predefined in - /etc/X11/XF86Config (/etc/X11/XF86Config-4 for XFree 4.0.X respectively). - Those are defined by so-called modelines and depend on the capabilites - of your video hardware. The XServer scans this config file on startup and - disables the modelines not suitable for your hardware. You can find - out which modes survive with the X11 log file. It can be found at: - /var/log/XFree86.0.log - See appendix A for some sample modeline definitions. - - - <A NAME=2.2.1.2.5>2.2.1.2.5. DGA & <B>MPlayer</B> - - DGA is used in two places with <B>MPlayer</B>: The SDL driver can be made to make - use of it (-vo sdl:dga) and within the DGA driver (-vo dga). - The above said is true for both; in the following sections I'll explain - how the DGA driver for <B>MPlayer</B> works. - - - <A NAME=2.2.1.2.6>2.2.1.2.6. Features of the DGA driver - - The DGA driver is invoked by specifying -vo dga at the command line. - The default behaviour is to switch to a resolution matching the original - resolution of the video as close as possible. It deliberately ignores the - -vm and -fs switches (enabling of video mode switching and fullscreen) - - it always tries to cover as much area of your screen as possible by switching - the video mode, thus refraining to use a single additional cycle of your CPU - to scale the image. - If you don't like the mode it chooses you may force it to choose the mode - matching closest the resolution you specify by -x and -y. - By providing the -v option, the DGA driver will print, among a lot of other - things, a list of all resolutions supported by your current XF86-Config - file. - Having DGA2 you may also force it to use a certain depth by using the -bpp - option. Valid depths are 15, 16, 24 and 32. It depends on your hardware - whether these depths are natively supported or if a (possibly slow) - conversion has to be done. - - If you should be lucky enough to have enough offscreen memory left to - put a whole image there, the DGA driver will use doublebuffering, which - results in much smoother movie replaying. It will tell you whether double- - buffering is enabled or not. - - Doublebuffering means that the next frame of your video is being drawn in - some offscreen memory while the current frame is being displayed. When the - next frame is ready, the graphics chip is just told the location in memory - of the new frame and simply fetches the data to be displayed from there. - In the meantime the other buffer in memory will be filled again with new - video data. - - Doublebuffering may be switched on by using the option -double and may be - disabled with -nodouble. Current default option is to disable - doublebuffering. When using the DGA driver, onscreen display (OSD) only - works with doublebuffering enabled. However, enabling doublebuffering may - result in a big speed penalty (on my K6-II+ 525 it used an additional 20% of - CPU time!) depending on the implementation of DGA for your hardware. - - - <A NAME=2.2.1.2.7>2.2.1.2.7. Speed issues - - Generally spoken, DGA framebuffer access should be at least as fast as using - the X11 driver with the additional benefit of getting a fullscreen image. - The percentage speed values printed by mplayer have to be interpreted with - some care, as for example, with the X11 driver they do not include the time - used by the X-Server needed for the actual drawing. Hook a terminal to a - serial line of your box and start top to see what is really going on in your - box ... - - Generally spoken, the speedup done by using DGA against 'normal' use of X11 - highly depends on your graphics card and how well the X-Server module for it - is optimized. - - If you have a slow system, better use 15 or 16bit depth since they require - only half the memory bandwidth of a 32 bit display. - - Using a depth of 24bit is even a good idea if your card natively just supports - 32 bit depth since it transfers 25% less data compared to the 32/32 mode. - - I've seen some avi files already be replayed on a Pentium MMX 266. AMD K6-2 - CPUs might work at 400 MHZ and above. - - - <A NAME=2.2.1.2.8>2.2.1.2.8. Known bugs - - Well, according to some developpers of XFree, DGA is quite a beast. They - tell you better not to use it. Its implementation is not always flawless - with every chipset driver for XFree out there. - - o with XFree 4.0.3 and nv.o there is a bug resulting in strange colors - o ATI driver requires to switch mode back more than once after finishing - using of DGA - o some drivers simply fail to switch back to normal resolution (use - Ctrl-Alt-Keypad +, - to switch back manually) - o some drivers simply display strange colors - o some drivers lie about the amount of memory they map into the process's - address space, thus vo_dga won't use doublebuffering (SIS?) - o some drivers seem to fail to report even a single valid mode. In this - case the DGA driver will crash telling you about a nonsense mode of - 100000x100000 or the like ... - o OSD only works with doublebuffering enabled - - - <A NAME=2.2.1.2.9>2.2.1.2.9. Future work - - o use of the new X11 render interface for OSD - o where is my TODO list ???? :-((( - - - <A NAME=2.2.1.2.A>2.2.1.2.A. Some modelines - - Section "Modes" - Identifier "Modes[0]" - Modeline "800x600" 40 800 840 968 1056 600 601 605 628 - Modeline "712x600" 35.0 712 740 850 900 400 410 412 425 - Modeline "640x480" 25.175 640 664 760 800 480 491 493 525 - Modeline "400x300" 20 400 416 480 528 300 301 303 314 Doublescan - Modeline "352x288" 25.10 352 368 416 432 288 296 290 310 - Modeline "352x240" 15.750 352 368 416 432 240 244 246 262 Doublescan - Modeline "320x240" 12.588 320 336 384 400 240 245 246 262 Doublescan - EndSection - - - These entries work fine with my Riva128 chip, using nv.o XServer driver - module. - - - <A NAME=2.2.1.2.B>2.2.1.2.B. Bug Reports - - If you experience troubles with the DGA driver please feel free to file - a bug report to me (e-mail address below). Please start mplayer with the - -v option and include all lines in the bug report that start with vo_dga: - - Please do also include the version of X11 you are using, the graphics card - and your CPU type. The X11 driver module (defined in XF86-Config) might - also help. Thanks! - - - Acki (acki@acki-netz.de, www.acki-netz.de) - - - <A NAME=2.2.1.3>2.2.1.3. SDL - - Here are some notes about SDL out in <B>MPlayer</B>. - - There are several commandline switches for SDL: - - -vo sdl:name specifies sdl video driver to use (ie. aalib, - dga, x11) - -ao sdl:name specifies sdl audio driver to use (ie. dsp, - esd, arts) - -noxv disables Xvideo hardware acceleration - -forcexv tries to force Xvideo acceleration - - SDL Keys: - - F toggles fullscreen/windowed mode - C cycles available fullscreen modes - W/S mappings for * and / (mixer control) - - KNOWN BUGS: - - Keys pressed under sdl:aalib console driver repeat forever. (use -vo aa !) - It's bug in SDL, I can't change it (tested with SDL 1.2.1). - - - <A NAME=2.2.1.4>2.2.1.4. SVGAlib - - If you don't have X, you can use the SVGAlib target! Be sure not to use the - -fs switch, since it toggles the usage of the software scaler, and it's - SLOOOW now, unless you have a real fast CPU (and/or MTRR?). :( - - Of course you'll have to install svgalib and its development package in - order for <B>MPlayer</B> build its SVGAlib driver (autodetected, but can be - forced), and don't forget to edit /etc/vga/libvga.config to suit your - card & monitor. - - - <A NAME=2.2.1.5>2.2.1.5. Framebuffer output (FBdev) - - Whether to build the FBdev target is autodetected during ./configure . - Read the framebuffer documentation in the kernel sources - (Documentation/fb/*) for info on how to enable it, etc.. ! - - If your card doesn't support VBE 2.0 standard (older ISA/PCI - cards, such as S3 Trio64), only VBE 1.2 (or older?) : - Well, VESAfb is still available, but you'll have to load SciTech Display - Doctor (formerly UniVBE) before booting Linux. Use a DOS boot disk or - whatever. And don't forget to register your UniVBE ;)) - - The FBdev output takes some additional parameters above the others: - - -fb specify the framebuffer device to use (/dev/fd0) - -fbmode mode name to use (according to /etc/fb.modes) - -fbmodeconfig config file of modes (default /etc/fb.modes) - monitor_hfreq - monitor_vfreq IMPORTANT values, see example.conf - monitor_dotclock - - If you want to change to a specific mode, then use - - mplayer -vm -fbmode (NameOfMode) filename - - -vm alone will choose the most suitable mode from /etc/fb.modes . Can be - used together with -x and -y options too. The -flip option is supported only - if the movie's pixel format matches the video mode's pixel format. - Pay attention to the bpp value, fbdev driver tries to use the current, - or if you specify the -bpp option, then that. - -zoom option isn't supported (software scaling is slow). -fs option - isn't supported. You can't use 8bpp (or less) modes. - - NOTE: FBdev video mode changing _does not work_ with the VESA framebuffer, - and don't ask for it, since it's not an <B>MPlayer</B> limitation. - - - <A NAME=2.2.1.6>2.2.1.6. Matrox framebuffer (mga_vid) - - This section is about the Matrox G200/G400/G450 BES (Back-End Scaler) - support, the mga_vid kernel driver. It's active developed by me (A'rpi), and - it has hardware VSYNC support with triple buffering. It works on both - framebuffer console and under X. - - To use it, you first have to compile mga_vid.o : - - - cd drivers - make - - - Then create /dev/mga_vid device : - - - mknod /dev/mga_vid c 178 0 - - - and load the driver with - - - insmod mga_vid.o - - - You should verify the memory size detection using the 'dmesg' command. If - it's bad, use the mga_ram_size option (rmmod mga_vid first), specify card's - memory size in MB: - - - insmod mga_vid.o mga_ram_size=16 - - - To make it load/unload automatically when needed, insert the following line - at the end of /etc/modules.conf : - - - alias char-major-178 mga_vid - - - Then run - - - depmod -a - - - Now you have to (re)compile <B>MPlayer</B>, ./configure will detect /dev/mga_vid - and build the 'mga' driver. Using it from <B>MPlayer</B> goes by '-vo mga' if - you have matroxfb console, or '-vo xmga' under XFree86 3.x.x or 4.x.x . - - Note: '-vo xmga' works under XFree86 4.x.x, but it conflicts with the Xv - driver, so avoid using both. If you messed up Xv with mga, try running - <B>MPlayer</B> with '-vo mga' . It should fix Xv. - - - <A NAME=2.2.1.7>2.2.1.7. SiS 6326 framebuffer (sis_vid) - - SiS 6326 YUV Framebuffer driver -> sis_vid kernel driver - - Its interface should be compatible with the mga_vid, but the driver was not - updated after the mga_vid changes, so it's outdated now. Volunteers - needed to test it and bring the code up-to-date. - - - <A NAME=2.2.1.8>2.2.1.8. 3dfx YUV support - - 3dfx has native YUV+scaler support, using /dev/3dfx (tdfx.o driver?) - The /dev/3dfx kernel driver exists only for 2.2.x kernels, for use with - Glide 2.x Linux ports. It's not tested with <B>MPlayer</B>, and so no more - supported. Volunteers needed to test it and bring the code up-to-date. - - - <A NAME=2.2.1.9>2.2.1.9. OpenGL output - - <B>MPlayer</B> support displaying movies using OpenGL. Unfortunately, not all - drivers support this ability. For example the Utah-GLX drivers - (for XFree86 3.3.6) have it, with all cards. - See <A HREF="http://utah-glx.sourceforge.net">http://utah-glx.sourceforge.net</A> for details about how to install it. - - XFree86(DRI) >= 4.0.3 supports it only with Matrox, and Radeon cards. - See <A HREF="http://dri.sourceforge.net">http://dri.sourceforge.net</A> for download, and installation instructions. - - - <A NAME=2.2.1.10>2.2.1.10. AAlib - text mode displaying - - <B>AAlib</B> is a library for displaying graphics in text mode, using powerful - ASCII renderer. There are LOTS of programs already supporting it, like Doom, - Quake, etc. MPlayer contains a very usable driver for it. - If ./configure detects aalib installed, the aalib libvo driver will be built. - - You can use some keys in the AA Window to change rendering options: - 1 : decrease contrast - 2 : increase contrast - 3 : decrease brightness - 4 : increase brightness - 5 : switch fast rendering on/off - 6 : set dithering mode (none, error distribution, floyd steinberg) - 7 : invert image - a : toggles between aa and mplayer control) - - - - The following command line options can be used: - -aaosdcolor=V : change osd color - -aasubcolor=V : change subtitle color - where V can be: (0/normal, 1/dark, 2/bold, 3/boldfont, 4/reverse, 5/special) - - AAlib itselves provides a large sum of options. - Here are some important: - -aadriver : set recommended aa driver (X11, curses, linux) - -aaextended : use all 256 characters - -aaeight : use eight bit ascii - -aahelp : prints out all aalib options - - - - - - NOTE: the rendering is very CPU intensive, especially when using AA-on-X - (using aalib on X), and it's least CPU intensive on standard, - non-framebuffer console. Use SVGATextMode to set up a big textmode, - then enjoy! (secondary head Hercules cards rock :)) (anyone can enhance - fbdev to do conversion/dithering to hgafb? Would be neat :) - - Use the -framedrop option if your comp isn't fast enough to render all frames! - - Playing on terminal you'll get better speed and quality using the linux driver, not - curses (-aadriver linux). But therefore you need write access on /dev/vcsa<terminal>! - That isn't autodetected by aalib, bu vo_aa tries to find the best mode. - See http://aa-project.sourceforge.net/tune/ for further tuning issues. - - - <A NAME=2.2.2>2.2.2. Audio output devices - - - OSS (ioctl) driver - - SDL driver (supports up/downsampling, esd, arts etc) - - native ALSA 0.5 driver - - native ALSA 0.9 driver (buggy, use OSS emulation!) - - ESD (through SDL) - - ARTS (through SDL) - - SUN audio driver (/dev/audio) for BSD and Solaris8 users - - - <A NAME=2.2.2.1>2.2.2.1. Soundcard experiences, recommendations - - Aureal Vortex 2: - OSS/Free: no driver - OSS : OK - ALSA : no driver - Max kHz : 48 - Driver : <A HREF="http://aureal.sourceforge.net">aureal.sourceforge.net</A> - Driver2 : from <A HREF="http://makacs.poliod.hu/~pontscho/aureal/au88xx-1.1.3.tar.bz2">here</A> - (buffer size increased to 64k) - - GUS PnP: - OSS/Free: no driver - OSS : OK - ALSA : OK - Max kHz : 48 - - SB Live!: - OSS : OK - ALSA : (?) - Max kHz : 48 - - SB AWE 64 OSS : max 44kHz - ALSA : 48kHz sounds shit - Max kHz : 48 - - Gravis UltraSound ACE: - OSS : max 44Khz. Also has problems with the - new sound code. - ALSA : OK - Max kHz : 48 - - Gravis UltraSound MAX: - OSS : OK - ALSA : OK (?) - Max kHz : 48 - - ESS 688: - OSS : OK - ALSA : OK (?) - Max kHz : 48 - - C-Media cards (which ones?) - OSS : not OK (hissing) (?) - ALSA : OK (?) - Max kHz : ? - - PC Speaker or DAC: - OSS : OK (use the SDL driver : -ao sdl) - ALSA : no driver - Max kHz : the driver emulates 44.1 maybe more - Driver : <A HREF="ftp://ftp.infradead.org/pub/pcsp">ftp://ftp.infradead.org/pub/pcsp</A> - - - use at least 2.4 if possible, 2.2 isn't tested - - if sound clicks when playing from CD-ROM, turn on IRQ unmasking ! - for example "hdparm -u1 /dev/cdrom" (see "man hdparm" !!!) - This is recommended anyways... (for XMMS, etc...) - Read section <A HREF="#5.1">5.1</A> . - - don't use your soundcard by other application ( for ex. XMMS ) ! - if you use ESD, start MPlayer with the esddsp utility ! - - Please tell us how MPlayer and your soundcard(s) worked together! - - - <A NAME=3>3. Usage - - file: mplayer [options] [path/]filename - VCD: mplayer [options] -vcd trackno /dev/cdrom - DVD: mplayer [options] -dvdauth /dev/dvd filename.VOB - net: mplayer [options] http://site.com/file.[mpg|avi] - - mplayer -vo x11 /mnt/Films/Contact/contact2.mpg - mplayer -vcd 2 /dev/cdrom - mplayer -afm 3 /mnt/DVDtrailers/alien4.vob - mplayer -dvd /dev/dvd /mnt/dvd/matrix.vob - mplayer -abs 65536 -delay -0.4 -nobps ~/movies/test.avi - - - <A NAME=3.1>3.1. Control from keyboard - - - l/r arrows seek backward/forward 10 seconds - up or down seek backward/forward 1 minute - p or SPACE pause movie (press any key to continue) - q or ^C stop playing and quit program - o toggle OSD : none / seek / seek+timer - / and * decrease/increase volume - m toggle using master/pcm channel for volume setting - f toggle fullscreen (only with -vo sdl) - - - <A NAME=3.2>3.2. Control from LIRC - - Linux Infrared Remote Control - use an easy to build home-brewn IR-receiver, - an (almost) arbitrary remote control and control your linux box with it! - More about it at www.lirc.org. - - If you have installed the lirc-package, you can compile <B>MPlayer</B> with LIRC - support using ./configure --enable-lirc - - If everything went fine, <B>MPlayer</B> will print a message like - LIRC init was successful. - on startup. If an error occurs it will tell you. If it doens't tell you - anything about LIRC there's no support compiled in. That's it :-) - - The application name for <B>MPlayer</B> is - oh wonder - mplayer_lirc. - It understands the following commands: - - PAUSE - pause playing. Any other keystroke will continue replay. - QUIT - exit mplayer - RWND - 10 secs back - FRWND - 60 secs back - FWD - skip 10 secs - FFWD - skip 60 secs - INCVOL - increase volume one percent - DECVOL - decrease volmue one percent - MASTER - use master mixer channel - PCM - use pcm mixer channel - - Don't forget to enable the repeat flag for RWND/FWD in .lircrc. Here's an - excerpt from my .lircrc: - - begin - remote = CU-SX070 - prog = mplayer_lirc - button = Tape_Play - repeat = 1 - config = FFWD - end - - begin - remote = CU-SX070 - prog = mplayer_lirc - button = Tape_Stop - config = QUIT - end - - If you don't like the standard location for the lirc-config file (~/.lircrc) - use the -lircconf [filename] switch to specify another file. - - - <A NAME=3.3>3.3. Streaming from network or pipes - - <B>MPlayer</B> can play media from network, by using the HTTP protocol, and even - beta ASF streaming (FROM network) is available. - Configuring it is simple, just recompile <B>MPlayer</B> with - - - ./configure --enable-streaming - - - <B>MPlayer</B> can read from stdin (NOT named pipes). This can be for example - used to play from FTP : - - - wget ftp://micorsops.com/something.avi -O - | mplayer - - - - <A NAME=4>4. TV-out support - - - <A NAME=4.1>4.1. Matrox cards - - > What I'd love to see in mplayer is the the same feature that I see in my - > windows box. When I start a movie in windows (in a window or in full screen) - > the movie is also redirected to the tv-out and I can also see it full screen - > on my tv. I love this feature and was wondering how hard it would be to add - > such a feature to mplayer. - - It's a driver limitation. BES (Back-End Scaler, it's the overlay generator - and YUV scaling engine of G200/G400/G450 cards) works only with CRTC1. - Normally, CRTC1 (textmode, every bpp gfx and BES) is routed to HEAD1, - and CRTC2 (only 16/32bpp gfx) is routed to HEAD2 (TV-out). - - Under linux, you have two choices to get TV-out working: - - 1. Using X 4.0.x + the HAL driver from matrox, so you'll get dual-head - support, and you'll be able to redirect second output to the TV. - Unfortunately it has Macrovision encryption enabled, so it will - only work on directly-connected TV, no through VCR. - Other problem is that Xv doesn't work on the second head. - (I don't know how Windows solve it, maybe it swaps the CRTCs between - the heads, or just uses YUV framebuffer of second DAC with some trick) - - 2. Using matroxfb with dual-head support enabled (2.4.x kernels). - You'll be able to get a framebuffer console (using CRTC2, so it's - slow), and TV-out (using CRTC1, with BES support). - You have to forget X while using this kind of TV-out! :( - - - Compile all the matrox-related things to modules in the kernel. - (you MUST compile them to modules, at least I couldn't get them - working built-in yet) - [reboot to new kernel & install modules, but don't load them yet!] - - cd TVout - ./compile.sh - - - Run the 'modules' script from the TV-out directory of mplayer. - It will switch your console to framebuffer. - Change to tty1 (ALT+F1)! - Now run the script 'independent', it will set up your tty's: - tty 1,2: fb console, CRTC2, head 1 (monitor) - tty 3,4,5...: framebuffer+BES, CRTC1, head 2 (TV-out) - You should run the scripts TV-* and Mon-* to set up resolutions: - change to tty1 (ALT+F1), and run Mon-* (one of them) - change to tty3 (ALT+F3) and then back to tty1 (ALT+F1) - (this change will select tty3 on /dev/fb1 - tricky) - run TV-* (one of them) - (now you'll get a console on your PAL TV - don't know about NTSC) - - Now if you start mplayer (on tty1), the picture will show up on - the tty3, so you'll see it on your TV or second monitor. - - Yes, it is a bit 'hack' now. But I'm waiting for the marvel - project to be finished, it will provide real TV-out drivers, I hope. - - My current problem is that BES is working only with CRTC1. So picture - will always shown up on head routed to CRTC1 (normaly the monitor), - so i have to swap CRTC's, but this way your console will framebuffer - (CRTC2 can't do text-mode) and a bit slow (no acceleration). :( - - - > anyway i also just get monochrome output on the tv ... - Maybe you have NTSC TV? Or just didn't run one of TV-* scripts. - - - <A NAME=5>5. Tuning - - - <A NAME=5.1>5.1. CD-ROM drives - - From Linux documentation: - - Some CDROM drives are capable of changing their head-speed. There are several - reasons for changing the speed of a CDROM drive. Badly pressed CDROMs may - benefit from less-than-maximum head rate. Modern CDROM drives can obtain very - high head rates (up to 24-times is common). It has been reported that these - drives can make reading errors at these high speeds, reducing the speed can - prevent data loss in these circumstances. Finally, some of these drives can - make an annoyingly loud noise, which a lower speed may reduce. - - The recommended way to do it is with a program called 'setcd' . It's kinda - old, but won't be too hard to find on the Net. (UPDATE : new hdparm - has an option for this !) - Use it with : - - - setcd -x [speed] [cdrom device] - - - Also you can try : - - - echo current_speed:4 >/proc/ide/[cdrom device]/settings - - - but you'll need root privileges. I use following command too : - - - echo file_readahead:2000000 >/proc/ide/[cdrom device]/settings - - - for 2MB prefetched reading from the file (it's useful for scratched CDROMs). - It's recommended that you tuneup your CDROM drive also with hdparm : - - - hdparm -d1 -a8 -u1 (cdrom device) - - - to enable using DMA access, readahead, and IRQ unmasking. - (if you don't understand these, *read the hdparm manpage*) - - Please refer to "/proc/ide/[cdrom device]/settings" for fine-tuning your - CDROM. - - - <A NAME=5.2>5.2. DVD drives - - IMPORTANT NOTE: please _DO_NOT_ require further features for DVD playback. This - is extremly experimental hack. Maybe it won't work for you. If you're - capable of helping us do it now! First we would like to fix existing problems. - Then we can start implementing advanced DVD playback functions of course. - - This means current DVD functions are mainly for developers and not for users! - - First, you must compile and install libcss on your system. - Second, you have to recompile <B>MPlayer</B> with libcss support. There is - autodetection of libcss, but if it fails, see below : - - Call ./configure script of <B>MPlayer</B> with these options: - - ./configure --enable-css --with-csslibdir=/usr/local/lib --with-cssincdir=/usr/local/include - - (of course you can append your favourite options as well) - - --with-csslibdir=/usr/local/lib - Directory contains libcss.so shared library. This directory should - be in your /etc/ld.so.conf as well. - - --with-cssincdir=/usr/local/include - Directory contains header file 'css.h' of libcss. - - mplayer -dvdauth /dev/dvd /mnt/cdrom/video_ts/vts_01_1.vob - - where, - - '-dvdauth /dev/dvd' tells <B>MPlayer</B> the device name of your DVD drive. - it's used in disc authentication process - - the filename is simply a VOB file path on the disc - - Note that according to my experiences, disc authentication requires root - privileges so you must run <B>MPlayer</B> as root! (see section 'Problems'). - - NOTE about the sound: - It seems that <B>MPlayer</B> sometimes fails to find the first audio stream. - You can specify it with the '-aid 128' option, for example. - Please experience with 128,129 and similar values. See section - 'Problems'. - - On my AMD K6-2 with using hw scaling and colorspace conversion - capability of my G400 it's possible to watch DVD with about 70% - CPU usage with '-nosound'. Unfortunately with sound my machine is - not enough :( Maybe it can be improved somewhat ... - Guess, it's not so bad ... According to reports from my friends - xine uses 80-90% CPU to play DVD on much more powerful machines - like 1GHz Athlon systems (as far as I know, it's said that about - 300MHz celeron is the minimum to watch DVDs ... using windows - DVD viewers). - - Hint: I commented out downmix functions from libac3 (of course in this way I - can't get sound) and audio decoding CPU usage became 11% instead of 24 on - my machine. This clearly indicates that we should optimize downmix functions - (KNI code is no use for my k6-2). - - HOT NEWZ: - We have got 3Dnow optimized libac3. Wow ;-) - - - Problems (TODO) - - * disc authentication (the FIBMAP ioctl) requires root privilegies. - this is strange since OMS can do it as user too. - * sound. I'm using my only DVD disc (The Matrix) to test <B>MPlayer</B>. - some VOB file have English sound, some have Spanish and some have - no sound at all. - IT SEEMS that if I give '-aid 128' everything works with English sound ... - * strange effects but only with SOME vob files (it looks like some interlacing - effect, eg: every 2nd line on the screen is from the last frame). - - - Feature TODO - - * chapter scanner - * audio stream scanner and allow to select one on runtime as well - (in stage#1 it would be enough to select one on the startup, see - 'Problems' above) - * DVD menu - I found (at least on disc 'The Matrix') the menu VOB but I don't - know how can it be used. - (after some eyeballing on the source of OMS, it seems we would have to - parse *.ifo files) - * subtitle support - * OSD/GUI (?) support for select chapter, subtitle and audio stream - * getting some documentation on DVD format, eg: which is the 'root' VOB - file on the disc in video_ts directory, which is the menu and so on. - * improve performance (see 'Performance' above) - - - No sound problem (from Matrix DVD, the menu VOB) - - End of packet while searching for PCM header - - DEMUXER: Too many (2048 in 4131540 bytes) video packets in the buffer! - (maybe you play a non-interleaved stream/file or video codec failed) - MPEG: No Audio stream found... ->nosound - - However this does not occur if you specify '-aid 128'. - - - <A NAME=5.3>5.3. MTRR - - It is VERY recommended to set MTRR registers up properly, because they can - give a big performance boost. First you have to find the base address. - You have 3 ways to find it: - - - from X11 startup messages, for example: - - (--) SVGA: PCI: Matrox MGA G400 AGP rev 4, Memory @ 0xd8000000, 0xd4000000 - (--) SVGA: Linear framebuffer at 0xD8000000 - - - from /proc/pci (use lspci -v command): - - 01:00.0 VGA compatible controller: Matrox Graphics, Inc.: Unknown device 0525 - Memory at d8000000 (32-bit, prefetchable) - - - from mga_vid kernel driver messages (use dmesg): - - mga_mem_base = d8000000 - - Then let's find the memory size. This is very easy, just convert video ram - size to hexadecimal, or use this table: - - - 1 MB 0x100000 - 2 MB 0x200000 - 4 MB 0x400000 - 8 MB 0x800000 - 16 MB 0x1000000 - 32 MB 0x2000000 - - - You know base address and memory size, let's setup mtrr registers! - For example, for the Matrox card above (base=0xd8000000) with 32MB - ram (size=0x2000000) just execute: - - - echo "base=0xd8000000 size=0x2000000 type=write-combining" >| /proc/mtrr - - - Not all CPUs support MTRRs. For example older K6-2's [around 266Mhz, - stepping 0] doesn't support MTRR, but stepping 12's do ('cat /proc/cpuinfo' - to check it). - - - <A NAME=6>6. FAQ section (TODO) - - - <A NAME=6.1>6.1. Compilation - - <B>Q: What's the problem with gcc 2.96 ? - </B>A: gcc 2.96 is RedHat's UNOFFICIAL (it can be found only on RedHat sites, or - RedHat distributions) and BUGGY gcc release. gcc 2.96 is TOTALLY - unsupported by <B>MPlayer</B>, because it simply SKIPS MMX codes, it just does - not compile it. Important: this is NOT an <B>MPlayer</B>-specific problem, - numerous other projects (DRI, avifile, etc..) have problems with this shit - too. - ** DO NOT USE gcc 2.96 !!! ** - - <B>Q: Great, I have gcc 3.0.1 from RedHat/Mandrake, then I'm fine--! - </B>A: No :) Their gcc 3.0.1 was compiled with gcc 2.96, so they are - buggy shit too. - - <B>Q: Now then. What should I use? - </B>A: Any of gcc 2.95 series. - - <B>Q: SDL output doesn't work or compile. Problem is .... - </B>A: It is tested with newest SDL (probably runs on 1.1.7+). - It does NOT work with 1.1.6, 1.1.5 1.1.4 1.1.3 1.0.4 etc, don't ask. - - <B>Q: I am still having trouble compiling with SDL support. gcc says something - about "undefined reference to `SDL_EnableKeyRepeat'" What's now? - </B>A: Where did you install the SDL library? If you installed in /usr/local - (the default) then edit the top level config.mak and add - "-L/usr/local/lib " after "X_LIBS=" Now type make. You're done! - - <B>Q: It doesn't compile, and it misses uint64_t inttypes.h and similar things... - </B>A: copy DOCS/inttypes.h to <B>MPlayer</B> directory (cp DOCS/inttypes.h .) - try again... if fail, contact us - - <B>Q: I have Pentium III but ./configure doesn't detect SSE - </B>A: Only kernel versions 2.4.x supports SSE (or try latest 2.2.19 or newer, but - be prepared for problems) - - <B>Q: I have G200/G400, how to compile/use mga_vid driver? - </B>A: Read all this documentation. - - <B>Q: Are there rpm/deb/... packages of <B>MPlayer</B>? - </B>A: You can make a .deb package for yourself, check section <A HREF="#7.1">7.1</A> . - It's _STRONGLY_ discouraged to use precompiled packages - of <B>MPlayer</B>, since it (currently) _highly_ depends on compile-time - options and optimizations! - Precompiled packages are COMPLETELY unsupported by the <B>MPlayer</B> team! - - <B>Q: During 'make', <B>MPlayer</B> complains about X11 libraries. I don't understand, - I DO have X installed!? - </B>A: ...but you don't have the X development package installed. Or not - correctly. It's called XFree86-devel* under RedHat, and xlib6g-dev* under - Debian. Also check if the /usr/X11 symlink exists (this can be a problem on - Mandrake systems). It can be created with the - $ ln -sf /usr/X11R6 /usr/X11 - command. Also check the /usr/include/X11 link : - $ ln -sf /usr/X11R6/include/X11 /usr/include/X11 - Your distribution may differ from the Linux Filesystem Standard. - - <B>Q: What about DGA driver? I can't find it!!! - </B>A: ./configure autodetects your DGA driver. If -vo help doesn't show - DGA, then there's a problem with your X installation. - Try ./configure --enable-dga (and read VIDEOCARDS) - Alternatively, try SDL's DGA driver with '-vo sdl:dga' options. - - <B>Q: I can't compile SVGAlib.. I'm using 2.3/2.4 kernel. - </B>A: You have to edit SVGAlib's Makefile.cfg and comment "BACKGROUND = y" out. - - <B>Q: I compiled <B>MPlayer</B> with libcss/libdivxdecore support, but when - I try to start it, it says : - > error while loading shared libraries: libcss.so.0: cannot load - > shared object file: No such file or directory - I checked up on the file and it IS there in /usr/local/lib. - </B>A: What are you doing on Linux? Can't you install a library? Why do - we get these questions? It's not <B>MPlayer</B> specific at all! Add - /usr/local/lib to <B>/etc/ld.so.conf</B> and run <B>ldconfig</B> . - Or install it to /usr/lib , because if you can't solve the /usr/local - problem, you are careless enough to do such things. - - <B>Q: I have gcc 3.0 . I have to compile mplayer with --disable-dshow, - else it prints - - /usr/local/objdir/gcc-3.0/lib//libstdc++.so.3: undefined symbol: __dso_handle - - </B>A: All you have to do is create a symbolic link from libstdc++.so to - libstdc++.so.3 - - - <A NAME=6.2>6.2. General questions - - <B>Q: What about DVD playback? - </B>A: Read files 'DVD' and 'DVD-FAQ'. - - <B>Q: -xy option doesn't work with x11 driver (-vo x11) - </B>A: x11 driver doesn't support scaling, but XF86VidMode support is now - used: you must specify the -vm and the -fs switch, and you're done. - Make sure you have the right Modelines in your XF86Config file, and - try if the DGA driver (and SDL's DGA driver, see VIDEOCARDS) works for you. - It's much faster. If SDL's DGA works too, use that, it'll be EVEN - faster! - - <B>Q: what is the meaning of numbers in the status line? - </B>A: see: - </B>A: 2.1 V: 2.2 A-V: -0.167 ct: 0.042 57 41% 0% 2.6% 0 - - </B>A: audio position in seconds - - V: video position in seconds - - A-V: audio-video difference in seconds (delay) - - ct: total A-V sync correction done - - frames played (counting from last seek) - - video codec cpu usage in percent (for mpeg it includes video_out too!) - - video_out cpu usage for avi, 0 for mpg (see above) - - audio codec cpu usage in percent - - frames needed to drop to maintain A-V sync - Most of them are for debug purposes, and will be removed soon. - - <B>Q: Why is video_out cpu usage zero (0%) for mpeg files? - </B>A: It's not zero, but it's built in into codec, so can't be measured separated. - You should try to play the file using -vo null and then -vo ... and check - the difference to see video_out speed... - - <B>Q: What's XMMP? (is it XMMS or XMPS but mispelled?) - </B>A: It's a new project, see http://frozenproductions.com for details - - <B>Q: There are error messages about file not found /usr/lib/win32/.... - </B>A: Download & install w32codec.zip from *our* FTP - (avifile's codec package has different DLL set) - - <B>Q: Are there any mailing lists on <B>MPlayer</B>? - </B>A: Yes! See README on how to subscribe them! - - <B>Q: I've found a nasty bug when I tried to play my favourite video!! - Who should I inform? - </B>A: See Appendix <A HREF="#C">C</A> . - - <B>Q: I have problems playing files with ... codec. Can I use'em? - </B>A: Check http://mplayer.sourceforge.net/DOCS/codecs.html, - if it doesn't contain your codec, read - http://mplayer.sourceforge.net/DOCS/CODECS, and contact us. - - <B>Q: Umm, what is "IdegCounter" ? - </B>A: A mixture of a hungarian and an english word. In english, "Ideg" means - "nerve", and is pronounced as something like "ydaegh" . It was first used - to measure the nervousness of A'rpi, after some (umm) "mystic" disappearance - of CVS code ;) - - <B>Q: LIRC doesn't work, because ... - </B>A: Are you sure you use "mplayer_lirc" instead of "mplayer" ? - - <B>Q: Subtitles are very nice, the most beautiful I've ever seen, but they slow - down the playing! I know it's unlikely... - </B>A: After running ./configure , edit config.h and replace #undef FAST_OSD with - #define FAST_OSD . Then recompile. - - <B>Q: The OSD is flickering! - </B>A: You use a vo driver with single buffering (x11,xv). With xv you can change - the number of buffers in libvo/vo_xv.c : - Increase #define NUM_BUFFERS 1 - - <B>Q: What exactly is this libavcodec? - </B>A: It's from Gerard Lantau's ffmpeg package (http://ffmpeg.sourceforge.net). - It has C language DivX ;-) and OpenDivX codec. Some benchmarks - showed that its DivX seems to be even faster than DirectShow codec without - preprocessing, and only a few percent slower than ProjectMayo's OpenDivX - decoder. It uses YV12 pixel format, so old Voodoo users can use it for YUV. - Also, open the possibility to play DivX on virtually every computer that - has a C compiler. Kinda great stuff, isn't it? - - <B>Q: But configure tells me "Checking for libavcodec ... no"! - </B>A: You need to get libavcodec from FFmpeg's CVS. Read the instructions in - the <A HREF="#2.1.2.2">ffmpeg section</A> . - - - <A NAME=6.3>6.3. File playing problems - - <B>Q: ...... works with avifile/aviplay while doesn't with <B>MPlayer</B> - </B>A: <B>MPlayer</B> != avifile - The only common thing between these players is the Win32 DLL loader. - The codecs (dll) sets, syncronization, demultiplexing etc is totaly - different and shouldn't be compared. - If something works with aviplay it doesn't mean that <B>MPlayer</B> should do - it and vice versa. - - <B>Q: audio goes out of sync playing .avi file - </B>A: try with -bps or -nobps option - if still bad, send me (upload to ftp) that file, I'll check. - - <B>Q: Indeo 3.x/4.x movies are viewed upside-down!!!? - </B>A: It's a known bug (really it's a bug/limitation of the DLL codec) - Try if your vo driver supports the -flip switch. - - <B>Q: Indeo 3.x,4.x video doesn't work at 32bpp resolutions (16,24 bpp are ok) - </B>A: It's a known bug (really it's a bug/limitation of the DLL codec) - - <B>Q: I've got '<B>MPlayer</B> interrupted by signal 11' in module audio_setup or - decode_audio. - </B>A: This is highly unlikely, since the mp3lib rewrite. Contact us, it may be - a bug. Possibly it's a damaged file, try with -afm 4 . - - <B>Q: <B>MPlayer</B> exits with something error when using l3codeca.acm - </B>A: Check 'ldd /usr/local/bin/mplayer' output. If it contains - libc.so.6 => /lib/libc.so.6 (0x4???????) - where "?" is any number then it's ok, the error is not here. If it is: - libc.so.6 => /lib/libc.so.6 (0x00??????) - then there is problem with your kernel/libc. Maybe you are using some - security patches (for example Solar Designer's OpenWall patch) which - forces loading libraries to very low addresses. - Because l3codeca.acm is a non-relocatable DLL, it must be loaded to - 0x00400000, we can't change this. You should use non-patched kernel, - or use <B>MPlayer</B>'s -afm 1 option to disable using l3codeca.acm. - - <B>Q: My computer plays M$ DivX AVIs with resolutions ~ 640x300 and stereo mp3 - sound too slow. When I use -nosound switch, everything is ok (but quiet). - </B>A: Those files probably have 48Khz audio, and your soundcard/driver can't play - it correctly. Audio downsampling isn't implemented in <B>MPlayer</B> (yet). - - <B>Q: <B>MPlayer</B> dies with "<B>MPlayer</B> interrupted by signal 4 in module: decode_video". - </B>A: Try running <B>MPlayer</B> on the machine you compiled on. Or recompile. Don't - use <B>MPlayer</B> on different CPU than it was compiled on. - - <B>Q: I have problems with [your window manager] and fullscreen xv/xmga/sdl/x11 - modes.. - </B>A1: Use the -fsmode switch. See example.conf or manpage. - - <B>Q: But it works with avifile ! - </B>A: So what? - - <B>Q: Then avifile is better ! - </B>A: Then use avifile, it has nice GUI and nice C++ code :) - - <B>Q: I got this playing mpeg files: Can't find codec for video format 0x10000001 ! - </B>A: You have old version of codecs.conf at ~/.mplayer/. Upgrade it from DOCS/ - - <B>Q: After starting mplayer under KDE(1/2) I just get a black screen and nothing - happens, after about one minute the video starts playing. - </B>A: The KDE arts sound daemon is blocking the sound device, either wait the time - until video starts or you disable the arts-daemon in kontrollcenter. - If you want to use arts sound, specify audio output via SDL (ao=sdl), and - make sure your SDL can handle arts sound. Yet another option is to start - mplayer with artsdsp. - - <B>Q: I have an AVI that plays with grey screen with -vc odivx, and green - with -vc divx4 . - </B>A: It's not a DivX file, but an M$ MPEG4v3 . Update your codecs.conf. - - - <A NAME=6.4>6.4. Video/audio driver problems (vo/ao) - - <B>Q: Ok, -vo help shows DGA driver, but it is babbling about permissions! - Help me! - </B>A: It works only if running as root! It's a DGA limitation. - You should become to root (su -), and try again. - - Another solution is making mplayer SUID root, but its NOT RECOMMENDED! - - chown root /usr/local/bin/mplayer - chmod 750 /usr/local/bin/mplayer - chmod +s /usr/local/bin/mplayer - - !!!! BUT STAY TUNED !!!! - This is a *BIG* security risk! *NEVER* do this on a server or on a computer - can be accessed by more people than only you because they can gain root - privilegies through suid root mplayer!!! - !!!! SO YOU HAVE BEEN WARNED ... !!!! - - <B>Q: When using Xvideo, my Voodoo 3/Banshee says: - X Error of failed request: BadAccess (attempt to access private resource - denied) - Major opcode of failed request: 147 (MIT-SHM) - Minor opcode of failed request: 1 (X_ShmAttach) - Serial number of failed request: 26 - Current serial number in output stream:27 - </B>A: Your driver is old, update it. Either download (at least) DRI version 0.6 - from http://dri.sourceforge.net , or use the DRI cvs. - - <B>Q: When using Xvideo, I can't play DivX avis with my Voodoo 3/Banshee ! - It says: - ... - Xvideo image format: 0x32315659 (YV12) planar - Xvideo image format: 0x30323449 (I420) planar - ... - </B>A1: See the previous answer. - A2: Since 0.18pre4 we include libavcodec from the ffmpeg package. It contains - a C language DivX and OpenDivX decoder. The DivX decoder uses YV12 format - for output, thus it should work for you. Compile in libavcodec support. - - <B>Q: OpenGL (-vo gl) output doesn't work (hangup/black window/X11 errors/...) - </B>A: your opengl driver doesn't support dynamic texture changes (glTexSubImage) - it's known not to work with nVidia's binary shit. - it's known to work with Utah-GLX/DRI and Matrox G400 card. Also with - DRI and Radeon card. It won't work with DRI others than these. - it will not work with 3DFX cards because the 256x256 texture size limit. - - <B>Q: I have an nVidia TNT/TNT2 card, and I have a band with strange colours, - right under the movie! Whose fault is this? - </B>A: It's the nVidia X driver's. These bugs are ONLY with the TNT/TNT2 cards, - and we can't do anything about it, it's not our bug. - - - <A NAME=6.5>6.5. Feature requests - - <B>Q: Is there a hint on how to watch QuickTime and RealMedia movies in MPlayer? - </B>A: There's no way to do it. Therefore these formats deserve to die in flames. - Theoretically you can reverse engineer Real codecs built for Linux (they - are available as .so files), but in practice that's really difficult, even - if you know how the compiler used by Real is making assembler code. - As for QuickTime, it's possible to play some old movies and this - capability will be added to mplayer soon, but newer clips are all Sorenson - encoded, and that codec is built-in deep in the QT executable, there's - no way to use it. - - - <A NAME=6.6>6.6. DVD FAQ - - <B>Q: I have some problem not mentioned here ... - </B>A: Read file 'DVD' as well. - - <B>Q: How can I actually watch DVD with MPlayer? - </B>A: Ehh. Go on reading this file as well as 'DVD' (hint: you must have libcss) - - <B>Q: So MPlayer can play DVDs? Then it must use DeCSS! You are under arrest - under the XYZ#$ paragraph of the-- - </B>A: Get back asshole, there is no DeCSS code in MPlayer. It links to libcss. - - <B>Q: Seems to work but no sound. - </B>A: Use '-aid 128' (or try: 128,129,...) command line switch - - <B>Q: I have got Spanish audio instead of English (or similar problems) - </B>A: See the last question/answer. - - <B>Q: MPlayer complains about FIBMAP or something. - </B>A: Try to run MPlayer as root. - - <B>Q: some strange effect (interlace like thing) especially when fast moving - objects are shown in the movie - </B>A: known problem, we try to fix it later - - <B>Q: DVD support in MPlayer is a piece of shit! - </B>A: You're probably right :) However please contact us if you can improve it! - - <B>Q: Where can I get libcss package from? - </B>A: Maybe from the source of OMS (www.linuxvideo.org). - - <B>Q: How can I ... (insert some expectable DVD player feature here) - </B>A: The current implementation is only for viewing VOB files from DVD. - Nothing more, like subtitles, menus and so on. - - <B>Q: How can I set the region code of my DVD-Drive ? I don't have windows! - </B>A: Use the 'regionset' tool : - http://www.linuxtv.org/download/dvd/dvd_disc_20000215.tar.gz - - <B>Q: MPlayer complains about some renamed option? - </B>A: For future development, old '-dvd' option was replaced by '-dvdauth'. - Option '-dvd' *WILL* do the 'full disk movie' mplaying mode. - But until that, '-dvd' does nothing only prints error message. - - - <A NAME=7>7. Misc OS'es - - - <A NAME=7.1>7.1. Debian packaging - - To build the package, get the cvs version, or .tgz and uncompress it, - and cd into programs directory: - - - cd main - fakeroot debian/rules binary - - - (... mplayer detects hardware/software, builds itself and.. ) - dpkg-deb: building package `mplayer' in `../mplayer_0.18-1_i386.deb'. - - And now just become root, and : - - - dpkg -i ../mplayer_0.18-1_i386.deb as root. - - - Here's how it looks like: - - eyck@incubus:/src/main$ sudo dpkg -i ../mplayer_0.18-1_i386.deb - Password: - (Reading database ... 26946 files and directories currently installed.) - Preparing to replace mplayer 0.17a-1 (using ../mplayer_0.18-1_i386.deb) - Unpacking replacement mplayer ... - Setting up mplayer (0.18-1) ... - - - <A NAME=7.2>7.2. FreeBSD - - To build the package you will need GNU make (gmake, /usr/ports/devel/gmake), - native BSD make will not work. - - To run <B>MPlayer</B> you will need to re-compile the kernel with - "options USER_LDT" (unless you are running -CURRENT, where this is default). - If you have a CPU with SSE also use "options CPU_ENABLE_SSE" to use it - (FreeBSD-STABLE required, or use kernel patches). - - If <B>MPlayer</B> complains about "CD-ROM Device '/dev/cdrom' not found!" make a - symbolic link : ln -s /dev/(your_cdrom_device) /dev/cdrom - - There's no DVD support for FreeBSD yet. - Feel free to add it :-) - - - <A NAME=7.3>7.3. Solaris 8 - - AVI file playback works best on Solaris x86, because you have the - option to use the win32 codecs on the x86 platform. On Solaris SPARC, - you'll find quite a few AVI files with non working video and/or - audio playback, because the video/audio codecs using the win32 DLLs - are not available. However, <B>DivX/OpenDivX</B> movies should work, - when using libavcodec. - - To build the package you will need GNU make (gmake, /opt/sfw/gmake), native - Solaris make will not work. Typical error you get when building with solaris' - make instead of GNU make: - - - % /usr/ccs/bin/make - make: Fatal error in reader: Makefile, line 25: Unexpected end of line seen - - - On Solaris SPARC, you need the GNU C/C++ Compiler; it does not matter - if GNU C/C++ compiler is configured with or without the GNU assembler. - - On Solaris x86, you need the GNU assembler and the GNU C/C++ - compiler, configured to use the GNU assembler! The mplayer code on - the x86 platform makes heavy use of MMX, SSE and 3DNOW! - instructions that cannot be compiled using Sun's assembler - /usr/ccs/bin/as. - - The configure script tries to find out, which assembler program is - used by your "gcc" command (in case the autodetection fails, use - the "--as=/whereever/you/have/installed/gnu-as" option to tell the - configure script where it can find GNU "as" on your system). - - Error message from configure on a Solaris x86 system using GCC - without GNU assembler: - - % configure - ... - Checking assembler (/usr/ccs/bin/as) ... , failed - Please upgrade(downgrade) binutils to 2.10.1... - - (Solution: Install and use a gcc configured with "--with-as=gas") - - Typical error you get when building with a GNU C compiler that does - not use GNU as: - - % gmake - ... - gcc -c -Iloader -Ilibvo -O4 -march=i686 -mcpu=i686 -pipe -ffast-math - -fomit-frame-pointer -I/usr/local/include -o mplayer.o mplayer.c - Assembler: mplayer.c - "(stdin)", line 3567 : Illegal mnemonic - "(stdin)", line 3567 : Syntax error - ... more "Illegal mnemonic" and "Syntax error" errors ... - - - For DVD support you must have the patched libcss installed. Patch: - http://www.tools.de/solaris/mplayer/ - - - Due to two bugs in solaris 8 x86, you cannot reliably play DVDs using a - capacity >4GB: - - - The sd(7D) driver on solaris 8 x86 driver has bug when accessing a - disk block >4GB on a device using a logical blocksize != DEV_BSIZE - (i.e. CDROM and DVD media). Due to a 32bit int overflow, a disk - address modulo 4GB is accessed. - (http://groups.yahoo.com/group/solarisonintel/message/22516) - - - The similar bug is present in the hsfs(7FS) filesystem code (aka - ISO9660), hsfs currently does not support partitions/disks >4GB, - all data is accessed modulo 4GB - (http://groups.yahoo.com/group/solarisonintel/message/22592) - - - <A NAME=7.4>7.4. StrongARM - - MPlayer is reported to compile on StrongARM. Use the following command line: - - - ./configure --target=arm-linux --disable-css --with-x11libdir=/usr/arm/lib - --with-x11incdir=/usr/arm/lib --disable-gcc-checking - - - <A NAME=A>Appendix A - Authors - -NOTE: Do *NOT* send bugreports, help & feature requests directly to the authors! -===== Read Appendix <A HREF="#C">C</A> and subscribe to mplayer-users mailing lists. - -========================== The <B>MPlayer</B> project: =============================== - -Árpád Gereöffy (A'rpi/ESP-team): <arpi@thot.banki.hu> -- player code (mpeg stream demultiplexer and avi/asf parser, A-V sync, seek...) -- mp3lib, based on mpglib sources [MP3 audio decoder] -- getch2 [keyboard handler] -- some changes in libmpeg2 code (progressive frames, bitrate & fps support) -- libvo improvements: adding OpenGL support, bugfix in mga driver... -- triple buffering & YUY2 support (for DivX/MPEG4) into mga_vid driver -- scripts in the TVout directory (TVout on Matrox G400DH, read documentation) -- hacking DivX/Mpeg4 VfW codecs to get YUV output -- opendivx decoder speed optimizations (see opendivx/ChangeLog) -- OSD & SUB display code -- ffmpeg/libavcodec integration -- DivX4Linux (ProjectMayo) support (see documentation) - -Zoltán Ponekker (Pontscho/Fresh!): <pontscho@makacs.poliod.hu> -- configure script and Makefiles for easy compile -- GUI system (near complete!?) -- 3DNow! support into mp3lib -- 3DNow! support into fastmemcpy.h -- various X11 driver changes (keyboard handling, fullscreen, bpp detect, etc) -- libvo: adding xmga driver, and fullscreen support to xv -- audio mixer (volume) support - -Gábor Lénárt (LGB): <lgb@lgb.hu> -- ./configure script improvements -- Makefile improvements -- prelimenary DVD support -- another GUI code (is that so..?) -- various X11 cleanups and fixes - -Gábor Bérczi (Gabucino): <gabucino@k2.jozsef.kando.hu> -- documentation maintainer -- hungarian translation of documentation -- second webpage design&gfx -- webpage maintainer -- testing, codecs quality & speed comparsions -- IRC channel #<B>MPlayer</B> operator - (devel channel, users earn kickban) -- experimental MINIX port - -Szabolcs Berecz (Szabi): <szabi@inf.elte.hu> -- codecs.conf file parser -- config file and command line parser -- mga_vid fixes, module option etc. -- fbdev support in libvo -- type #7 subtitle support - -László Megyer (Lez, Laaz): <lez@sch.bme.hu> -- SUB reader -- screensaver+DPMS disable for libvo - -Gyula László (Chass, Tégla): <chass-@freemail.hu> -- first fonts (mp_font1.zip) -- third (current) homepage design&gfx - -Zoltán Márk Vicián (Se7en): <se7en@sch.bme.hu> -- SVGAlib support in libvo - -Alex Beregszaszi (Al3x): <alex@naxine.org> -- ALSA output driver in libao2 -- vo_ggi output driver in libvo (www.ggi-project.org) - -Andreas Ackermann (Acki): <asackerm@stud.informatik.uni-erlangen.de> -- LIRC support (see documentation) -- DGA support in libvo - -Felix Bünemann (Atmos): <atmosfear@users.sourceforge.net> -- SDL driver maintainer -- Additional YUV formats fixes -- New font (mp_font2.zip) -- PNG file output support in libvo -- flipping support (for Indeo 3/4, etc) -- SDL audio driver in libao2 -- RAW PCM/WAVE file writer for libao2 - -TeLeNiEkO: <telenieko@telenieko.com> -- spanish translation of documentation - -Michael Graffam: <mgraffam@idsi.net> -- XF86VidMode support to vo_x11 and vo_dga -- Video mode switching code to vo_dga - -Jens Hoffmann: <hoffmajs@gmx.de> -- Additional YUV formats support -- found the big BITMAPINFOHEADER problem -> solved ASV2 pixelization - -Nick Kurshev: <nickols_k@mail.ru> -- memcpy optimizations for AMD K7 and Intel Pentium III (fastmemcpy.h) -- CDROM tune info -- further 3DNow! optimizations into mp3lib and libac3 and ffmpeg -- russian translation of documentation - -German Gomez Garcia: <german@piraos.com> -- DVD .ifo parser and chapter selection [not yet in the main trunk] -- SPDIF AC3 output for SBLive! - -Dariush Pietrzak (Eyck): <eyck@incubus.ar.lublin.pl> -- debian packaging support (see debian/* and this documentation) -- support for vplayer subtitle format -- prelimenary support for .RT subtitle format - -Marcus Comstedt: <marcus@idonex.se> -- initial solaris8-x86 support - -Jürgen Keil and Marcus Comstedt: <jk@tools.de> <marcus@idonex.se> -- patched <B>MPlayer</B> to work on Solaris 8 x86 -- configure fixes -- various fixes (win32, configure, etc) -- SUN audio driver in libao2 - -Vladimir Kushnir: <vkushnir@Alfacom.net> -- patched <B>MPlayer</B> to work on FreeBSD x86 - -Bertrand BAUDET: <bertrand_baudet@yahoo.com> -- network streaming support - -Artur Zaprzala: <artur.zaprzala@talex.com.pl> -- Complete font generator prog + OSD font (TOOLS/subfont-c) - -lanzz@lanzz.org: -- GIMP font generator plugin (TOOLS/subfont-gimp) - -Adam Tla/lka: <atlka@pg.gda.pl> -- osd/sub review, fixes, optimization, utf8 support -- various fixes - -Folke Ashberg: <folke@ashberg.de> -- native AAlib driver (-vo aa) - -Main testers: - Tibor Balázs (Tibcu) - Péter Sasi (SaPe) - Christoph H. Lampert - Attila Kinali - Dirk Vornheder - -========================== The codecs, libs: ================================= - -Aaron Holtzman: <aholtzma@engr.uvic.ca> -- ac3dec (and libac3) author [AC3 audio decoder] -- mga_vid driver [Matrox G200/G400 YUV Back-end Scaler] -- mpeg2dec [Fast MPEG1/MPEG2 video decoder, currently used in player] - -Michel Lespinasse: <walken@zoy.org> -- did large libmpeg2 changes for better speed and mpeg conformance - -Eugene Kuznetsov: <divx@euro.ru> -- avifile author [AVI player library for linux, using Win32 VfW/ACM codecs] -- technical help about AVI and ASF formats, and how to get YUV using VfW... -- divx4linux techical support - -Zdenek Kabelac: <kabi@informatics.muni.cz> -- current avifile maintainer(?) -- some technical help about the win32 stuff and timers - -Gerard Lantau: <glantau@yahoo.fr> -- ffmpeg/libavcodec author,maintainer (opensource mpeg, mjpeg, divx en/decoder) - -Project Mayo: [http://www.projectmayo.com] -- the OpenDivX codec authors - -Michael Hipp: -- mpglib author [isn't used directly but some parts in mp3lib] - -Mark Podlipec: -- xa_gsm.c author [MS-GSM audio codec] - [from a GSM library by Jutta Degener and Carsten Bormann] - -Their code is not used in current player version, but I've got some ideas or -other technical help from: - -John F. McGowan http://www.jmcgowan.com/ -- AVI FAQ author/collector. [site with many useful docs on codecs and avi fmt] - -Dirk Farin: <farin@ti.uni-mannheim.de> -- dvdview author [MPEG1/MPEG2 video decoder, used in v0.5-v0.8] - -Adam Williams: <broadcast@earthling.net> -- libmpeg3 (and xmovie) author [MPEG1/MPEG2 video decoder, used in v0.1-v0.4] - - - <A NAME=B>Appendix B - Mailing lists - -There are some public mailing lists on <B>MPlayer</B>. Subscribing can be achieved on -the following addresses: - -- <B>MPlayer</B> core/hungarian developers list: - http://mp.dev.hu/mailman/listinfo/mplayer-devel - - I dunno, it is the FLAME list in hungarian language :) - Also some talking about mplayer core team internals, like mplayer - party, sponsors etc can be here. - -- <B>MPlayer</B> developers list: - http://lists.sourceforge.net/lists/listinfo/mplayer-dev-eng - - This list is about mplayer development! Talking about interface/API changes, - new libraryes, code optimization, ./configure changes, and send patches here. - Do NOT send bugreports, user questions, feature requests here! - This list should be kept low-traffic. - -- <B>MPlayer</B> users list: - http://lists.sourceforge.net/lists/listinfo/mplayer-users - - - send bugreports here (after reading DOCS/BUGS, Appendix <A HREF="#C">C</A>) - - send feature requests here (after reading DOCS/TODO) - - send user questions here (after reading all this documentation) - -- <B>MPlayer</B> & Matrox G200/G400/G450 users: - http://lists.sourceforge.net/lists/listinfo/mplayer-matrox - - Send matrox-related questions here, - - things about mga_vid, - - matrox's official beta drivers (for X 4.x.x) - - and about matroxfb-TVout stuff. - -- mpg12play-portable developers: - http://lists.sourceforge.net/lists/listinfo/mplayer-mpg12play - - This list is for talking about mplayer ports to non-x86 platforms - (IRIX, Solaris-SPARC, Alpha, Commodore64, Sharp Calculator, - Teapot etc...) - -- <B>MPlayer</B> announce: - http://lists.sourceforge.net/lists/listinfo/mplayer-announce - - Very low traffic list :) - And it's read-only. I'll post something shit there if a new release - is done. - -- <B>MPlayer</B> CVS-log: - http://mp.dev.hu/mailman/listinfo/mplayer-cvslog - - Send only questions about CVS changes here. - (if you don't understand why a change is required or you've better fix) - Be sure in that your target developer reads this list! - -NOTE: language of above lists are ENGLISH, unless explicitly stated otherwise. - Please do not send messages using other language! - - - <A NAME=C>Appendix C - How to report bugs - -How to report bugs? -~~~~~~~~~~~~~~~~~~~ -First read DOCS/BUGS, and other docs. If your problem isn't -known or isn't solved by our instructions, then report the bug: - -Where? -====== -Subscribe to the mplayer-users mailing list: - http://lists.sourceforge.net/lists/listinfo/mplayer-users -and send your bugreport to: - mplayer-users@lists.sourceforge.net -We won't CC: so please subscribe!!! - -Don't send bugreports private, directly to author's address!!! -We are working together on code, so everyone is interested in it. -BTW many times other users know the solution (system config probs, -bad drivers etc), even when we think it's a bug in our code. -The language of this list is ENGLISH ! - -Please describe your problem in details, examples etc, and don't -forget to include these: - -What? -===== - -1. The system info what we always want: -- linux distribution - examples: - RedHat 7.1 - Slackware 7.0 + devel packs from 7.1 ... -- kernel version: - uname -a -- libc version: - ls -l /lib/libc[.-]* -- X version: - X -version -- gcc and ld version: - gcc -v - ld -v -- binutils version: - as --version - -2. Hardware & drivers: -- CPU info: - cat /proc/cpuinfo -- video card manufacturer and model - examples: - ASUS V3800U chip: nVidia TNT2 Ultra pro 32MB SDRAM - Matrox G400 DH 32MB SGRAM -- video driver type&version - examples: - X built-in driver - nvidia 0.9.623 - Utah-GLX CVS 2001-02-17 - DRI from X 4.0.3 -- sound card type & driver - examples: - Creative SBLive! Gold with OSS driver from oss.creative.com - Creative SB16 with OSS drivers of kernel - GUS PnP with ALSA OSS emulation -- if you are unsure, attach output of lspci -v - -For compiling problems/errors: -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -3. output of configure/make: - make distclean - ./configure &>config.log - ./make &>make.log -4. these files: - config.h - config.mak - libvo/config.mak - -For playback problems: -~~~~~~~~~~~~~~~~~~~~~~ -3. Output of mplayer at verbose level 1 (-v) - mplayer -v [options] filename &> mplayer.log - -4. If the problem is specific to one or a few files, - then please upload that file to: - ftp://mplayerhq.hu/MPlayer/incoming/ - Usually first 1-5 MB of the file is enough to reproduce - the problem, but first you should try it: - dd if=yourfile of=smallfile bs=1k count=1024 - (it will cut first 1MB of 'yourfile' and save to 'smallfile') - Then try again on this small file, and if bug still exists - then it's enough to upload this small file. - NEVER send such files via mail! Upload it, and send only - the path/filename of the file on the FTP. - If the file is accessible on the net, then sending the - _exact_ URL is enough! - -5. For crashes (segfault, SIGILL, signal 4 etc): - -If you have coredump of the crash, see 5.a, else see 5.b: - -5.a: Please print us coredump (if it was created). -Howto: -please create following command file: - -disass $eip-32 $eip+32 -printf "eax=%08lX\n",$eax -printf "ebx=%08lX\n",$ebx -printf "ecx=%08lX\n",$ecx -printf "edx=%08lX\n",$edx -printf "esp=%08lX\n",$esp -printf "ebp=%08lX\n",$ebp -printf "edi=%08lX\n",$edi -printf "esi=%08lX\n",$esi - -Then simply execute following command line: -gdb mplayer --core=core -batch --command=command_file >mplayer.bug - -5.b.: run <B>MPlayer</B> in gdb: -[at root/user shell prompt:] - # gdb mplayer -[at gdb prompt:] - > run -v [options-to-mplayer] filename - ... (wait until it will crash) - > bt - > disass $eip-32 $eip+32 -Send us the full output of the above things! - -In general: -~~~~~~~~~~~ - If something is big (logs etc) then it's better to upload to the ftp - (gzipped), and include only path/filename in the bugreport! - -</BODY> - -</HTML>