Le but est ici d’installer un logiciel transformant un (vieux) PC en médiacenter.
C’est à dire que ce PC relié à la télé et à une chaine Hi-fi (en RCA pour l’instant) permettra de diffuser simplement des films (divx), des DVDs, de la musique (mp3 et CD), de regarder et d’enregistrer la TNT.
L’avantage de confier cette tache à un PC plutôt que d’acheter un disque dur multimédia est qu’un PC est totalement évolutif en terme de matériel, mais aussi de codecs et que tout est configurable. Bref on à les mains libres et donc le pouvoir…
Vient le choix du logiciel, il en existe plusieurs sous Linux les principaux sont :
- Il à la réputation d’être assez compliqué à installer (je n’ai pas testé)
- Il est basé sur une architecture client-serveur (backend – frontend) permettent d’installer le serveur sur un PC et le client sur un autre (inutile dans mon cas)
- Il n’utilise pas de programme existant mais tout est ré-écrit (n’utilise pas mplayer ou xine mais un player interne)
- Pas testé pour les raisons sus-mentionnées
- Relativement récent
- Très beau graphiquement
- Ne gère pas la télévision
- Pas testé car n’existait pas pour linux debut 2008 mais à faire
- Utilise des programmes stables et reconnus sous linux (mplayer, xine, tvtime, mencoder, etc.)
- Tout est plugin on active ou désactive facilement des fonctionnalités (TV, Vidéo, Musique, Photo, RSS, Jeux, etc.)
- Fonctionne parfaitement sur une configuration légère (Duron 1 GHz, Geforce 2)
Bref j’ai choisi Freevo.
L’installation décrite ci-dessous à été réalisée sur une machine virtuelle sur laquelle Ubuntu Jaunty minimal (ligne de commande) était installé avec XFCE (Xorg) et rien d’autre.
Installation des dépendances de Freevo
Ajout du dépôt Medibuntu :
Parmis les dépendances de Freevo (optionnelles parfois) il y a des packages multimédia non-libres et donc présents dans le dépôt Medibuntu.
sudo wget http//www.medibuntu.org/sources.list.d/jaunty.list -O /etc/apt/sources.list.d/medibuntu.list sudo aptitude update && sudo aptitude install medibuntu-keyring && sudo aptitude update
Les paquets de medibuntu installé pour freevo sont :
- w32codecs : ensemble de codec audio-video non-libres
- libdvdcss2 : librairie de lecture des DVDs
- mplayer : player de base dans Freevo
Installation des packages dont dépend Freevo :
sudo aptitude install aumix libdvdread-dev libglib2.0-dev libimlib2 libimlib2-dev lirc lsdvd python-twisted python-dev python-beautifulsoup python-xml python-pygame python-pylirc xine-ui xmltv w32codecs libdvdcss2 mplayer
Pour info chez moi cela à téléchargé 201 paquets pour 52 Mo
Lors de l’installation de lirc, des questions sont posés. Pour rappel lirc permet de gérer une télécommande, il est donc évident que dans le cadre d’une installation dans une machine virtuel cela n’est pas très pertinent.
- Nom de la télécommande : Hauppauge Nova T 500
- IR transmitter : none
- input device : /dev/event/input4 /dev/input/by-path/pci-x-x–event-ir
Edit 14/05/2009 : Concernant le dernier point il s’agit de la configuration qui m’a permit de faire fonctionner ma télécommande Nova T 500 sur sweetBox sous Jaunty
Installation de Freevo
Télécharger les sources :
wget http://freefr.dl.sourceforge.net/sourceforge/freevo/kaa-base-0.4.0.tar.gz http://freefr.dl.sourceforge.net/sourceforge/freevo/freevo-1.8.3.tar.gz http://freefr.dl.sourceforge.net/sourceforge/freevo/kaa-imlib2-0.2.3.tar.gz http://freefr.dl.sourceforge.net/sourceforge/freevo/kaa-metadata-0.7.5.tar.gz http://effbot.org/downloads/Imaging-1.1.6.tar.gz
Détarer les archives :
find -name "*.tar.gz" -exec tar xzf {} \;
Installation des paquets dans l’ordre suivant
- Imaging
- kaa-base
- kaa-imlib2
- kaa-metadata
- freevo
L’installation de chacun de ces paquet se fait toujours avec la même commande :
python setup.py install
Ce qui donne :
cd Imaging-1.1.6 sudo python setup.py install cd ../kaa-base-0.4.0 sudo python setup.py install cd ../kaa-imlib2-0.2.3 sudo python setup.py install cd ../kaa-metadata-0.7.5 sudo python setup.py install cd ../freevo-1.8.3 sudo python setup.py install
Paramétrage (de base) de freevo
Pour faire vite et avoir un freevo qui démarre on peut faire le paramétrage suivant (quick and dirty) :
Génération du fichier de configuration freevo.conf qui contient le chemin vers les programmes externes qu’utilise freevo + 2-3 autres config.
Ce fichier est généré via la commande :
sudo freevo setup
Sur ma machine virtuelle cette commande a répondu :
/usr/local/bin/freevo:36: DeprecationWarning: The popen2 module is deprecated. Use the subprocess module. import popen2 Chemin système primaire=Non vérification pour mplayer... /usr/bin/mplayer vérification pour mencoder... non trouvé (désactivé) vérification pour tvtime... non trouvé (désactivé) vérification pour xine... /usr/bin/xine vérification pour fbxine... non trouvé (désactivé) vérification pour df_xine... non trouvé (désactivé) vérification pour lsdvd... /usr/bin/lsdvd vérification pour jpegtran... /usr/bin/jpegtran vérification pour xmame.x11... non trouvé (désactivé) vérification pour xmame.SDL... non trouvé (désactivé) vérification pour xmame... non trouvé (désactivé) vérification pour ssnes9x... non trouvé (désactivé) vérification pour zsnes... non trouvé (désactivé) vérification pour lame... non trouvé (désactivé) vérification pour flac... non trouvé (désactivé) vérification pour cdparanoia... non trouvé (désactivé) vérification pour oggenc... non trouvé (désactivé) vérification pour renice... /usr/bin/renice vérification pour setterm... /usr/bin/setterm vérification pour mpav... non trouvé (désactivé) vérification pour vlc... non trouvé (désactivé) vérification pour dvdbackup... non trouvé (désactivé) vérification pour unzip... non trouvé (désactivé) Paramètres: geometry = 800x600 display = x11 tv = ntsc chanlist = us-cable wrote /home/mon_user/.freevo/freevo.conf
Et génére le fichier /home/mon_user/.freevo/freevo.conf contenant :
chanlist = us-cable display = x11 geometry = 800x600 jpegtran = /usr/bin/jpegtran lsdvd = /usr/bin/lsdvd mplayer = /usr/bin/mplayer renice = /usr/bin/renice setterm = /usr/bin/setterm tv = ntsc version = 2.2 xine = /usr/bin/xine
Lors du paramétrage plus fin de freevo on modifiera ce fichier et on le déplacera dans /etc/freevo (configuration commune à tous les utilisateurs).
Il faut ensuite un 2ème fichier de configuration (local_conf.py) qui lui contient le paramétrage fin de freevo et qui est assez long à réaliser.
Pour faire un test rapide on peut utiliser le fichier d’exemple fournis avec les sources de freevo (répertoire ou vous avez détarré freevo) :
sudo mkdir /etc/freevo sudo cp local_conf.py.example /etc/freevo/local_conf.py
Démarrage de Freevo
Freevo a cet enorme avantage de pouvoir être lancé d’une console, il n’a pas besoin qu’un windows manager (Gnome, XFCE, etc) soit présent, il faut simplement qu’un serveur X soit disponible (xorg).
le démarrage de freevo en ligne de commande se fait par un simple :
sudo freevo -fs
Et voila le bel écran qui s’affiche :

Freevo