Sophie

Sophie

distrib > Mandriva > 2009.1 > x86_64 > media > contrib-release > by-pkgid > 351875e53f0121cbae77870227cb5eed > files > 7

oxine-0.7.1-6mdv2009.1.x86_64.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
                      "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title>oxine's documentation</title>
    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
    <style type="text/css">
    <!--
body {
    font-family: sans-serif;

    color: #000;
    background-color: #fff;

    width: 800px;
}

pre {
    margin: 0px 40px 10px 40px;
}

p {
    margin: 0px 40px 10px 40px;
    text-align: justify;
}

li {
    margin: 0px 40px 10px 40px;
    text-align: justify;
}

img {
    border: none;
}

h1 {
    font-size: 18px;
    font-weight: bold;
    font-variant: small-caps;

    background-color: #eee;

    padding: 5px;
    margin-top: 0px;

    border: solid 1px #ccc;
}

h2 {
    font-size: 16px;
    font-weight: bold;
    font-variant: small-caps;

    margin: 0px 0px 10px 0px;
}

a:link { 
    color:#333377; 
    text-decoration:none; 
}

a:visited { 
    color:#333377; 
    text-decoration:none; 
}

table.documentation {
    width: 720px;
    margin-left: 40px;
    margin-right: 40px;
    margin-bottom: 10px;
}

table.documentation p {
    margin: 0px 0px 10px 0px;
    text-align: justify;
}

table.documentation th {
    font-size: 14px;
    font-weight: bold;

    background-color: #eee;
    padding: 5px;
    border: solid 1px #ccc;

    text-align: left;
}

table.documentation td {
    padding: 5px;
    border: solid 1px #ccc;
    vertical-align: top;
}
    -->
    </style>
</head>
<body>

<a name="Contents" />
<h1>Contents
    <a href="#Contents" style="position: absolute; left: 760px">Top</a>
</h1>
<ol>
    <li><a href="#Dependencies">Dependencies</a></li>
    <li><a href="#Installation">Installation</a></li>
    <li><a href="#Usage">Usage</a></li>
    <li><a href="#Configuration">Configuration</a></li>
    <ul>
        <li><a href="#Configuration.Skins">Skins</a></li>
        <li><a href="#Configuration.Removable Media">Removable Media</a></li>
        <li><a href="#Configuration.Remote Control">Remote Control</a></li>
        <li><a href="#Configuration.Main Menu">Main Menu</a></li>
        <li><a href="#Configuration.Mediamarks">Mediamarks</a></li>
        <li><a href="#Configuration.Shutdown Dialog">Shutdown Dialog</a></li>
        <li><a href="#Configuration.Thumbnail Images">Thumbnail Images</a></li>
        <li><a href="#Configuration.Video Disc Recorder">Video Disc Recorder</a></li>
        <li><a href="#Configuration.Apple Airport Express">Apple Airport Express</a></li>
        <li><a href="#Configuration.Password protection">Password protection</a></li>
        <li><a href="#Configuration.Extractor">Extractor</a></li>
    </ul>
    <li><a href="#Controls">Controls</a></li>
    <ul>
        <li><a href="#Controls.Menu Navigation">Menu Navigation</a></li>
        <li><a href="#Controls.Direct Menu Access">Direct Menu Access</a></li>
        <li><a href="#Controls.Miscellaneous">Miscellaneous</a></li>
        <li><a href="#Controls.Playback Control">Playback Control</a></li>
        <li><a href="#Controls.Playlist">Playlist</a></li>
        <li><a href="#Controls.Images">Images</a></li>
        <li><a href="#Controls.DVD">DVD</a></li>
        <li><a href="#Controls.Television">Television</a></li>
        <li><a href="#Controls.Video Disc Recorder">Video Disc Recorder</a></li>
    </ul>
    <li><a href="#Problems">Problems</a></li>
</ol>

<a name="Dependencies" />
<h1>Dependencies
    <a href="#Contents" style="position: absolute; left: 760px">Top</a>
</h1>
<p>oxine depends on a number of external libraries to support it in some of
   the more complicated tasks it has to perform. Please make sure to install
   the following libraries before you start compiling oxine. 
</p>
<p>Libraries marked as mandatory must be installed. It is suggested that you
   also install libraries marked as optional to improve oxine's overall
   experience.
</p>
<p>Depending on the distribution you are using it may be necessary to not only
   install the library, but to also install the associated development
   packages. For Ubuntu this would mean that you would need to install
   <em>liblircclient0</em> and <em>liblircclient-dev</em>.
</p>
<table class="documentation">
    <tr>
        <th style="width: 20%">Library</th>
        <th style="width: 50%">Description</th>
        <th style="width: 10%">Status</th>
    </tr>
    <tr>
        <td><a href="http://www.x.org/">X.org</a></td>
        <td style="text-align:justify">You will need to install the X or X.org
            development files.
        </td>
        <td>mandatory</td>
    </tr>
    <tr>
        <td><a href="http://xinehq.de/">xine-lib</a></td>
        <td style="text-align:justify">This library provides the core
            functionality of oxine. Everything that has to do with video and
            audio playback depends on this piece of software.
        </td>
        <td>mandatory</td>
    </tr>
    <tr>
        <td><a href="http://www.gnu.org/software/gettext/">gettext</a></td>
        <td style="text-align:justify">This library is used to provide
            internationalization. Without it translating oxine to your
            favorite language cannot work.
        </td>
        <td>mandatory</td>
    </tr>
    <tr>
        <td><a href="http://www.lirc.org">LIRC</a></td>
        <td style="text-align:justify">This library is necessary if you wish
            to use a remote control with oxine.
        </td>
        <td>optional</td>
    </tr>
    <tr>
        <td><a href="http://developer.gnome.org/doc/API/2.0/gdk-pixbuf/">gdk-pixbuf</a></td>
        <td style="text-align:justify">
            <p>This library is necessary if you wish to display thumbnail
            or cover images.  Although it is also possible to use
            ImageMagick for this purpose the higher speed of gdk-pixbuf
            (around factor 10 compared to ImageMagick) makes it the better
            choice.</p>
            <p>Because gdk-puxbuf does not provide a method for reducing the
            number of colors in an image and because the OSD of xine-lib
            only support 256 colors oxine has to do the color reduction. 
            This leads to a slightly worse image-quality than when using
            ImageMagick.</p>
            <p>If image quality is important to you and the time needed to
            display an image is not relevant, please run</p>
            <pre style="margin: 10px 0 10px 0">./configure --disable-gdkpixbuf &lt;other options&gt;</pre>
        </td>
        <td>optional</td>
    </tr>
    <tr>
        <td><a href="http://www.imagemagick.org/">ImageMagick</a></td>
        <td style="text-align:justify">This library is necessary if you wish
            to display thumbnail or cover images and do not have gdk-pixbuf
            installed. If you wish to rotate images this library must be
            installed.
        </td>
        <td>optional</td>
    </tr>
    <tr>
        <td><a href="http://curl.haxx.se/libcurl/">libcurl</a></td>
        <td style="text-align:justify">This library is necessary if you wish
            to enable oxine to download files via a network. This is needed
            e.g. for shoutcast support.
        </td>
        <td>optional</td>
    </tr>
    <tr>
        <td><a href="http://www.gnu.org/software/libcdio/">libcdio</a></td>
        <td style="text-align:justify">This library is used to identify ISO
            image files. Without it oxine will not know what to do with these
            files as it cannot know if it's looking at a DVD image, a VCD
            image or something else.
        </td>
        <td>optional</td>
    </tr>
    <tr>
        <td><a href="http://www.gnu.org/software/libcdio/">libiso9660</a></td>
        <td style="text-align:justify">This library is actually a part of
            <a href="http://www.gnu.org/software/libcdio/">libcdio</a>. Some
            distributions (e.g.
            <a href="http://packages.debian.org/stable/source/libcdio">Debian</a>, 
            <a href="http://packages.ubuntulinux.org/dapper/source/libcdio">Ubuntu</a>)
            distribute it as a separate package.
        </td>
        <td>optional</td>
    </tr>
    <tr>
        <td><a href="http://limulus.net/mdsplib/">libmetar</a></td>
        <td style="text-align:justify">This library is necessary if you wish
            to use the weather functionality. If you wish to use the weather
            functionality you will also have to install libcurl.
        </td>
        <td>optional</td>
    </tr>
    <tr>
        <td><a href="http://wolfpack.twu.net/libjsw/">libjsw</a></td>
        <td style="text-align:justify">
            <p>This library is recommended if you wish to use a joystick to
            control oxine. It makes the job of reading input from the
            joystick much easier and gives better results than when using
            the raw joystick interface.</p>
            <div style="color: #ee3f3f;">
            <p>There is a bug in versions of libjsw&nbsp;&le;&nbsp;1.5.5
            that may cause oxine to crash if no joystick is attached. This
            bug has been fixed in 1.5.6 and may be fixed in earlier versions
            by some distributions (e.g. Ubuntu) as well. If oxine crashes
            when starting up please either disable libjsw by running</p>
            <pre style="margin: 10px 0 10px 0">./configure --without-jsw &lt;other options&gt;</pre>
            <p>or install version 1.5.6 of the library.</p>
            </div>
        </td>
        <td>optional</td>
    </tr>
    <tr>
        <td><a href="http://www.freedesktop.org/wiki/Software/hal">HAL</a><br />
            <a href="http://www.freedesktop.org/wiki/Software/dbus">DBUS</a><br />
            DBUS-GLib<br />
            <a href="http://www.gtk.org/">GLib</a><br />
        </td>
        <td style="text-align:justify">These libraries are used to provide
            support for automatically detecting when new media such as CDROMs,
            DVDs or external harddrives are inserted.
        </td>
        <td>optional</td>
    </tr>
    <tr>
        <td><a href="http://www.avahi.org/">libavahi-client</a></td>
        <td style="text-align:justify">Avahi is a system which facilitates
            service discovery on a local network. This means that you can plug
            your laptop or computer into a network and instantly be able to
            view other people who you can chat with, find printers to print to
            or find files being shared. oxine uses this library to find
            available Apple Airport Express in the local network.
        </td>
        <td>optional</td>
    </tr>
    <tr>
        <td><a href="http://libexif.sourceforge.net/">libexif</a></td>
        <td style="text-align:justify">The 
            <a href="http://en.wikipedia.org/wiki/Exchangeable_image_file_format">Exchangeable image file format</a>
            (EXIF) specifies a number of metadata tags for digital images.
            This library is used to read this metadata information from
            image files. oxine currently only displays the date and time an
            image was created but this could easily be changed to include
            more information.
        </td>
        <td>optional</td>
    </tr>
</table>
<p>Apart from the libraries oxine also depends on a number of command line programs.</p>
<table class="documentation">
    <tr>
        <th style="width: 20%">Program</th>
        <th style="width: 50%">Description</th>
        <th style="width: 10%">Status</th>
    </tr>
    <tr>
        <td>mount<br />
            umount<br />
        </td>
        <td style="text-align:justify">These tools are used by oxine to mount
            and unmount volumes. These tools are available on all linux base
            systems.</td>
        <td>mandatory</td>
    </tr>
    <tr>
        <td>pmount-hal<br />
            pumount<br />
        </td>
        <td style="text-align:justify">These tools are necessary if you want
            to mount and unmount volumes recognized by HAL. If these tools are
            available mount and umount will not be used.</td>
        <td>optional</td>
    </tr>
    <tr>
        <td>eject</td>
        <td style="text-align:justify">This tool is necessary if you wish to
            eject drives (e.g. CDROM-drives). If this tool is not available
            oxine will try to eject the drives using the ioctl command.</td>
        <td>optional</td>
    </tr>
    <tr>
        <td>cdparanoia</td>
        <td style="text-align:justify">This tool is necessary if you wish to
            extract audio CDs.</td>
        <td>optional</td>
    </tr>
    <tr>
        <td>flac<br />
            oggenc<br />
            lame<br />
        </td>
        <td style="text-align:justify">At least one of these tools is
            necessary to compress the extracted audio files. It is possible to
            choose what encoder to use in oxine's configuration menu.</td>
        <td>optional</td>
    </tr>
    <tr>
        <td>dd</td>
        <td style="text-align:justify">This is needed if you wish to create
            DVD and VCD images. This tool is available on most linux base
            systems.</td>
        <td>optional</td>
    </tr>
</table>


<a name="Installation" />
<h1>Installation 
    <a href="#Contents" style="position: absolute; left: 760px">Top</a>
</h1>
<p>The installation is quite straight forward. Make sure that you have
   installed the latest version of <a href="http://xinehq.de/">xine-lib</a>.
   At least version 1.0 is required. Then download and unpack oxine source
   tarball, change to the directory created and type</p>
<pre>
./configure --prefix=/some/path
make
make install
</pre>
<p>If you checked oxine out of SVN you must first create the configure script
   yourself. The tools autoconf and automake are needed for this to work. To
   run type</p>
<pre>
./autogen.sh --prefix=/some/path
make
make install
</pre>
<p>When building oxine a number of it's feature may be enabled or disabled.
   Most features are enabled by default. Only a small subset of features is
   not enabled by default. This is because these features (e.g. support for
   <a href="#Configuration.Video Disc Recorder">VDR</a> or 
   <a href="Configuration.Apple Airport Express">Apple Airport Express</a>)
   are only interesting to a few users.
</p>
<p>The following parameters may be used to configure oxine at build time. They
   may be passed to the scripts <em>configure</em> or <em>autogen.sh</em>:</p>
<pre>
./configure --help
    .
  --disable-hal           do not activate HAL support
  --disable-extractor     do not activate ripping support
  --disable-lirc          do not activate LIRC support
  --disable-joystick      do not activate joystick support
  --disable-weather       do not activate weather support
  --disable-shoutcast     do not activate shoutcast support
    .
  --enable-vdr            enable support for Video Disc Recorder (VDR)
  --enable-aex            enable support for Apple Airport Express (AEX)
  --enable-debug          enable support for debugging
    .
  --without-curl          Turn off CURL support.
  --without-imagemagick   Turn off ImageMagick support.
  --without-jsw           Turn off libjsw support.
</pre>
<p>Users who want to help debug oxine should add <em>--enable-debug</em> to
   the options they pass to <em>configure</em> or <em>autogen.sh</em>. This
   enables debug messages that often make it easier to find out what goes
   wrong.</p>

<a name="Usage" />
<h1>Usage
    <a href="#Contents" style="position: absolute; left: 760px">Top</a>
</h1>
<p>There exist a number of command line options oxine accepts. These can be
   used to change the standard behaviour of oxine (e.g. what configuration
   file or what log file to use).</p>
<p>It is also possible to deactivate certain features that were enabled at
   build time but are not needed by the user.</p>
<p>The following command line options are known to oxine:</p>
<pre>
Usage: oxine [OPTIONS] [MRL]

OPTIONS are:
  -c, --config &lt;filename&gt;      Use non-standard configuration file.
  -v, --version                Display version.
      --verbose=&lt;level&gt;        Set verbosity level. Default is 0.
  -l, --logfile &lt;filename&gt;     Set the log filename.
  -V, --video-driver &lt;drv&gt;     Select video driver by ID.
                               Available drivers:
                               auto xv xshm sdl
  -A, --audio-driver &lt;drv&gt;     Select audio driver by ID.
                               Available drivers:
                               alsa esd file none
  -X, --xineramascreen=&lt;num&gt;   Sets the screen on which the fullscreen window                               
                               will be shown.
  -F, --no-fullscreen          Do no start in fullscreen mode.
  -L, --no-lirc                Do not use remote control (LIRC).
  -J, --no-joystick            Do not use joystick support.
  -W, --no-weather             Do not automaticaly retrieve weather information.
  -H, --no-hal-dbus            Do not use HAL/ DBUS to monitor removable drives.
</pre>
<p>Depending on how you configured oxine at build time some of the above
   options may not be available. If you for example configured oxine without
   weather support the command line option <em>--no-weather</em> will not be
   available.</p>

<a name="Configuration" />
<h1>Configuration
    <a href="#Contents" style="position: absolute; left: 760px">Top</a>
</h1>
<p>There are two location where oxine keeps it's configuration files. One is
   in $PREFIX/share/oxine/ ($PREFIX is the installation prefix where you
   installed oxine. This will usually be /usr/ or /usr/local/) and the other
   is $HOME/.oxine/ ($HOME is your home directory).
</p>
<p>Especially the file $HOME/.oxine/config is important. This is where all
   configuration values are saved by oxine. This file will be created the
   first time you run oxine.
</p>
<p>oxine's configuration can be changed by editing the configuration file
   directly or by selecting "Edit Settings" from the oxine main menu.
</p>
<p>The following sections describe various issues that need to be addressed
   before oxine is fully functional.
</p>
<p>Please read the ChangeLog when updating oxine. As the program is still
   alpha configuration and feature may change between releases.
</p>

<a name="Configuration.Skins" />
<h2>Skins</h2>
<p>oxine comes with one standard skin. This skin (<em>oxinetic</em>) is in
   english and for 4:3 monitors only.
</p>
<p>Skins in your favorite language and skins for 16:9 monitors can be
   downloaded from the oxine subversion repository by running</p>
</p>
<pre>
svn co https://oxine.svn.sourceforge.net/svnroot/oxine/trunk/oxine-skins
</pre>
<p>The skins in that directory can be installed by running</p>
<pre>
./install.sh &lt;skinname&gt;
</pre>
<p>If a skin is missing in your favorite language or resolution please file a
   <a href="http://sourceforge.net/tracker/?group_id=72768&atid=535639">support request</a>
   telling us what language and resolution (4:3 or 16:9) you need.
</p>
<p>Once you've installed other skins the skin to use can be selected via the
   'User Interface' section of the configuration menu or by changing the
   following configuration key:
</p>
<pre>
# Skin to use
# { oxinetic  default  oxinetic-de  oxinetic-de-hdtv }, default: 1
#gui.skin:default
</pre>

<a name="Configuration.Removable Media" />
<h2>Removable Media</h2>
<p>If you wish to use a CDROM or DVD drive please make sure the correct
   devices are set in the configuration file. The following configuration keys
   are relevant:
</p>
<pre>
# device used for DVD playback
# string, default: /dev/dvd
#media.dvd.device:/dev/dvd

# device used for CD audio
# string, default: /dev/cdrom
#media.audio_cd.device:/dev/cdrom

# CD-ROM drive used for VCD when none given
# string, default:
#media.vcd.device:/dev/cdrom
</pre>

<a name="Configuration.Remote Control" />
<h2>Remote Control</h2>
<p>To control oxine with a remote control the library
   <a href="http://www.lirc.org/">LIRC</a> must be installed and correctly
   configured.
</p>
<p>The names of the oxine LIRC commands were choosen to be descriptive
   rather than to fit to a specific remote control. This means that nearly
   all remote controls will not work out of the box.
</p>
<p>There are two options to fix this:</p>

<ul>
<li>either you change the entries in the
   systemwide LIRC configuration file /etc/lirc/lircd.conf to fit the names
   of the oxine LIRC commands (see $PREFIX/share/oxine/lircrc) </li>
<li>or you copy
   the the file $PREFIX/share/oxine/lircrc to $HOME/.oxine/lircrc and modify
   that so the names of the commands fit the entries in the file
   /etc/lirc/lircd.conf.</li>
</ul>

<p>What you should not do is modify $PREFIX/share/oxine/lircrc directly, as
   this will be overwritten whenever oxine is reinstalled.
</p>
<p>If you use <a href="http://www.lirc.org/">LIRC</a>, make sure that you
   don't have the <em>irxevent</em> daemon running. Otherwise oxine may get
   all LIRC events twice which is quite annoying.
</p>

<a name="Configuration.Main Menu" />
<h2>Main Menu</h2>
<p>Starting with version 0.6 it is possible to configure oxine's main menu.</p>
<p>The default menu file is located in $PREFIX/share/oxine/mainmenu.xml. This
   file should not be changed as it will be overwritten whenever oxine is
   reinstalled. Instead you should copy this file to $HOME/.oxine/mainmenu.xml
   and modify it there. The file must follow the syntax as described in
   $PREFIX/share/oxine/DTD/menu.dtd</p>
<p>The default menu file contains a complete set of permitted parameters and
   some examples.</p>

<a name="Configuration.Mediamarks" />
<h2>Mediamarks</h2>
<p>When selecting "Listen to Music" or "Watch Films" the user enters the file
   selection dialogs. The main difference between the two is what files are
   displayed. When selecting "Listen to Music" only audio files are displayed
   while selecting "Watch Films" will only display video files.
</p>
<p>To customize the entries the user sees when first entering these dialogs
   two mediamarks files may be created in $HOME/.oxine/ called:
</p>
<pre>
mediamarks_music.xml
mediamarks_video.xml
</pre>
<p>For an example of how these files might look please have a look at
   $PREFIX/share/oxine/mediamarks_example.xml. These files must follow the
   syntax defined in $PREFIX/share/oxine/DTD/mediamarks.dtd.
</p>

<a name="Configuration.Shutdown Dialog" />
<h2>Shutdown Dialog</h2>
<p>When pressing the "Shutdown" button in the main menu oxine displays a
   dialog asking the user what he wishes to do. If the user specifies the
   necessary commands
</p>
<pre>
# shell command (reboot)
# string, default: /sbin/reboot
#shutdown.reboot_command:/sbin/reboot

# shell command (power off)
# string, default: /sbin/poweroff
#shutdown.shutdown_command:/sbin/poweroff

# shell command (standby)
# string, default:
#shutdown.standby_command:
</pre>
<p>in the configuration file, the user can also choose to shutdown or reboot
   the computer or to switch the computer to standby mode.
</p>
<p>If the configuration key</p>
<pre>
# ask before leaving oxine
# bool, default: 1
#shutdown.ask:1
</pre>
<p>is set to 0 this dialog will not be displayed.</p>

<a name="Configuration.Thumbnail Images" />
<h2>Thumbnail Images</h2>
<p>There are three ways to make oxine display thumbnail images in the filelist
and the playback menu:</p>
<ol>
    <li>If you place an image in a directory oxine will show that image
    whenever that directory is opened in the filelist menu or a file from that
    directory is being played in the playback menu. The image may have any
    name. If a file called title.jpg, title.png or title.gif exists oxine will
    display that.</li>
    <li>You may also add a thumbnail link to an entry in a mediamarks file:
<pre style="margin-top: 10px; margin-left: 0px">
&lt;entry&gt;
    &lt;mrl href="dvd:/home/public/lotr.iso" /&gt;
    &lt;title&gt;[Lord Of The Rings (ISO)]&lt;/title&gt;
    &lt;thumbnail href="/home/public/lotr.png" /&gt;
&lt;/entry&gt;
</pre>
    </li>
    <li>You may add a '.directory' file to a directory that contains an entry
    'Icon':
<pre style="margin-top: 10px; margin-left: 0px">
[Desktop Entry]
Version=1.0
Icon=/home/public/lotr.png
</pre>
    </li>
</ol>
<p>For thumbnails to work you must have
<a href="http://www.imagemagick.org/">ImageMagick</a>
installed on your computer.</p>

<a name="Configuration.Video Disc Recorder" />
<h2>Video Disc Recorder</h2>
<p>Starting with version 0.6 oxine can be used with 
   <a href="http://www.cadsoft.de/vdr">Klaus Schmidinger's Video Disc Recorder</a> 
   via the 
   <a href="http://www.vdr-wiki.de/wiki/index.php/Xine-plugin">vdr-plugin-xine</a>.
</p>
<p>Support for VDR is not enabled by default. To enable it you must run</p>
<pre>./configure --enable-vdr &lt;other options&gt;</pre>
<p>As soon as you've got VDR and vdr-plugin-xine up and running, oxine
   should work with it without any further problems. To use VDR please change
   the configuration key</p>
<pre>
# type of television
# { Analogue Television  Digital Television  Video Disc Recorder }, default: 1
television.type:Video Disc Recorder
</pre>
<p>to '<em>Video Disc Recorder</em>'.</p>

<a name="Configuration.Apple Airport Express" />
<h2>Apple Airport Express</h2>
<p>Using the xine-lib audio output plugin for the Apple Airport Express which
   can be downloaded from the oxine subversion repository by running</p>
<pre>
svn co https://oxine.svn.sourceforge.net/svnroot/oxine/trunk/xine-aex
</pre>
<p>it is possible to output audio on any Apple Airport Express available on
   the local network.</p>
<p>If you have the AVAHI client library installed (see above) oxine will
   automatically find any available Apple Airport Express and make them
   available in the settings menu.
</p>
<p>At the moment it is only possible to output audio via one Apple Airport
   Express or via the normal sound card.
</p>

<a name="Configuration.Password protection" />
<h2>Password protection</h2>
<p>Directories on local discs can be password protected by placing a file
   <em>.password</em> inside that directory.</p>
<p>The <em>.password</em> file must contain exactly one password. The
   password may be in clear text or (as in /etc/shadow/) encrypted.</p>
<p style="color: red">Due to some limitations of oxine's widget toolset the
   directory is not entered at once after providing the password. The user
   must double click on the directory again to enter.</p>
<p>Please note, that this does not protect the directory in any
   <em>meaningful</em> way. Anyone with direct access to the filesystem will
   not care at all about the <em>.password</em> file. This is only good
   enough to keep kids (depending on the kids) out of some directories.</p>

<a name="Configuration.Extractor" />
<h2>Audio CD extractor</h2>
<p>The audio CD extractor support three different output format:</p>
<ol>
    <li>Lossless (FLAC)</li>
    <li>Lossy (OGG)</li>
    <li>Lossy (MP3)</li>
</ol>
<p>By setting the following configuration keys it is possible to pass extra
   parameters to the programs doing the actual encoding:</p>
<pre>
# FLAC encoder (flac) parameters
# string, default: 
#extractor.cdda.encoder.flac.parameters:

# MP3 encoder (lame) parameters
# string, default: 
#extractor.cdda.encoder.mp3.parameters:

# OGG encoder (oggenc) parameters
# string, default: 
#extractor.cdda.encoder.ogg.parameters:
</pre>
<p>Another configuration key does the same thing for the program doing the
   ripping (cdparanoia):</p>
<pre>
# CD extractor (cdparanoia) parameters
# string, default: 
#extractor.cdda.parameters:
</pre>
<p>If for example you want the FLAC encoder (flac) to use the higest level
   of compression you might want to set:</p>
<pre>
# FLAC encoder (flac) parameters
# string, default: 
extractor.cdda.encoder.flac.parameters:--compression-level-8
</pre>

<h2>DVD and video CD extractor</h2>
<p>By default the command <em>dd</em> is used to copy complete images of
   DVD's and video CD's to disc. As this may not work for all discs other
   programs can be specified by changing the following configuration
   keys:</p>
<pre>
# DVD extractor command
# string, default: /bin/dd if=%s of=%s
#extractor.dvd.command:/bin/dd if=%s of=%s

# VCD extractor command
# string, default: /bin/dd if=%s of=%s
#extractor.vcd.command:/bin/dd if=%s of=%s
</pre>
<p>If for example you wish to use mplayer to extract DVD's you might want to
   set:</p>
<pre>
# DVD extractor command
# string, default: /bin/dd if=%s of=%s
extractor.dvd.command:mplayer dvd:// -dvd-device %s -dumpstream -dumpfile %s
</pre>
<p>The first <em>%s</em> of the commands is replaced with the device name
   (e.g. /dev/dvd). The second <em>%s</em> is replaced with the output
   filename. Please note, that it is not possible to change the order of
   device name and filename in the command.</p>

<a name="Controls" />
<h1>Controls
    <a href="#Contents" style="position: absolute; left: 760px">Top</a>
</h1>
<p>oxine can be controlled using a keyboard, a mouse or a remote control
   (using <a href="http://www.lirc.org/">LIRC</a>).</p>
<p>The names of the LIRC commands were choosen to be descriptive rather than
   to fit to a specific remote control. On most systems it will be necessary
   to change these names to the command names of the remote control used (see 
   <a href="#Configuration.Remote Control">remote control</a>).
</p>

<a name="Controls.Menu Navigation" />
<h2>Menu Navigation</h2>
<table class="documentation">
    <tr>
        <th style="width: 40%">Action</th>
        <th style="width: 20%">Keyboard</th>
        <th style="width: 20%">Remote control</th>
    </tr>
    <tr>
        <td>show/ hide onscreen display</td>
        <td>o</td>
        <td>show_osd</td>
    </tr>
    <tr>
        <td>navigate the menus</td>
        <td>arrow keys</td>
        <td>up, down, left, right</td>
    </tr>
    <tr>
        <td>next widget</td>
        <td>Tab</td>
        <td>next_widget</td>
    </tr>
    <tr>
        <td>previous widget</td>
        <td>Shift-Tab</td>
        <td>prev_widget</td>
    </tr>
    <tr>
        <td>(de)select items in a list</td>
        <td>Space</td>
        <td>select</td>
    </tr>
    <tr>
        <td>activate items or buttons</td>
        <td>Enter</td>
        <td>activate</td>
    </tr>
    <tr>
        <td>go back/ up one level</td>
        <td>Esc, Backspace</td>
        <td>back</td>
    </tr>
</table>

<a name="Controls.Direct Menu Access" />
<h2>Direct Menu Access</h2>
<table class="documentation">
    <tr>
        <th style="width: 40%">Action</th>
        <th style="width: 20%">Keyboard</th>
        <th style="width: 20%">Remote control</th>
    </tr>
    <tr>
        <td>show the help menu</td>
        <td>F1</td>
        <td>menu_help</td>
    </tr>
    <tr>
        <td>show the settings menu</td>
        <td>F2</td>
        <td>menu_settings</td>
    </tr>
    <tr>
        <td>show the playback menu</td>
        <td>F3</td>
        <td>menu_playback</td>
    </tr>
    <tr>
        <td>start television playback</td>
        <td>F4</td>
        <td>television</td>
    </tr>
    <tr>
        <td>show the main menu</td>
        <td>F5</td>
        <td>menu_main</td>
    </tr>
    <tr>
        <td>show the music menu</td>
        <td>F6</td>
        <td>menu_music</td>
    </tr>
    <tr>
        <td>show the video menu</td>
        <td>F7</td>
        <td>menu_video</td>
    </tr>
    <tr>
        <td>show the image menu</td>
        <td>F8</td>
        <td>menu_image</td>
    </tr>
    <tr>
        <td>show the playlist menu</td>
        <td>F9</td>
        <td>menu_playlist</td>
    </tr>
    <tr>
        <td>show the weather menu</td>
        <td>F10</td>
        <td>menu_weather</td>
    </tr>
</table>

<a name="Controls.Miscellaneous" />
<h2>Miscellaneous</h2>
<table class="documentation">
    <tr>
        <th style="width: 40%">Action</th>
        <th style="width: 20%">Keyboard</th>
        <th style="width: 20%">Remote control</th>
    </tr>
    <tr>
        <td>leave the program</td>
        <td>Ctrl + q</td>
        <td>quit</td>
    </tr>
    <tr>
        <td>leave the program (with shutdown dialog)</td>
        <td>q</td>
        <td>shutdown</td>
    </tr>
    <tr>
        <td>save configuration/ playlist</td>
        <td>Ctrl + s</td>
        <td>save</td>
    </tr>
    <tr>
        <td>toggle fullscreen mode</td>
        <td>f</td>
        <td>toggle_fullscreen</td>
    </tr>
</table>

<a name="Controls.Playback Control" />
<h2>Playback Control</h2>
<table class="documentation">
    <tr>
        <th style="width: 40%">Action</th>
        <th style="width: 20%">Keyboard</th>
        <th style="width: 20%">Remote control</th>
    </tr>
    <tr>
        <td>stop</td>
        <td>s</td>
        <td>stop</td>
    </tr>
    <tr>
        <td>eject</td>
        <td>e</td>
        <td>eject</td>
    </tr>
    <tr>
        <td>adjust speed</td>
        <td>Ctrl +<br />arrow up/ down</td>
        <td>speed [+/-]</td>
    </tr>
    <tr>
        <td>fast forward/ rewind</td>
        <td>Ctrl + <br />arrow right/ left</td>
        <td>fast_forward/<br />fast_rewind</td>
    </tr>
    <tr>
        <td>seek in stream</td>
        <td>Ctrl + Alt +<br />arrow right/ left</td>
        <td>skip [+/-]</td>
    </tr>
    <tr>
        <td>adjust volume</td>
        <td>v / V, + / -</td>
        <td>volume [+/-]</td>
    </tr>
    <tr>
        <td>toggle mute/ unmute</td>
        <td>m</td>
        <td>toggle_mute</td>
    </tr>
    <tr>
        <td>toggle pause/ play</td>
        <td>Space</td>
        <td>toggle_pause_play</td>
    </tr>
    <tr>
        <td>toggle playmode</td>
        <td>M</td>
        <td>toggle_playmode</td>
    </tr>
    <tr>
        <td>toggle aspect ratio</td>
        <td>a</td>
        <td>toggle_aspect_ratio</td>
    </tr>
    <tr>
        <td>toggle deinterlace</td>
        <td>i</td>
        <td>toggle_deinterlace</td>
    </tr>
    <tr>
        <td>change audio channel</td>
        <td>x / X</td>
        <td>audio_channel [+/-]</td>
    </tr>
    <tr>
        <td>adjust audio offset</td>
        <td>c / C</td>
        <td>audio_offset [+/-]</td>
    </tr>
    <tr>
        <td>change subtitle channel</td>
        <td>r / R</td>
        <td>spu_channel [+/-]</td>
    </tr>
    <tr>
        <td>adjust subtitle offset</td>
        <td>t / T</td>
        <td>spu_offset [+/-]</td>
    </tr>
    <tr>
        <td>adjust zoom factor</td>
        <td>Z / z</td>
        <td>zoom [+/-]</td>
    </tr>
    <tr>
        <td>adjust x-zoom factor</td>
        <td>Ctrl + Z / z</td>
        <td>zoom_x [+/-]</td>
    </tr>
    <tr>
        <td>adjust y-zoom factor</td>
        <td>Alt + Z / z</td>
        <td>zoom_y [+/-]</td>
    </tr>
    <tr>
        <td>reset zoom factor</td>
        <td>Ctrl + Alt + Z / z</td>
        <td>zoom_reset</td>
    </tr>
</table>

<a name="Controls.Playlist" />
<h2>Playlist</h2>
<table class="documentation">
    <tr>
        <th style="width: 40%">Action</th>
        <th style="width: 20%">Keyboard</th>
        <th style="width: 20%">Remote control</th>
    </tr>
    <tr>
        <td>previous entry</td>
        <td>Ctrl + page up</td>
        <td>prev</td>
    </tr>
    <tr>
        <td>next entry</td>
        <td>Ctrl + page down</td>
        <td>next</td>
    </tr>
</table>

<a name="Controls.Images" />
<h2>Images</h2>
<table class="documentation">
    <tr>
        <th style="width: 40%">Action</th>
        <th style="width: 20%">Keyboard</th>
        <th style="width: 20%">Remote control</th>
    </tr>
    <tr>
        <td>previous image</td>
        <td>Ctrl + page up</td>
        <td>prev</td>
    </tr>
    <tr>
        <td>next image</td>
        <td>Ctrl + page down</td>
        <td>next</td>
    </tr>
    <tr>
        <td>rotate clockwise</td>
        <td>Ctrl + r</td>
        <td>rotate_right</td>
    </tr>
    <tr>
        <td>rotate clockwise</td>
        <td>Ctrl + F5</td>
        <td>red</td>
    </tr>
    <tr>
        <td>rotate counter-clockwise</td>
        <td>Ctrl + l</td>
        <td>rotate_left</td>
    </tr>
    <tr>
        <td>rotate counter-clockwise</td>
        <td>Ctrl + F8</td>
        <td>blue</td>
    </tr>
</table>

<a name="Controls.DVD" />
<h2>DVD</h2>
<table class="documentation">
    <tr>
        <th style="width: 40%">Action</th>
        <th style="width: 20%">Keyboard</th>
        <th style="width: 20%">Remote control</th>
    </tr>
    <tr>
        <td>previous chapter</td>
        <td>Ctrl + page up</td>
        <td>prev</td>
    </tr>
    <tr>
        <td>next chapter</td>
        <td>Ctrl + page down</td>
        <td>next</td>
    </tr>
    <tr>
        <td>escape from the menu</td>
        <td>Ctrl + F1</td>
        <td>menu1</td>
    </tr>
    <tr>
        <td>go to the title menu</td>
        <td>Ctrl + F2</td>
        <td>menu2</td>
    </tr>
    <tr>
        <td>go to the root menu</td>
        <td>Ctrl + F3</td>
        <td>menu3</td>
    </tr>
    <tr>
        <td>go to the subtitle menu</td>
        <td>Ctrl + F4</td>
        <td>menu4</td>
    </tr>
    <tr>
        <td>go to the audio menu</td>
        <td>Ctrl + F5</td>
        <td>menu5</td>
    </tr>
    <tr>
        <td>go to the angle menu</td>
        <td>Ctrl + F6</td>
        <td>menu6</td>
    </tr>
    <tr>
        <td>go to the chapter menu</td>
        <td>Ctrl + F7</td>
        <td>menu7</td>
    </tr>
</table>

<a name="Controls.Television" />
<h2>Television</h2>
<table class="documentation">
    <tr>
        <th style="width: 40%">Action</th>
        <th style="width: 20%">Keyboard</th>
        <th style="width: 20%">Remote control</th>
    </tr>
    <tr>
        <td>previous channel</td>
        <td>Ctrl + page up</td>
        <td>prev</td>
    </tr>
    <tr>
        <td>next channel</td>
        <td>Ctrl + page down</td>
        <td>next</td>
    </tr>
</table>

<a name="Controls.Video Disc Recorder" />
<h2>Video Disc Recorder</h2>
<table class="documentation">
    <tr>
        <th style="width: 40%">Action</th>
        <th style="width: 20%">Keyboard</th>
        <th style="width: 20%">Remote control</th>
    </tr>
    <tr>
        <td>previous channel</td>
        <td>Ctrl + page up</td>
        <td>prev</td>
    </tr>
    <tr>
        <td>next channel</td>
        <td>Ctrl + page down</td>
        <td>next</td>
    </tr>
    <tr>
        <td>show main menu</td>
        <td>Ctrl + F1</td>
        <td>menu1</td>
    </tr>
    <tr>
        <td>show channel menu</td>
        <td>Ctrl + F2</td>
        <td>menu2</td>
    </tr>
    <tr>
        <td>show schedule menu</td>
        <td>Ctrl + F3</td>
        <td>menu3</td>
    </tr>
    <tr>
        <td>show recordings menu</td>
        <td>Ctrl + F4</td>
        <td>menu4</td>
    </tr>
    <tr>
        <td>depends on the location (see OSD)</td>
        <td>Ctrl + F5</td>
        <td>red</td>
    </tr>
    <tr>
        <td>depends on the location (see OSD)</td>
        <td>Ctrl + F6</td>
        <td>green</td>
    </tr>
    <tr>
        <td>depends on the location (see OSD)</td>
        <td>Ctrl + F7</td>
        <td>yellow</td>
    </tr>
    <tr>
        <td>depends on the location (see OSD)</td>
        <td>Ctrl + F8</td>
        <td>blue</td>
    </tr>
</table>

<a name="Problems" />
<h1>Problems
    <a href="#Contents" style="position: absolute; left: 760px">Top</a>
</h1>
<p>
    If you have trouble doing something with oxine please try to do the same
    thing with <a href="http://xinehq.de">xine</a> before reporting it as a
    bug. If it doesn't work in xine it will normally not work in oxine. This
    is not true the other way around as many things implemented in xine have
    not been added to oxine yet.
</p>
<p>
    If you do find a bug please report it to the
    <a href="http://sourceforge.net/tracker/?group_id=72768&atid=535638">bug tracker</a>,
    send a mail to the
    <a href="http://sf.net/mail/?group_id=72768">oxine-devel</a>
    mailing list or directly to one of the developers. Good patches are
    very welcome.
</p>

<p style="font-size: 12px; font-style: italic; text-align: center">
    (c) 2005 by <a href="http://oxine.sf.net">the oxine project</a> - $Id: README.html 2669 2007-08-23 07:54:04Z mschwerin $
</p>
</body>
</html>