Table des matières

xmbc - squeeze

Introduction

Objectifs généraux à détailler…

Matériel utilisé

* les prix et liens ci-dessus ne sont pas publicitaires et ne sont donnés qu'à titre indicatif.

Préalables

Utiliser la commande su

su
nano /etc/sudoers
MonNomDUtilisateur ALL=(ALL) PASSWD: ALL

Vous avez maintenant la possibilité d'effectuer des commandes d'administration par le biais de sudo

Modification des sources de dépôts

EDITOR=nano apt edit-sources
## squeeze
deb http://ftp.fr.debian.org/debian/ squeeze main contrib non-free
deb-src http://ftp.fr.debian.org/debian/ squeeze main contrib non-free

## squeeze security
deb http://security.debian.org/ squeeze/updates main contrib non-free
deb-src http://security.debian.org/ squeeze/updates main contrib non-free

## Squeeze updates  
deb http://ftp.debian.org/debian/ squeeze-updates main contrib non-free
deb-src http://ftp.debian.org/debian/ squeeze-updates main contrib non-free

#Debian multimedia - versions plus récentes de nombreux paquets multimedia
deb http://www.deb-multimedia.org squeeze main non-free

# XBMCVDR - version de XBMC intégrant le support TV 
deb http://debian.oppserver.net/xbmcvdr/ squeeze main non-free contrib
deb-src http://debian.oppserver.net/xbmcvdr/ squeeze main non-free contrib

# Version 1.7.27 de vdr
deb http://e-tobi.net/vdr-experimental squeeze base backports addons vdr-standard
deb-src http://e-tobi.net/vdr-experimental squeeze base backports addons vdr-standard

#Backport pour obtenir un noyau 3.2 afin d'obtenir un meilleur support des drivers DVB
deb http://backports.debian.org/debian-backports squeeze-backports main contrib non-free
deb-src http://backports.debian.org/debian-backports squeeze-backports main contrib non-free
wget http://debian.oppserver.net/gpg-opp-signing-pubkey.asc -O - | sudo apt-key add -
sudo aptitude install e-tobi-keyring deb-multimedia-keyring
sudo aptitude update
sudo aptitude upgrade

Installer le nécessaire pour compiler les codes sources

sudo aptitude install subversion openssl build-essential libssl-dev gcc g++ pcscd pcsc-tools libpcsclite1 libpcsclite-dev cmake make libpthread-stubs0 libpthread-stubs0-dev libncurses5 libncurses5-dev wget bzip2 git-core patchutils libproc-processtable-perl libtool mercurial

Lecture des cartes d'abonnement TV

La lecture de la carte TNTSAT est effectuée via le lecteur Infinity USB Smart puis exploitée avec le logiciel OSCAM, un émulateur d'Interface Commune (CI), également appelé CAM (Conditional-access module).
Il vous est également possible d'utiliser d'autres cartes d'abonnement aux bouquet satellite, pour plus d'information se référer au le site d'oscam

La carte TNTSAT a été choisie pour ce tuto car elle permet de décoder l'ensemble des chaines proposée en TNT (y compris HD) sans avoir à payer d'abonnement.

Installation des pilotes du lecteur de carte à puce

La communication avec le lecteur de carte est effectuée par l'intermédiaire de la librairie libusb. On va donc s'assurer de son bon fonctionnement afin qu'elle puisse être prise en charge par oscam.

 sudo aptitude install libusb-1.0-0 libusb-1.0-0-dev

Le lecteur doit alors être monté automatiquement au démarrage. Pour s'en assurer vérifier si le fichier /dev/ttyUSB0 existe. Si ce n'est pas le cas, c'est probablement dû à un conflit avec le paquet brltty qu'il faut alors désinstaller.

 sudo aptitude remove brltty

Chargement d'un module dans le lecteur

Point faible de ce tuto, il va nous falloir un PC équipé de Windows ou une machine virtuelle2) pour commencer…

  1. Vérifier que l'interrupteur au dos du lecteur est en position “normal”
  2. Connecter le lecteur à un port USB, il sera détecté automatiquement par Windows
  3. Le lancer puis cliquer sur l'onglet > Outils > Module d'installation
  4. Choisir le moduleSmart VPC 6MHz Smartmouse
  5. Cliquer sur activer, et le module est chargé dans le lecteur
  6. Le déconecter
  7. Passer l'interrupteur au dos en mode “module”

Le tour et joué ! Votre lecteur sera désormais reconnu par linux et monté sur /dev/ttyUSB0.
Afin d'améliorer les performances, on a forcé la lecture à 6MHz d'une carte initialement prévue pour être lue à 3,57MHz (overclock).

Installation du serveur Oscam

  sudo svn co http://streamboard.gmc.to/svn/oscam/tags/1.10/ oscam-1.10
  cd oscam-1.10
  sudo wget https://raw.github.com/manio/vdr-plugin-dvbapi/22733ee/patches/oscam-vdr.diff
  sudo patch < oscam-vdr.diff
  sudo mkdir build
  cd build
  sudo cmake -DWEBIF=1 -DHAVE_DVBAPI=1 ..
  sudo make
  sudo make install
  cd ..
  cd ..
  sudo rm -R oscam-1.10

Notre serveur de cartes d'abonnement maintenant installée, il nous faut le configurer pour notre carte TNTSAT.

Configuration du serveur

L'ensemble des fichiers de configuration doivent être placés dans le répertoire : /usr/local/etc/
Une description détaillée des différents fichiers de configuration se trouve sur le wiki officiel de l'équipe de développement

Pour l'utilisation de notre carte TNTSAT, nous allons devoir configurer le fichier oscam.conf, oscam.server et oscam.user.

Configuration globale : oscam.conf

sudo nano /usr/local/etc/oscam.conf
[global]
Nice            = -1

# web interface
[webif]
httpport      = 8888
httpuser      = user
httppwd       = pass
httpallowed   = 127.0.0.1

[dvbapi]
ennabled = 1
au = 1
user = vdr
boxtype = pc
pmt_mode = 1
request_mode = 1

Configuration du lecteur de carte : oscam.server

sudo nano /usr/local/etc/oscam.server
[reader]
# nom attribué à notre lecteur de carte
Label           = phoenixUSBsmart

# Adresse sur lequel est monté le lecteur
Device          = /dev/ttyUSB0 

# Type de protocole utilisé
Protocol        = mouse
Detect          = CD

# On utilise le module overclocké à 6MHz avec une carte de 3,57MHz
mhz             = 600
cardmhz         = 357

# Protocole de décryptage de la carte : viaccess = 500
CAID            = 0500
Group           = 1

# Clé AES spécifique à TNTSAT
aeskeys = 0500@30B000:43XXXXXXXXXXXXXXXXXXXXXX43,A7XXXXXXXXXXXXXXXXXXXXX26,EFXXXXXXXXXXXXXXXXXXXXXXE3

En raison de flous juridiques concernant le principe d'interopérabilité, je préfère ne pas vous fournir la clé AES dans son intégralité…
Une requête avec votre moteur de recherche préféré devrait vous permettre de l'obtenir rapidement.

Configuration du compte d'accès au serveur : oscam.user

sudo nano /usr/local/etc/oscam.user
[account]
User  = MonLogin # à modifier à votre convenance
Pwd   = MonMotdepasse # à modifier à votre convenance
Group = 1
# Permettre l'activation et la mise à jour de la carte
AU = phoenixUSBsmart

Configuration des chaines à décrypter : oscam.dvbapi

*Editer le fichier

sudo nano /usr/local/etc/oscam.dvbapi
#Chaines de canal + à ignorer:                                                                                
I: 0500:030B00:2261 #Canal+ HD                                                                                    
I: 0500:030B00:2262 #Canal+ Decale HD                                                                             
I: 0500:030B00:2263 #Canal+ Cinema HD                                                                             
I: 0500:030B00:2264 #Canal+ Sport HD                                                                              
I: 0500:030B00:2265 #Canal+ Family HD                                                                             
I: 0500:030B00:2009 #Canal+                                                                                       
I: 0500:030B00:200A #Canal+ Decale                                                                                
I: 0500:030B00:200B #Canal+ Cinema                                                                                
I: 0500:030B00:200D #Canal+ Family                                                                                
I: 0500:030B00:2010 #Canal+ Sport                                                                                 

I: 0500:030B00:4284:1788 # NT1 bad ECMPID                                                                         
I: 0500:030B00:4290:1788 # NT1 bad ECMPID                                                                         

#On décode toutes les autres chaines que permet la carte  
P:0500:030B00

Lancement du serveur

/usr/local/bin/oscam

Si le lecteur de carte est bien connecté sur la carte TNTSAT, oscam devrait se alors lancer. Il lui est même possible d'activer la carte si c'est sa première utilisation.
Il est possible de s'en assurer en lisant le fichier log dont nous avons défini l'adresse dans oscam.conf.

sudo nano /etc/init.d/oscam

Contenant le code suivant

#!/bin/sh 
DAEMON=/usr/local/bin/oscam
DEAMON_OPTS="-b"
PIDFILE=/var/run/oscam.pid
 
test -x ${DAEMON} || exit 0
. /lib/lsb/init-functions
 
case "$1" in
  start)
	log_daemon_msg "Starting OScam"
	start-stop-daemon --start --quiet --background --pidfile ${PIDFILE} --make-pidfile --exec ${DAEMON} -- ${DAEMON_OPTS}
	log_end_msg $?
    ;;
  stop)
	log_daemon_msg "Stopping OScam"
	start-stop-daemon --stop --exec ${DAEMON}
	log_end_msg $?
    ;;
  force-reload|restart)
        $0 stop
        $0 start
    ;;
  *)
echo "Usage: /etc/init.d/oscam {start|stop|restart|force-reload}"
    exit 1
    ;;
esac
exit 0
sudo chmod 755 /etc/init.d/oscam
sudo /etc/init.d/oscam start
sudo /etc/init.d/oscam stop
sudo /etc/init.d/oscam restart
sudo update-rc.d oscam defaults
ls -l /etc/rc2.d/

Pour plus d'informations sur le chargement de script au démarrage, se référer à ce cours.

Réception du satellite

Orientation de la parabolle

Vous trouverez ici une application vous permettant d'obtenir les angles d'azimut, d'élévation et de polarisation nécessaires au réglage de votre antenne parabolique sur astra 19,2E.

Installation des pilotes de la carte DVB-S/DVB-S2

Matériel de réception télé.

Cette partie dépend du type de matériel que vous utilisez. De nombreux modules ont étés intégrés dans le noyau 3.2 et ne nécessiteront pas d'installation. Dans d'autre cas, l'utilisation du matériel nécessite d'installer des modules et firmwares spécifiques. On peut en trouver certains sur linux media.

Commençons par installer la version 3.2 du noyau pour y compiler les modules du pilote.

sudo aptitude -t squeeze-backports install linux-image-amd64 linux-headers-amd64

Après redémarrage, le grub devrait nous proposer la nouvelle version du noyau. On va donc compiler le pilote trouvé ici, la version 3.0 fonctionnant bien sur notre noyau 3.2.

git clone git://linuxtv.org/media_build.git
cd media_build
./build
sudo make install

Installation de VDR

On installe VDR et du plugin qui permettra de lire les chaines et de les transférer sur XBMC.

sudo aptitude install vdr vdr-dev vdr-plugin-xvdr

On compile ensuite le plugin permettant de se connecter au DVBAPI de Oscam :

git clone https://github.com/manio/vdr-plugin-dvbapi.git
cd vdr-plugin-dvbapi
sudo nano Makefile

On modifie alors le fichier Makefile avec les valeurs suivantes :

VDRDIR = /usr/include/vdr
LIBDIR = /usr/lib/vdr/plugins

Et enfin on compile

sudo make

Configuration de VDR

Mise en place du coeur de la plate forme : XBMC Media Center

Installation de XBMC-VDR

XBMC-VDR est une variante XBMC qui intègre une fonction de réception de la télévision.

sudo aptitude install xbmc xbmc-addons xbmc-addon-xvdr

Configuration de XBMC

Zapping

Médiatèque

Interface web XWMM
 sudo aptitude install xbmc-addons
> Système > Paramètres > Add-ons > Installer depuis un fichier zip

Votre /home/user/ se trouve dans Dossier racine

> Système > Paramètres > Add-ons > Télécharger des Addons > Tous les add-ons > Interface web > XWMM
> Système > Paramètres > Réseau > Services

Lecture et archivage de blu-rays

Instalation de makemkv
sudo aptitude install build-essential libc6-dev libssl-dev libgl1-mesa-dev libqt4-dev

http://code.google.com/p/swiss-army-knife/downloads/list

wget http://www.makemkv.com/download/makemkv_v1.6.16_oss.tar.gz
tar zxvf makemkv_v1.6.16_oss.tar.gz
cd makemkv_v1.6.16_oss
make -f makefile.linux
sudo make -f makefile.linux install
cd ..
wget http://www.makemkv.com/download/makemkv_v1.6.16_bin.tar.gz
tar zxvf makemkv_v1.6.16_bin.tar.gz
cd makemkv_v1.6.16_bin
make -f makefile.linux
sudo make -f makefile.linux install
cd ..
sudo rm -R makemkv_v1.6.16_oss
rm -R makemkv_v1.6.16_bin

L'application est alors installée dans ce répertoire /usr/bin/makemkv

echo "app_Key = \"T-FKIYtqAKH3ybawliX_34iidCDFSfE7w_DUPLH4Gk1U6by@Bzv@hBkKJ9iH29_nzEi2\"" >> /home/user/.MakeMKV/settings.conf
Lecture des blurays avec Makemkv et XBMC

Plus d'info ici.

Extraire et encoder des blurays avec Makemkv et XBMC
Archiver ses propres médias sur son ordinateur n'est pas toujours autorisée. Renseignez-vous sur la législation en oeuvre dans votre pays
> Système > Add-ons > Installer depuis un fichier zip
> Système > Add-ons > Télécharger des add-ons > luxeria Add-ons > Add-ons Programme > Swiss Army Knife

Procédure adaptée à partir du script d'installation sur Ubuntu

sudo aptitude install mencoder netcat original-awk dvdauthor gddrescue dvd+rw-tools lsdvd dvdbackup submux-dvd subtitleripper transcode mjpegtools libdvdcss2 openssh-server openssh-client liba52-0.7.4 libfaac0 libmp3lame0 libmp4v2-0 libogg0 libsamplerate0 libx264-85 libxvidcore4 libbz2-1.0 libc6 libgcc1 libstdc++6 zlib1g lynx handbrake-cli
ssh-keygen -t rsa
ssh-copy-id -i /home/MonNomDUtilisateur/.ssh/id_rsa.pub MonNomDUtilisateur@localhost
nano /home/MonNomDUtilisateur/.xbmc/userdata/addon_data/script.video.swiss.army.knife/0.6.20-setup.done
0.6.20

Lecture de films 3D

Transfert du signal sur la TV

Installation d'une carte graphique Nvidia

En attendant que Nvidia se décide à libérer ses pilotes pris en otages depuis bien longtemps, pour que les pilotes libres supportent la 3D, nous allons nous résigner à installer les pilotes propriétaires. Voir : nvidia ici pour une description plus approfondie des procédures d'installation des différents pilotes.

Nous allons suivre la plus simple :

EDITOR=nano apt edit-sources
## squeeze
deb http://ftp.fr.debian.org/debian/ squeeze main contrib non-free
deb-src http://ftp.fr.debian.org/debian/ squeeze main contrib non-free
sudo aptitude update
sudo aptitude install nvidia-kernel-dkms nvidia-settings nvidia-xconfig
nvidia-xconfig 
reboot 

Configuration de la carte graphique

Paramétrer la vidéo

Identifier l'écran

echo $DISPLAY
DISPLAY=:0.1 votrecommande

Paramétrer l'audio

Configuration de XBMC

Gestions des télécommandes

Fabrication d'un émetteur/récepteur IR DIY

Le schéma de montage est disponible ici.

Installation des pilotes de l'émetteur

Installation de LIRC

sudo aptitude install module-assistant lirc lirc-modules-source
sudo dpkg-reconfigure lirc-modules-source

Configuration de LIRC

Détection des télécommandes

Toutes les télécommandes en une

Exemple : configurer sa télécommande pour mplayer

Partage des medias avec d'autres appareils

Obtenir une IP fixe

Depuis les autres appareils de sa maison

Depuis l'extérieur

Créer une adresse no-ip
  1. Ouvrir un compte sur le site de no-ip
  2. Se connecter à son espace perso puis cliquer sur “add a host”
  3. Entrer le nom de domaine voulu, etlaisser “Host type” sur DNS HOST(A).
  4. Dans le menu déroulant choisir une extension de domaine, par exemple no-ip.net
  5. Valider le tout en cliquant en bas sur “Create Host”
Installation de l'application no-ip2
  wget http://www.no-ip.com/client/linux/noip-duc-linux.tar.gz
  tar zxvf noip-duc-linux.tar.gz
  cd noip-2.1.9-1
  make
  sudo make install
 
cd ..
sudo rm -R noip-2.1.9-1
Exécuter noip-2 au démarage
sudo /usr/local/bin/noip2
sudo nano /etc/init.d/noip2
  #! /bin/sh  
  DAEMON=/usr/local/bin/noip2
 
  test -x $DAEMON || exit 0
 
  case "$1" in
    start)
    echo -n "Starting dynamic address update: "
    start-stop-daemon --start --exec $DAEMON
    echo "noip2."
    ;;
    stop)
    echo -n "Shutting down dynamic address update: "
    start-stop-daemon --stop --oknodo --retry 30 --exec $DAEMON
    echo "noip2."
    ;;
 
    restart|force-reload)
    echo -n "Restarting dynamic address update: "
    start-stop-daemon --stop --oknodo --retry 30 --exec $DAEMON
    start-stop-daemon --start --exec $DAEMON
    echo "noip2."
    ;;
 
    *)
    echo "Usage: $0 {start|stop|restart|force-reload}"
    exit 1
  esac
  exit 0
  sudo chmod 755 /etc/init.d/noip2
  sudo update-rc.d noip2 defaults
Ouverture des ports de la live box
Nom du serveur       :	no-ip
Accès activé         :	oui
Du port              :	8245
Au port              :	8245
Protocole            :	UDP
Adresse IP locale    : 192.168.1.11	

Partage de l'abonnement au bouquet satellite

Dans le cas où vous avez une parabole dont la tête présente 2 sorties, il vous est possible de la connecter à un deuxième ordinateur de votre maison.

Pour éviter d'avoir à payer 2 fois son abonnement à un bouquet satellite, ou encore 2 fois l'ensemble lecteur + carte TNTSAT, il vous est possible d'accéder au serveur OSCAM de votre premier PC avec le deuxième.

Pour cela, installer simplement TVHeadend sur votre deuxième PC de la même manière que celle indiquée précédemment, et indiquez votre addresse IP fixe locale 192.169.1.11 à la place de 127.0.0.1 lors de la configuration du “Code Word Client”. Si par hasard vous ne seriez pas sur le même réseau utilisez votre adresse NoIP.

Partage des chaines TV et Radio

De même, il vous sera possible d'aller vous mettre sous la couette avec votre PC portable pour regarder la TV satellite. En accédant aux streams générés par TVheadend, il est possible de profiter de votre télé dès lors que la connection à internet vous le permet.

Partage de média stockés sur un disque dur

Protocole UpnP

Installation de mediatomb

Configuration

Accès à l'interface web

Accès depuis XBMC

Annexes

Lecture de blu-rays

Utilisation de Makemkv avec mplayer

*Mode graphique*

makemkv 

*Ligne de commande*

makemkvcon stream disc:0 --cache=128 --minlength=4800
mplayer -fs -demuxer lavf -vo vdpau:hqscaling=1 -vc ffmpeg12vdpau,ffh264vdpau,ffvc1vdpau,ffwmv3vdpau, -vfm ffmpeg, -ao pulse -ac fftruehd,ffdca,ffeac3,ffac3,fflpcm, -afm ffmpeg, -alang en -slang en -forcedsubsonly -channels 6 -af volnorm -cache 8192 -dvd-device /dev/dvd1 http://localhost:51000/stream/title0.ts
Utilisation de Makemkv avec VLC
1)
voir : sudo
2)
voir : kvm par exemple
3)
voir : apt
4)
voir : console
5)
voir : chmod