samedi 9 juillet 2011

Mediacenter XMBC sur base de Nvidia/ION

ZBOX !

Avec l'arrivée de ma TV HD, mon Mini-Mac (avec Freevo@Linux) a commencé a voir du mal.
Il a trouvé ses limitations pour décoder du H264 en 1080p, souvent même en 720p.
La PS3 y arrive mais en transcodant les vidéos à l'avance ou en live avec PSM-Linux (serveur DLNA 'java' nécessitant de la puissance coté serveur).
De plus les serveurs DLNA sous Linux m'ont posés pas mal de problème de stabilité.

Donc j'ai décidé de sévir et d'acheter un petit PC avec un chipset Nvidia/ION permettant le décodage matériel du codec H264!!!!
(coût à l'été 2011 : 280E avec 2Go de RAM et un disque dur de 160Go)




Fiche Technique ZOTAC ZBOX HD-ND22-E

Processeur double coeur Intel Celeron SU2300 avec faible consommation énergétiqueProcesseur graphique NVIDIA ION compatible Full HD 1080pTaille compacte pour un encombrement très réduitFonctionnement silencieuxFaible consommation d'énergieSortie vidéo HDMIConnectique complète : USB 2.0, Audio, eSATA, HDMI...Liaison réseau sans fil Wi-Fi NLecteur de cartes mémoires (SD/SDHC/MMC/MS/MS Pro/xDCard)Dock VESA inclus pour le montage à l'arrière d'un écran compatible (moniteur ou Téléviseur LCD)


Nombre de CPU supportés   1FSB supporté(s)   FSB 800Nom courant du chipset   NVIDIA IONFormat de mémoire   2x SO-DIMM 204 pins (DDR3)Norme Mémoire   DDR3 1066 - PC3-8500  2Go de RAM installéType de mémoire   DDR3Technologie mémoire   Dual ChannelCapacité maximale de RAM par slot   4 GoCapacité maximale de RAM   8 GoContrôleur graphique intégré   ouiChipset graphique   NVIDIA IONConnecteurs Disques   1x Serial ATA 3Gb/s (SATA II) choix du moins cher : 160 Go en 2"5Chipset Audio   IntégréNombre de ports/Contrôleur Ethernet   IntégréNorme(s) réseau   10/100 Mbps, 10/100/1000 Mbps, Wi-Fi B (IEEE 802.11b), Wi-Fi G (IEEE 802.11g), Wi-Fi N 300 Mbps (IEEE 802.11n)Connecteurs panneau avant   Casque (Jack 3.5mm Femelle), Micro (Jack 3.5mm Femelle), 1x USB 2.0, xD-Picture Card, Memory Stick, Memory Stick PRO, Multimedia Card, SD (Secure Digital), SDHC (Secure Digital High Capacity)Connecteurs panneau arrière   Audio numérique S/PDIF Optique, eSATA 3Gb/s (SATA II), RJ45 Femelle, 5x USB 2.0, DVI Femelle, HDMI FemelleNombre d'emplacements 2,5"   1Format du barebone   ITXLargeur   188 mmHauteur   44 mmProfondeur   188 mm

Installation Ubuntu 11.04

Installation de l'installeur de la Ubuntu Natty Narwhal sur une clé USB (http://www.ubuntu.com/download/ubuntu/download).
Je choisi un ISO de la version Serveur car ca me permet de choisi exactement ce que je veux en package (graphique notamment).


Configuration de la télécommande

J'utilise une Microsoft MCEUSB (model: 1303) en USB.

lsusb:
ID 0471:0815 Philips (or NXP) eHome Infrared Receiver

Sous Ubuntu 11.04, choisir : Windows Media Center Transceivers/Remotes (all)

/etc/lirc/hardware.conf

Exemple:

REMOTE="Windows Media Center Transceivers/Remotes (all)"
REMOTE_MODULES="lirc_dev mceusb"
REMOTE_DRIVER=""
REMOTE_DEVICE="/dev/lirc0"
REMOTE_SOCKET=""
...

/etc/lirc/lircd.conf

include "/usr/share/lirc/remotes/mceusb/lircd.conf.mceusb"


Installation des pilotes NVIDIA

Ca inclus les librairies '''libvdpau''' (attention a avoir les headers correspondants au kernel installé)

sudo apt-get install nvidia-current nvidia-settings


XMBC


Installation

* Ajout du dépot et installation du package.


sudo apt-get install python-software-properties pkg-config
sudo add-apt-repository ppa:team-xbmc


Modifier dans /etc/apt/source.list.d/team-xbmc-ppa-natty.list, natty par maverick :

deb http://ppa.launchpad.net/team-xbmc/ppa/ubuntu maverick main
deb-src http://ppa.launchpad.net/team-xbmc/ppa/ubuntu maverick main

* Installation du package


sudo apt-get update
sudo apt-get install xbmc xbmc-standalone
sudo apt-get update



Démarrage automatique

J'utilise un user spécifique me permettant une gestion des droits sur le serveur NFS.

* Creation du compte
adduser zbox
usermod -a -G audio,cdrom,plugdev zbox

* Config de l'init
sudo apt-get install xinit
vi ~zbox/.xinitrc
xbmc-standalone

* Config du bash
vi ~zbox/.bashrc
if [ "$TERM" != "xterm" ]
then
if [ ! -e "/dev/nvidiactl" ]
then
echo "Waiting for Nvidia ...."
logger "Waiting for Nvidia ...."
sleep 5
fi
logger "Starting XBMC ..."
startx | tee startx.log
fi

Maintenant une simple connexion sous cet user, démarrera XBMC.

* Démarrage auto

sudo apt-get install mingetty
sudo vi /etc/init/tty6.conf
exec /sbin/getty -8 38400 tty6 -> exec /sbin/mingetty --autologin zbox tty6

Actuces

Problème pour arrêter / redémarrer le système via menu XBMC


Penser a avoir HAL et DBUS de démarrer.
Mettre l'utilisateur qui lance XMBC dans le groupe "powerdev"


Utilise son téléphone comme Telecommnande

http://code.google.com/p/android-xbmcremote/

Fonctionnalités

HDMI (vidéo & son) : OK (penser avoir à l'utilisateur dans le groupe audio :p)
Sortie optiaque : OK
Décodage H264 HD (1080) : OK
...

2 commentaires:

  1. Salut,
    J'ai repris ton tuto:
    * Nickel pour l'instant (je n'ai pas testé sur ma TV mais juste sur mon ecran LCD de bureau sans le son)
    * Pour ceux qui ne connaissent pas, il faudrait ajouter apt-get install xinit
    * J'ai activé l'arrêt de la zbox via le menu XBMC (enfin disons que toute action sur le menu XBMC faisant sortir du programme fait que la zbox s'arrête...): Ajout d'une 2e ligne "sudo halt" dans .xinitrc et mettre les lignes kivontbien dans le /etc/sudoers
    * Je suis en train de faire la synchro totale de bibliothèque entre instances (via MySQL, et avec Thumbnails) je te passerai mon wiki si tu veux

    RépondreSupprimer
  2. Pour MySQL je suis preneur.

    Pour la sortie de XBMC : je garde la fonction "quitter" pour lancer un KDM a la suite de XBMC pour les jours où on veut surfer sur grand éccran.

    RépondreSupprimer