5. FAQ section

5.1 Compilation

 
  Q: configure ends with this text, and MPlayer won't compile !
Your gcc does not support even i386 for '-march' and '-mcpu'.
A: Your gcc isn't installed correctly, check config.log file for details.
 
  Q: What does "No such file or directory" means ?
A: Probably there is no such file or directory.
 
  Q: What's the problem with gcc 2.96 ?
A: To be short: DO NOT USE gcc 2.96 !!!
Check this and this texts! If you still really really want to do so, be sure to use the latest release.
 
Q: Great, I have gcc 3.0.1 from RedHat/Mandrake, then I'm fine--!
A: No, since there have been/are issues with those compilers.
Use 2.95.x series for reliability (not 2.96). Use the latest gcc 3.0.x (starting at 3.0.2) if you want to use a 3.0.x version.
 
Q: I tried to compile MPlayer, but I got this output:
In file included from /usr/include/g++-v3/bits/std_cwchar.h:42,
                 from /usr/include/g++-v3/bits/fpos.h:40,
                 from /usr/include/g++-v3/bits/char_traits.h:40,
                 from /usr/include/g++-v3/bits/std_string.h:41,
                 from /usr/include/g++-v3/string:31,
                 from libwin32.h:36,
                 from DS_AudioDecoder.h:4,
                 from DS_AudioDec.cpp:5:
/usr/include/wchar.h: In function Long long int wcstoq(const wchar_t*,
   wchar_t**, int)':
/usr/include/wchar.h:514: cannot convert `const wchar_t* __restrict' to
`const
A: Upgrade your glibc to the newest. On Mandrake, use 2.2.4-8mdk .
 
Q: ...gcc 2.96... (yes, some people are STILL flaming about their gcc 2.96!!)
A:

But we has idegs (the word 'ideg' is described further in the FAQ). And our idegcounters overflow again and again.

Unfortunately MPlayer is out of our control. It's used by lamers, Linux users who can't even use windows, and never tried to compile a kernel. They installed (with default options) Mandrake or RedHat or Suse, and without RTFM'ing they send messages saying 'it doesn't work! help me! please! i'm new to the linux! help! oh! help me!'. We can't stop them, but at least we try to force them RTFM and to read fuckin' messages of ./configure and mplayer.

And you clever guys come and flame us with gcc 2.96 and binary packages. Instead of helping users or making patches to help solve problems.

Half of our spare/free time is spent by answering silly mails here and making newer tricks and checks to configure to avoid such mails.

And there is a balance. On one hand are you, clever guys, saying we are very bad because we don't like buggy gcc 2.96, and at the other hand there are the 'new to linux' guys who are showing us gcc 2.96 is buggy.

Conclusion: we can't be good. Half of people always will say we are bad.

Maybe we should close the project, make it closed source, commercial, and provide install support for it. then we could leave current work, so development could go faster, and we earn lots of money with it and buy a big house, etc etc. Do you really want it? It seems.

Arpi (a mail on the mplayer-users list)

 
Q: Where can I find information about gcc 2.96 bugs ?
A: In this documentation. And this documentation describes why RedHat released 2.96 and other interesting things.
 
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 any previous version, so 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 libdvdcss/libdivxdecore support, but when I try to start it, it says:
> error while loading shared libraries: lib*.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: Add /usr/local/lib to /etc/ld.so.conf and run ldconfig .
 
Q: MPlayer doesn't seem to find my libcss. What am I doing wrong ?
A: It's normal. MPlayer no longer depends on libcss to play a DVD. You have to install libdvdread and libdvdcss. Check for DVD Playback part here. libcss is to be used for example when you want to play encrypted VOB files from hard disk (not for general users).
 
Q: Hmm, strange. When loading the mga_vid.o kernel module, I found this in the logs:
Warning: loading mga_vid.o will taint the kernel: no license
A: The latest kernels modules needs require a flag indicating its license (mainly to avoid kernel hackers' debugging closed sources drivers). Upgrade your kernel and your modutils and MPlayer.
 
Q: When compiling MEncoder, it segfaults at linking !!!
A: Dunno, upgrading binutils should help (2.11.92.* or newer should be good). Not our fault, do NOT report!
 
Q: I'd like to compile MPlayer on Minix !
A: Me too. :)
 
5.2. General questions
 
Q: What about DVD playing ?
A: Read the CD/DVD section in this page.
 
Q: -xy or -fs option doesn't work with x11 driver (-vo x11)
A: It does, but you have to explicitly specify software scaling (it's SLOW!) with the -zoom option. You better use XF86VidMode support: 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 w32codec.zip from *our* FTP (avifile's codec package has different DLL set). Install it.
 
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.3, 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: And what is "Faszom(C)ounter" ?
A: "Fasz" is a hungarian word you don't want to know, the others are in connection with the pervert minds of the MPlayer developers.
 
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: See the 2.1.2.2 section.
 
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.
 
Q: The GUI isn't usable with icewm, because some panel are over the movie!!
A: Known, icewm is shit and dictatoric. Unsolvable. In detail: icewm sucks because its taskbar overrides GUI's window resize queries. If it asks for resize to 800x600, then it resizes window to 800x(600-taskbar_size). It's bad. Very bad. In short: shit.
 
Q: I can't access the GUI menu. I press right click, but I can't access any menu items !
A: Are you using FVWM ? Try the following :
Start -> Settings -> Configuration -> Base Configuration

Set "Use Applications position hints" to Yes.
 
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/
OR you have the vc= option or similar, in your config file(s).
 
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 .
  •  
    Q: I have an MJPEG file which works with other players but displays only black image in MPlayer.
    A: Disable the Windows DLL in codecs.conf, or use -vc ffmjpeg option (you have to compile MPlayer with libavcodec).
     
    Q: When I try to grab from my tuner, it works, but colors are strange. It's ok with other applications.
    A: Your card probably misreports its colorspace capacity. Try with YUY2 instead of default YV12 (see TV input documentation).
     
    Q: When I try to start playing, I get this message, but playing is good :
    Linux RTC init: ioctl (rtc_pie_on): Permission denied
    A: See the Installation section. The part about new sync code.
     
    Q: I have A/V sync problems. Some of my AVIs play fine, but some play with double speed !
    A: You have buggy soundcard/driver. Most likely it's fixed at 44100Hz, and you try to play a file which has 22050Hz audio. Try the -ao sdl driver.
     
    Q: All the WMV (or other..) files I play gives green/gray window and there is only sound! It prints:
    Detected video codec: [null] drv:0 (NULL codec (no decoding))
    A: Update your codecs.conf
     
    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. UPDATE : it's fixed in newest drivers, at last..
     
    Q: I have an nVidia XYZ card, and when I click on the GUI's diplay window to toggle displaying the GUI panel, a black square appears where I clicked. I have the newest driver.
    A: Yes, nvidia corrected a previous bug (above), and implemented a new one. Let's congratule them.
     
    Q: When I use the GUI with SDL video output, a second video window is created.
    A: Known, don't use SDL for GUI yet.
     
    5.5. Feature requests
     
    Q: Is there a hint on how to watch RealMedia movies in MPlayer?
    A: There's no way to do it. Therefore this format deserves 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.
     
    Q: When will be <your favourite video feature> (like subtitle placement) implemented?
    A: Wait for libvo2.
     
    Q: I want to play MP3 files with MPlayer !
    A: This feature is not planned. There are much better players (mpg123, 3pm, xmms) for this task, use them. BTW, MPlayer stands for Movie Player.
     
    Q: I'd like to seek +/- 1 frames, instead of 10 seconds.
    A: This won't be done. It was, but then it fucked up A/V sync. Feel free to implement it, and send a patch. Don't ask for it.
     
    Q: Where is the Windows version ?
    A: It's not released, and won't be. Look around the windows scene (opensource ASF parsers, opensource ASF encoders, etc) and you'll know why. We don't want to go to jail.
     
    Q: What card you may suggest me to buy?
    A0: It's for your opinion only but our issues are:
    A1: Speed:
    This parameter can be computed very easy:
    a) which movies do you plan to watch:
    - MPEG1: 320x200@32=256000
    so you need only 256*25fps=6.4Mb/sec bandwidth (This format can be played in real-time on any PC since P-100 + S3Virge)
    - MPEG4: 640x480@32=1228800
    you need videobandwidth 1.2*25fps=30Mb/sec To watch such movie in real-time you need enough power PC: (Celeron-450+DIMM based video card)
    - MPEG2 (aka DVD or SDTV): 1024x768@32=3145728
    you need videobandwidth 3*30fps=90Mb/sec In extremal cases (if your video card supports IDCT decoding) this can be played on the same PC as for MPEG4
    - HDTV (HighData TeleVision): 2000x2000@32=16000000
    i.e. videobandwidth = 16*30fps=480Mb/sec (This means also that you need at least 32Mb of video memory to watch this stream: 16Mb for RGB area and 16Mb for YUV area)
    b) Bandwidth of PCI slot is: 33Mhz*32bit=132Mb/sec And PCI2.1 has 66MHz*32bit=265Mb/sec that is far enough for any movie playback (except HDTV streams which really require AGP bus).
    c) What memory type should be installed on video card:
    SIMM - avoid that
    DIMM - good if your video card has 128-bit memory access.
    DDR - is far enough for all types.
    Note: By DGA comparision - there is no any visible difference between video cards which have installed the same type of video memory.
    Resume: If you have enough power CPU (Celeron-450 or K6-2-500) it would be enough to buy any video card which has at least 8Mb of DIMM or DDR memory.
    A2: Quality:
    This question was investigated in depth at:
    http://www.anadtech.com AnandTech - Video Card Roundup - DVD Quality, Features & Performance (October 2000)
    A3: WORKING features under Linux:
    If you are win32 user then probably you have support (from driver and DirectX8 side) for any feature which was introduced in your chip.
    But for linux users:
    Currently I know only several vendors which have more or less advanced support under Linux:
     
     
    Matrox
    ATI
    NVidia
    S4 Savage
    Driver's provider enthusiasts enthusiasts OEM + enthusiasts enthusiasts
    Driver's quality Best(X11,kernel) Best(X11,GATOS,kernel) Buggy(X11 only) Best(X11 only)
    VIDEO OVERLAY
    BES and YV2RGB YES YES YES YES
    scaling filters N/A YES N/A N/A
    adaptive deinterlace NO YES N/A N/A
    Video equalizer (hue, contrast, saturation, color correction) N/A PARTLY (under devel) N/A N/A
    Alpha blending, color and video keys PARTLY PARTLY (under devel) N/A N/A
    Video capture N/A YES(GATOS) N/A N/A
    TV-out YES YES N/A N/A

    Well - it's very rude observing of video card. Indeed we should pay our attention for models of video card:
    For example if MatroxG400(G450) drivers support TV-out then G550 has no such support.
    Other sample: Adaptive deinterlacing exists only since Rage128 chip and isn't present on Mach64+ ones. Same as 3D features are far different from Mach64 to Radeon2 8500 with trueform possibilities.

    ANYWAY - MPLAYER'S TEAM DOESN'T ACCEPT ANY CLAIMS IF YOU AFTER
    READING OF THIS MATERIAL WILL BUY CARD WHICH IS UNSUCCESSFUL FOR YOU!!!
    THIS MATERIAL IS ONLY OUR VISION.

    Q: If PCI slot is far enough for most types of movies then why S3 Virge
    is too slow for them?
    A: Due to its SIMM memory.

     
    5.6. Encoding
     
    Q: How can I encode ?
    A: Check this documentation.