Oxine

:!: Article archivé, dernière mise à jour 2007.

Oxine est un OSD (On Screen Display) pour xine. Il permet notamment de regarder des DVD, Divx et écouter des MP3 en contrôlant Xine sur une TV. Il supporte aussi Lirc pour gérer les télécommandes.

Installation

Oxine est pour l'instant en phase de développement important. (Il existe désormais un package sous Debian)

Les étapes ci-dessous décrivent l'installation à partir du répository Subversion.

Pré-requis

Sous Debian, il est nécessaire d'avoir les paquets suivants pour réaliser la compilation :

  • g++
  • subversion
  • cvs
  • automake1.9
  • gettext
  • libxine-dev
  • libx11-dev
  • pkg-config
  • libcdio-dev
  • libiso9660-dev

Pour la mise à jour sur le net :

  • libcurl3-dev

Pour la télécommande :

  • liblircclient-dev

Pour les images :

  • mjpegtools
  • imagemagick
  • netpbm

Récupération des sources

Dans notre exemples, les sources seront dans ~/svn_oxine

> cd ~
> mkdir svn_oxine
> cd svn_oxine
> svn co https://oxine.svn.sourceforge.net/svnroot/oxine/trunk/oxine
A    oxine/m4
A    oxine/m4/polling.m4
A    oxine/m4/xinerama.m4
A    oxine/m4/curl.m4
A    oxine/m4/debug.m4
A    oxine/m4/pthread.m4
...

Compilation

Pour installer dans le répertoire /usr/local/oxine

> cd ~/svn_oxine/oxine
> ./autogen.sh --prefix=/usr/local/oxine
> make
> make install

Mise à jour

Si vous souhaitez mettre à jour le code d'oxine, il suffit d'utiliser la commande suivante :

> cd ~/svn_oxine/oxine
> svn up

Puis recompiler :

> cd ~/svn_oxine/oxine
> ./autogen.sh --prefix=/usr/local/oxine
> make clean
> make
> make install

Configuration

xine-lib

Oxine utilise un fichier de configuration identique à xine. Celui-ci se trouve dans ~/.oxine/config

Il est possible de copier celui de xine (~/.xine/config) à la place. A noter que les paramètres sont également disponibles depuis l'OSD.

Par exemple, pour modifier le périphérique audio utilisé, j'utilise les paramètres suivants :

# pilote audio à utiliser
# string, default: auto
#audio.driver:auto
audio.driver:alsa

# périphérique utilisé pour la sortie mono
# string, default: default
#audio.device.alsa_default_device:default
audio.device.alsa_default_device:numerique

# périphérique utilisé pour la sortie stéréo
# string, default: plug:front:default
#audio.device.alsa_front_device:default
audio.device.alsa_front_device:numerique

# périphérique utilisé pour la sortie 5.1 canaux
# string, default: iec958:AES0=0x6,AES1=0x82,AES2=0x0,AES3=0x2
#audio.device.alsa_passthrough_device:iec958:AES0=0x6,AES1=0x82,AES2=0x0,AES3=0x2
audio.device.alsa_passthrough_device:numerique

# périphérique utilisé pour la sortie 4 canaux
# string, default: plug:surround40:0
#audio.device.alsa_surround40_device:plug:surround40:0
audio.device.alsa_surround40_device:numerique

# périphérique utilisé pour la sortie 5.1 canaux
# string, default: plug:surround51:0
#audio.device.alsa_surround51_device:plug:surround51:0
audio.device.alsa_surround51_device:numerique

# speaker arrangement
# { Mono 1.0  Stereo 2.0  Headphones 2.0  Stereo 2.1  Surround 3.0  Surround 4.0  Surround 4.1  Surround 5.0  Surround 5.1  Surround 6.0  Surround 6.1  Surround 7.1  Pass Through }, default: 1
#audio.output.speaker_arrangement:Stereo 2.0
audio.output.speaker_arrangement:Pass Through

Pour plus d'information sur la configuration de Alsa, voir ALSA (Advanced Linux Sound Architecture).

lirc

Pour l'installation de Lirc, voir Lirc (Linux Infrared Remote Control).

Copier fichier exemple et modifiez le pour correspondre à votre télécommande :

> cp /usr/local/oxine/share/oxine/lircrc ~/.oxine/

Exemple de fichier pour la télécommande Pinnacle :

Action des boutons :

  • up : boutton play
  • down : boutton stop
  • left : boutton volume -
  • right : boutton volume +
  • back : boutton mute
  • activate : bouton on/off
  • prev : 1
  • select : 2
  • next : 3
  • rewind : 4
  • pplay : 5
  • fforward : 6
  • speeddown : 7
  • stop : 8
  • speedup : 9
  • audio_channel_logical+ : bouton i
  • audio_channel_logical- : bouton ch
  • spu_channel+ : bouton 0
  • spu_channel- : bouton Rec.
  • toggle_aspect_ratio : bouton plein écran
  • toggle_deinterlace : bouton prev.
  • eject : bouton TV
  • Menu : bouton Teletext
  • Arret : bouton Radio

Inutilisés :

  • volmute ⇒ chaine
  • volup ⇒ chaine
  • voldown ⇒ chaine
  • hue +500 ⇒ menu
  • hue -500 ⇒ menu
  • saturation +500 ⇒ menu
  • saturation -500 ⇒ menu
  • brightness +500 ⇒ menu
  • brightness -500 ⇒ menu
  • contrast +500 ⇒ menu
  • contrast -500 ⇒ menu
  • spu_offset+ ⇒ menu
  • spu_offset- ⇒ menu
  • av_offset+ ⇒ menu
  • av_offset- ⇒ menu

Exemple de fichier lircrc complet :

begin
    prog   = oxine
    button = Chan+Play
    config = UP
    repeat = 1
end
begin
    prog   = oxine
    button = Chan-Stop
    config = DOWN
    repeat = 1
end
begin
    prog   = oxine
    button = Vol-Rew
    config = LEFT
    repeat = 1
end
begin
    prog   = oxine
    button = Vol+FF
    config = RIGHT
    repeat = 1
end
begin
    prog   = oxine
    button = SELECT
    config = SELECT
end
begin
    prog   = oxine
    button = Mute
    config = BACK
end
begin
    prog   = oxine
    button = Power
    config = ACTIVATE
end
begin
    prog   = oxine
    button = 8
    config = STOP
end
begin
    prog   = oxine
    button = pasMUTE
    config = VOLMUTE
end
begin
    prog   = oxine
    button = VOL+
    config = VOLUME +2
end
begin
    prog   = oxine
    button = VOL-
    config = VOLUME -2
end
begin
    prog   = oxine
    button = F_TV
    config = EJECT
end
begin
    prog   = oxine
    button = 4
    config = SKIP -30
    repeat = 1
end
begin
    prog   = oxine
    button = 6
    config = SKIP +30
    repeat = 1
end
begin
    prog   = oxine
    button = FAST_REWIND
    config = FAST_REWIND
end
begin
    prog   = oxine
    button = FAST_FORWARD
    config = FAST_FORWARD
end
begin
    prog   = oxine
    button = PLAY
    config = PLAY
end
begin
    prog   = oxine
    button = PAUSE
    config = PAUSE
end
begin
    prog   = oxine
    button = 5
    config = PPLAY
end
begin
    prog   = oxine
    button = 1
    config = PREV
end
begin
    prog   = oxine
    button = 3
    config = NEXT
end
begin
    prog   = oxine
    button = HUE+
    config = HUE +500
end
begin
    prog   = oxine
    button = HUE-
    config = HUE -500
end
begin
    prog   = oxine
    button = SATURATION+
    config = SATURATION +500
end
begin
    prog   = oxine
    button = SATURATION-
    config = SATURATION -500
end
begin
    prog   = oxine
    button = BRIGHTNESS+
    config = BRIGHTNESS +500
end
begin
    prog   = oxine
    button = BRIGHTNESS-
    config = BRIGHTNESS -500
end
begin
    prog   = oxine
    button = CONTRAST+
    config = CONTRAST +500
end
begin
    prog   = oxine
    button = CONTRAST-
    config = CONTRAST -500
end
begin
    prog   = oxine
    button = SPU_OFFSET+
    config = SPU_OFFSET+
end
begin
    prog   = oxine
    button = SPU_OFFSET-
    config = SPU_OFFSET-
end
begin
    prog   = oxine
    button = 0/AV
    config = SPU_CHANNEL+
    repeat = 3
end
begin
    prog   = oxine
    button = Record
    config = SPU_CHANNEL-
    repeat = 3
end
begin
    prog   = oxine
    button = Info
    config = AUDIO_CHANNEL+
    repeat = 3
end
begin
    prog   = oxine
    button = Chan_Last
    config = AUDIO_CHANNEL-
    repeat = 3
end
begin
    prog   = oxine
    button = AUDIO_OFFSET+
    config = AUDIO_OFFSET+
end
begin
    prog   = oxine
    button = AUDIO_OFFSET-
    config = AUDIO_OFFSET-
end
begin
    prog   = oxine
    button = Fullscreen
    config = TOGGLE_ASPECT_RATIO
    repeat = 3
end
begin
    prog   = oxine
    button = Preview
    config = TOGGLE_DEINTERLACE
    repeat = 3
end
begin
    prog   = oxine
    button = 9
    config = SPEED+
    repeat = 3
end
begin
    prog   = oxine
    button = 7
    config = SPEED-
    repeat = 3
end
begin
    prog   = oxine
    button = TV
    config = DVB
#    config = VDR
#    config = V4L
end
begin
    prog   = oxine
    button = MUSIC
    config = MUSIC
end
begin
    prog   = oxine
    button = VIDEO
    config = VIDEO
end
begin
    prog   = oxine
    button = F_TELETEXT
    config = OSDMENU
end
begin
    prog   = oxine
    button = MAINMENU
    config = MAINMENU
end
begin
    prog   = oxine
    button = MENU1
    config = MENU1
end
begin
    prog   = oxine
    button = MENU2
    config = MENU2
end
begin
    prog   = oxine
    button = MENU3
    config = MENU3
end
begin
    prog   = oxine
    button = MENU4
    config = MENU4
end
begin
    prog   = oxine
    button = MENU5
    config = MENU5
end
begin
    prog   = oxine
    button = MENU6
    config = MENU6
end
begin
    prog   = oxine
    button = MENU7
    config = MENU7
end
begin
    prog   = oxine
    button = HELP
    config = HELP
end
begin
    prog   = oxine
    button = F_RADIO
    config = SHUTDOWN
end
begin
    prog   = oxine
    button = RECORD
    config = RECORD
end
begin
    prog   = oxine
    button = RED
    config = RED
end
begin
    prog   = oxine
    button = GREEN
    config = GREEN
end
begin
    prog   = oxine
    button = YELLOW
    config = YELLOW
end
begin
    prog   = oxine
    button = BLUE
    config = BLUE
end
begin
    prog   = oxine
    button = 1
    config = 1
end
begin
    prog   = oxine
    button = 2
    config = 2
end
begin
    prog   = oxine
    button = 3
    config = 3
end
begin
    prog   = oxine
    button = 4
    config = 4
end
begin
    prog   = oxine
    button = 5
    config = 5
end
begin
    prog   = oxine
    button = 6
    config = 6
end
begin
    prog   = oxine
    button = 7
    config = 7
end
begin
    prog   = oxine
    button = 8
    config = 8
end
begin
    prog   = oxine
    button = 9
    config = 9
end
begin
    prog   = oxine
    button = 0
    config = 0
end

Mediamarks

Les mediamarks servent à décrire les signets affichés dans les menus d'oxine.

Il s'agit de deux fichiers XML :

  • ~/.oxine/mediamarks_music.xml : menu musique
  • ~/.oxine/mediamarks_video.xml : menu vidéo

Des exemples sont disponibles dans le fichier mediamarks_example.xml situé dans le répertoire share d'oxine.

Exemple de bookmark vidéo :

<oxinemm>

  <entry>
    <mrl href="/ftp/Video" />
    <title>[Bender]</title>
  </entry>

  <entry>
    <mrl href="/mnt/cdrom" type="mountpoint" />
    <title>[DVD]</title>
  </entry>

  <entry>
    <mrl href="/backup/Video" />
    <title>[Backup]</title>
  </entry>

</oxinemm>

Menu

Le fichier ~/.oxine/mainmenu.xml permet également de modifier le contenu du menu proncipal d'oxine.

Par défaut il contient :

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE oxine_menu SYSTEM "http://oxine.sf.net/DTD/menu.dtd">

<!--
************************************************************************

This is the standard menu file for oxine's main menu.

The following parameters are used to define the action:

=======================================================================
| parameter name | valid values
=======================================================================
| type           | see menu.dtd
| parameter      | for sub_menu: the name of a file containing a menu
|                | for auto_play: dvb, v4l, dvd, vcd, cddb, vdr
|                | for mrl_play: a valid xine MRL
|                | for shellcommand: a valid shell command
=======================================================================

************************************************************************
-->

<oxine_menu>
  <button>
    <title>Listen to Music</title>
    <action type="music_menu"/>
  </button>
  <button>
    <title>Watch Films</title>
    <action type="video_menu"/>
  </button>
  <button>
    <title>Watch Television</title>
    <action type="auto_play" parameter="dvb"/>
  </button>
  <button>
    <title>Play a DVD</title>
    <action type="auto_play" parameter="dvd"/>
  </button>
  <button>
    <title>Play a Video CD</title>
    <action type="auto_play" parameter="vcd"/>
  </button>
  <button>
    <title>Play an Audio CD</title>
    <action type="auto_play" parameter="cddb"/>
  </button>
  <button>
    <title>Show Weather Report</title>
    <action type="weather_menu"/>
  </button>
  <button>
    <title>Edit Settings</title>
    <action type="settings_menu"/>
  </button>
  <button>
    <title>Show Help</title>
    <action type="help_menu"/>
  </button>
  <button>
    <title>Shutdown</title>
    <action type="shutdown"/>
  </button>
<!--
  Some other examples:
-->
<!--
  <button>
    <title>Watch Television</title>
    <action type="auto_play" parameter="vdr"/>
  </button>
  <button>
    <title>Watch Television</title>
    <action type="auto_play" parameter="v4l"/>
  </button>
  <button>
    <title>Start Your Favorite Film</title>
    <action type="mrl_play" parameter="/home/public/myfavorite.avi"/>
  </button>
  <button>
    <title>Start Mozilla Firefox</title>
    <action type="shellcommand" parameter="/usr/bin/firefox"/>
  </button>
  <button>
    <title>Games menu</title>
    <action type="sub_menu" parameter="/home/public/gamesmenu.xml" />
  </button>
  <button>
    <title>Go back to the main menu</title>
    <action type="main_menu" />
  </button>
-->
</oxine_menu>

Exemple de menu personnalisé :

<oxine_menu>
  <button>
    <title>Watch Films</title>
    <action type="video_menu"/>
  </button>
  <button>
    <title>Listen to Music</title>
    <action type="music_menu"/>
  </button>
  <button>
    <title>Play a DVD</title>
    <action type="auto_play" parameter="dvd"/>
  </button>
  <button>
    <title>Play an Audio CD</title>
    <action type="auto_play" parameter="cddb"/>
  </button>  <button>
    <title>Edit Settings</title>
    <action type="settings_menu"/>
  </button>
  <button>
    <title>Shutdown</title>
    <action type="shutdown"/>
  </button>
</oxine_menu>

Backup

  • répertoire subversion
  • répertoire d'installation
  • répertoire ~/.oxine des utilisateurs

Links

linux/oxine.txt · Dernière modification: 2011/01/11 23:58 par matthieu
Recent changes RSS feed Debian Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki