The xine engine FAQ


Table of Contents
1. General questions about xine and this document
What is the xine engine?
What's the aim and scope of this text?
My question is not yet covered here - where can I ask for help?
What are those xine-lib, xine-ui, gxine, ... modules in cvs for?
Where and how do I get the latest development version?
Where can I find pre-compiled binaries, e.g. RPMs?
2. Building and installing xine from source
What do I need to compile everything properly?
How do I compile xine?
Simple build instructions for beginners
Complete build instructions
Making your own RPM packages (xine-lib, xine-ui)
Can I provide additional CFLAGS for compilation?
Are there binaries for my AMD K7 (Athlon (TM) ) available? Can I build them?
Build problems: xine engine (xine-lib)
The package doesn't compile at all!
The Xv video-out plugin fails to compile!
Build problems: frontend (gxine/xine-ui/...)
I have installed xine-lib but the frontend complains about not finding it!
Can I install xine in my home directory (without being root) ?
3. Playback of various stream types
DVD Playback with xine
How do I play back DVDs with xine?
DVD playback works, but it takes a long time until playback starts
I have problems setting up my RPC-2 drive for the right region!
Can I watch Video CDs (VCDs)? SVCDS ? CD-i?
Can I watch Quicktime (.mov, .mp4) files using xine?
Real Network files/streams
Can I watch Real (.rm, .ram) files using xine ?
What about (live) network streams (pnm://, rtsp:// style urls) ?
Can I watch Windows Media (.asf/.wmv) files using xine?
Can I watch Digital TV (Digital Video Broadcast) using xine ?
How do I play streams from STDIN?
How can I watch files with external AVI subtitles?
4. Running xine
I have a lot of dropped frames - what can I do?
I have problems when using xine on FreeBSD, Solaris, ... !
What is aalib? How do I use it in xine?
What do all these ~/.xine/config (~/.gxine/config) entries mean?
5. Audio related questions
What audio drivers does xine support? OSS? Alsa? Arts? Esd?
When I'm watching a movie, the sound effects are much higher volume than the voices
When I play this stream, xine shows video but there's no audio!
Can xine produce 4-/5-channel surround audio output?
What about ac3 output via spdif to an external ac3 decoder?
Changing the volume with the GUI control has no effect! What's up!?
Audio is stuttering and i see a lot of "metronom: fixing sound card drift by -2115 pts" on the console output
6. Video related questions
I can hear the audio - but I don't see a picture!
How can I make xine use the Xv extension and what drivers do I need?
Some parts of my X Desktop get transparent when xine plays the video!
The aspect ratio of the video is wrong!
What is the difference between discarded and skipped frames?
My xine is runing in black and white! / I only get a gray video output!
Which is the best video driver to use?
7. Error Messages: What they mean and what you can do
Starting xine fails with complains about audio drivers/devices!
"no video port found"
"Unable to open dvd drive (/dev/dvd)"
"demux error! 00 00 00 (should be 0x000001)"
"audio driver 'oss' failed, using null driver instead"
"video_out: throwing away image with pts xxx because it's too old"
"No video plugin available to decode 'xxxxxx'."
"w32codec: decoder failed to start. Is 'xxxxxx' installed?"
xine just crashed on me - i didn't get any error message

Chapter 1. General questions about xine and this document


My question is not yet covered here - where can I ask for help?

First of all be sure that your question is really not covered here and that you haven't just been a bit too lazy to read through all of this text. ;-). Also check out the xine HOWTO and documentation specific to the frontend (e.g. xine-ui or gxine or totem ).

That said - you are welcome to mail to our user mailing list: Please provide some info about your setup so people have a chance to help you, e.g. include information about your audio/video hardware and drivers you use, operating system, cpu type and some console output/any error messages. Also include command line parameters you have specified and information about the type of stream you're trying to play back. Also very important is the version of xine you're using and information about any additional plugins you may have installed on your system.


Chapter 2. Building and installing xine from source


Can I install xine in my home directory (without being root) ?

yes. first set up a subdir where you install your private software, eg

      $ mkdir ~/usr
    

then you have to set a few environment variables - it's probably a good idea to add this to your ~/.bashrc (or somewhere similar):

      export PATH="$HOME/usr/bin:$PATH"
      export LD_LIBRARY_PATH="$HOME/usr/lib:$LD_LIBRARY_PATH"
      export CFLAGS="-I$HOME/usr/include -L$HOME/usr/lib -O3"
      export ACLOCAL_FLAGS="-I $HOME/usr/share/aclocal"
    

now you can unpack tarballs e.g. in ~/usr/src (mkdir ~/usr/src if necessary) and do a

      $ ./configure --prefix=$HOME/usr
      $ make install
    

Chapter 3. Playback of various stream types

DVD Playback with xine

How do I play back DVDs with xine?

Newer xine (1.0.x) releases come with a full-featured DVD plugin that should be able to handle any unencrypted, non-locked DVD with full menu navigation support. No external plugins are required anymore here.

To get DVD playback working, first make sure you have a symlink /dev/dvd pointing to your DVD device on your system. For example, if your DVD drive is the master ide drive on the second IDE channel, /dev/dvd should point to /dev/hdc. Please note that if you are using the ide-scsi emulation on your system, it is likely that you dvd drive got mapped to a scsi device node even though it is an ide drive. In that case first check out you boot/kernel logs (or run cdrecord -scanbus ) to find out which device it got mapped to and set the symlink accordingly (should be something like /dev/scd0, /dev/scd1, ... in that case). Also make sure you (as a user) have sufficient (read) permissions on your dvd drive (this could mean you either have to change the device permissions or add your user to a special group (e.g. addgroup cdrom username), depending on your setup and/or distribution.

It is highly recommended to switch DMA mode on for your DVD drive (without it even very recent machines will have trouble producing smooth video output). Use a command like hdparm -d 1 device on your dvd device. Please note that even if you're using ide-scsi you will have to set the dma flag on the ide device node (e.g. /dev/hdc), not the mapped /dev/scd scsi device.

To be able to play back encrypted dvds you need to have libdvdcss installed on your system (please check if this is legal where you live).

Newer (post-2000) dvd drives (so-called RPC-2 drives) check the dvd region, which means they'll prevent you from playing back dvds that have a different region code from what the drive is set up for (most drives come with a factory setting of region 0 so they can only play back region 0 dvds and there are not many of those available). The easiest way to handle this is to use the regionset utility from http://www.linuxtv.org/download/dvd/dvd_disc_20000215.tar.gz.

Once you have everything set up, try something like gxine dvd:// or xine -p dvd:// to start dvd playback. Some frontend also offer so-called autoplay buttons or menu entries that start dvd playback immediately.

Important: do not try to mount the DVD. Just insert it and hit the DVD autoplay button or start xine from the command line.

If things do not work as expected, try running the xine-check shellscript that comes with libxine to see if this gives you further hints on what could be wrong.


I have problems setting up my RPC-2 drive for the right region!

You can download a tool to set the region code of RPC-Drives here: http://linuxtv.org/download/dvd/dvd_disc_20000215_css.tar.gz

Warning: Please be aware that the number of region code changes in RPC-2 drives is limited (usually about 5 times), after that your drive will stay locked to the region you last set it up for.


Real Network files/streams


Can I watch Windows Media (.asf/.wmv) files using xine?

While the container format (system layer) ASF (wmv is just an alias) is fully supported in xine, for newer windows media 8 and 9 based streams you'll need to install windows binary codecs (.DLLs).

Possibly the most convenient way to get the windows DLLs is to download them from the mplayer website http://www1.mplayerhq.hu/MPlayer/releases/codecs/. The package is called "Win32 Codecpack". Unpack it and move everything you find inside to /usr/lib/win32 (actually you can place them anywhere you want, e.g. someplace in your homedirectory, but then you'll have to set codec.win32_path in your xine config file accordingly). Restart xine then and you should be able to watch windows media streams.


Chapter 4. Running xine

I have a lot of dropped frames - what can I do?

Your hardware might be too slow for xine. Make sure you turn on all speed optimizing options. A few things you should check (in order of importance):


Chapter 5. Audio related questions


Chapter 6. Video related questions


How can I make xine use the Xv extension and what drivers do I need?

xine will normally use Xv by default if it is available. In some cases you might need to choose Xv playback manually (when the ~/.xine/config file for some reason says that you want to use XShm):
       xine -V Xv foo.mpg
      

If this doesn't work for you, it may be possible that Xv is not present on your system.

First you need to install/use XFree 4.x. Once you got that you have to make sure the XFree drivers you're using are supporting Xv on your hardware. Here are some hints for individual gfx chips:


Chapter 7. Error Messages: What they mean and what you can do


"audio driver 'oss' failed, using null driver instead"

First of all, make sure that your OSS Audio drivers are working (i.e. you can play music with other software). Maybe you're using alsa? If so, try gxine -A alsa to see if this helps.

The most common reason for oss not working is that some other program is accesing your audio device. If you're using linux, the command fuser /dev/dsp should give you the PID of the process.

If you are using GNOME, chances are that this is caused by ESD. Now you have two possibilities. Either deactivate ESD (temporarily) by right clicking on the sound monitor applet and selecting "Place Esound in standby" or just kill it. Then xine will use OSS audio output. The other method is to make xine use ESD for audio output with:
        gxine -A esd
      
This may result in worse playback - exact syncronization is not possible with esd, so using oss should be preferred.

If you are using KDE, there is the possibility that the aRts sound daemon is currently running and thus blocking your sound device. You can check that by starting the aRts control (in your KDE menu it should be under Multimedia). If it is running, you can either use the aRts audio output plugin:
        gxine -A arts
      
Or you suspend the aRts daemon by checking the appropriate option in your aRts control. (recommended)

Newer versions of arts have an auto-suspend mode - this can lead to some nondeterministic behaviour of xine if it is set up to use the audio device directly. Using arts is recommended in that case, however you will loose the ability to do four/five channel audio output.


xine just crashed on me - i didn't get any error message

OK, yes, that shouldn't happen and you're upset. We can understand that. But, to help you and of course to fix this, we need some information. So, let's go through the checklist and maybe prepare a nice bug report for the xine-user mailing list: