Ceci est une ancienne révision du document !
Table des matières
XBMC
Xbmc est un très bon logiciel de mediacenter, vous trouverez plus d'infos sur leur site, mais dans les grands lignes il gère des bibliotheques de fichiers audio et video, permet de catégoriser ces fichiers (films, séries, musique, ….) puis ensuite d'en lancer la lecture. Il se base sur les noms de fichiers pour extraire le titre des musiques/films, les categoriser et se charge ensuite d'aller récupérer des images comme l'affiche du film, la pochette de l'album pour vous les afficher : voir screenshots.
Installation
Il existe plusieurs façons d'installer xbmc :
- installer xbmc depuis votre distribution
- utiliser un liveCD fourni ici http://xbmc.org/download/
- utiliser une distribution spécialisée qui integre xbmc en y ajoutant ses plugins, themes et autres personalisations
J'utilise deux de ces manières, qui vont donc être détaillées :
- liveCD c'est la methode la plus simple (mais comme c'est trop simple de graver un CD, j'utilise un liveCD en boot PXE ;p)
- distribution spécialisée XBian qui est une distribution spécialisée pour Xbmc sur Raspberry Pi
Configuration
Configuration d'une bibliothèque partagée et persistente
L'inconvénient du liveCD est qu'a priori les changements effectués dans la bibliothèque sont perdus à chaque arret/redémarrage de votre médiacenter. Fort heureusement il est possible de configurer Xbmc pour qu'il utilise une base de données MySQL externe. L'intérêt de cette solution est de pouvoir utiliser cette même bibliothèque partagée entre plusieurs mediacenter (par exemple un dans le salon et un dans la chambre), en partageant également le status lu/non lu.
Prérequis
- Disposer d'un serveur MySQL qui tourne sur une machine qui doit idealement rester allumée tout le temps (par exemple votre NAS)
- Partager vos fichiers multimédias de telle facon que chacun des mediacenter puisse y accéder de la même maniere (partage réseau samba, NFS, uPnP, …)
On va supposer dans la suite que :
- le serveur MySQL utilise l'IP 192.168.0.1 (on prefere ne pas utiliser de noms DNS meme si disponible pour des raisons de performance xbmc)
- les mediacenter utilisent les adresses IP 192.168.0.40 et 192.168.0.50
- le mot de passe d'acces a la base de données est “coincoin”
Il faut bien entendu que vous adaptiez ces valeurs a votre installation/besoins.
Acces serveur MySQL
Sur votre serveur MySQL il faut créer un utilisateur disposant de droits corrects :
create user 'xbmc'@'192.168.0.40' identified by 'coincoin' ; grant ALL on `xbmc_video%`.* TO 'xbmc'@'192.168.0.40' identified by 'coincoin' ; grant ALL on `xbmc_music%`.* TO 'xbmc'@'192.168.0.40' identified by 'coincoin' ;
create user 'xbmc'@'192.168.0.50' identified by 'coincoin' ; grant ALL on `xbmc_video%`.* TO 'xbmc'@'192.168.0.50' identified by 'coincoin' ; grant ALL on `xbmc_music%`.* TO 'xbmc'@'192.168.0.50' identified by 'coincoin' ;
- nous n'avons pas créé de base de donnée : xbmc le fera
- ces droits sont violents mais ils permettent a xbmc de créer et d'utiliser a sa guise les bases de données nommées “xbmc_video*” et “xbmc_audio*”, en pratique xbmc ajoute un numéro de version au nom de la base, par exemple pour la version 12 Frodo, ce numéro sera 75 pour la base vidéo
Configuration de Xbmc
Cette configuration particuliere doit s'effectuer en éditant un fichier XML, le fichier advancedsettings.xml situé sous linux dans le répertoire /home/xbmc/.xbmc/userdata/ . Il faut y ajouter la configuration des bibliotheques “<videodatabase> …</videodatabase>” et “<musicdatabase>…</musicdatabase>” suivantes (a l'intérieur des balises <advancedsettings> et </advancedsettings>).
En ajoutant nos paramètres :
<videodatabase> <type>mysql</type> <host>192.168.0.1</host> <name>xbmc_video</name> <user>xbmc</user> <pass>coincoin</pass> </videodatabase>
<musicdatabase> <type>mysql</type> <host>192.168.0.1</host> <name>xbmc_music</name> <user>xbmc</user> <pass>coincoin</pass> </musicdatabase>
On obtient donc au final un fichier complet qui chez moi ressemble à ca :
<advancedsettings> <useddsfanart>true</useddsfanart> <cputempcommand>cputemp</cputempcommand> <gputempcommand>gputemp</gputempcommand> <samba> <clienttimeout>30</clienttimeout> </samba> <network> <disableipv6>true</disableipv6> </network> <videodatabase> <type>mysql</type> <host>192.168.0.1</host> <name>xbmc_video</name> <user>xbmc</user> <pass>coincoin</pass> </videodatabase> <musicdatabase> <type>mysql</type> <host>192.168.0.1</host> <name>xbmc_music</name> <user>xbmc</user> <pass>coincoin</pass> </musicdatabase> </advancedsettings>
Relancez ensuite Xbmc et ajoutez les partages réseau comme si de rien n'etait