5. FAQ section

5.1 Compilation

 
  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: Great, I have gcc 3.0.1 from RedHat/Mandrake, then I'm fine--!
A: No :) Their gcc 3.0.1 was compiled with gcc 2.96, so they are buggy shit too.
 
Q: Now then. What should I use?
A: Any of gcc 2.95 series.
 
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 etc/inttypes.h to MPlayer directory (cp etc/inttypes.h .) try again...
 
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: I have G200/G400, how to compile/use mga_vid driver?
A: Read all this documentation.
 
Q: Are there rpm/deb/... packages of MPlayer?
A: You can make a .deb package for yourself, check section 6.1. 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: 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: 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 RTFM) Alternatively, try SDL's DGA driver with '-vo sdl:dga' options.
 
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: I compiled MPlayer 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.
A: What are you doing on Linux? Can't you install a library? Why do we get these questions? It's not MPlayer specific at all! Add /usr/local/lib to /etc/ld.so.conf and run ldconfig . Or install it to /usr/lib , because if you can't solve the /usr/local problem, you are careless enough to do such things.
 
5.2. General questions
 
Q: What about DVD playing ?
A: Read the CD/DVD section .
 
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 RTFM) works for you. It's much faster. If SDL's DGA works too, use that, it'll be EVEN faster!
 
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 4
  • 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
  • current level of image postprocessing (when using -autoq)
Most of them are for debug purposes, and will be removed soon.
 
Q: What if I don't want them to appear?
A: Then you use the -quiet option, and read the manpage.
 
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: 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: Are there any mailing lists on MPlayer?
A: Yes! See RTFM 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 Appendix C.
 
Q: I have problems playing files with ... codec. Can I use'em?
A: Check http://www.mplayerhq.hu/DOCS/codecs-status.html, if it doesn't contain your codec, read section 2.1.4, and contact us.
 
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: LIRC doesn't work, because ...
A: Are you sure you use "mplayer_lirc" instead of "mplayer"?
 
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, use -double option.
 
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 alpha 47 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 DivX4 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?
 
Q: But configure tells me "Checking for libavcodec ... no"!
A: You need to get libavcodec from FFmpeg's CVS. Read the instructions in the ffmpeg section.
 
5.3. File playing problems
 
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: 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: 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: 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: Ok son, your machine is too slow. RTFM or anything.
 
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..
A: 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 etc/
 
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. 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.
 
Q: I have an AVI that plays with grey screen with -vc odivx, and green with -vc divx4 .
A: It's not a DivX file, but an M$ MPEG4v3 . Update your codecs.conf.
 
Q: There this movie is, and when I play it I get video-audio desync and/or MPlayer crashes with the following:
DEMUXER: Too many (945 in 8390980 bytes) video packets in the buffer!
A: This can have multiple reasons.
  • your CPU and/or video card and/or bus is too SLOW. MPlayer displays a message if this is the case. (and the dropped frames counter is going up fast)
  • if it is an AVI, maybe it has shit interleaving. Try the -ni option.
  • your sound driver is shit, or you use ALSA 0.5 with -ao oss. See the soundcards section.
  • the AVI has shit header, try with the -nobps option, and/or -mc 0 .
  •  
    5.4. Video/audio driver problems (vo/ao)
     
    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: 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 support 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: 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 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.
     
    5.5. Feature requests
     
    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.