MATÉRIEL Installation d'une carte TNT
Un article de Gentoo Linux Wiki.
| Méthodes d'installation • CD Live • Noyau et matériel • Portables et Notebooks • Portage • Système • Réseaux et Services • Serveur X • Logiciels fréquemment utilisés • Autres |
Sommaire |
[modifier] Introduction
La Télévision Numérique Terrestre (TNT) permet de disposer d'un plus grand nombre de chaines et surtout de disposer d'une meilleure qualité d'image que les chaines hertzienne ainsi que, sur certaine chaines, d'un son Dolby5.1, d'une image 16/9e, du son en version originale et en version française...
GNU/Linux supporte un certain nombre de cartes DVB-T permettant de recevoir les flux MPEG-2. Cet article va vous guider dans l'installation d'une carte DVB-T, plus précisément une carte PCI Hauppage Nova-T, et dans l'utilisation de cette carte (visualisation de la TV, streaming).
[modifier] Matériel
Il faut une carte PCI DVB-T. Très peu de boitiers USB sont actuellement supportés.
Toutes les cartes DVB-T ne sont pas encore supportés sous Linux, mais il y en a de plus en plus.
Les cartes les plus courantes n'ont pas de décompresseur mpeg-2, ce qui nécessite donc un ordinateur ayant un minimun de puissance (un Athlon 800Mhz est suffisant) ou une carte de décompression supplémentaire.
La carte PCI Hauppage WinTV Nova-T est actuellement supporté dans ses 2 versions (avec les chipsets philips et conexant), cet article va s'appuyer sur la configuration de cette carte.
Une liste des cartes supportées sous Linux est disponible ici : http://www.linuxtv.org/wiki/index.php/PCI_devices_DVB-T
[modifier] Installation
[modifier] Patch
Pour la carte PCI Hauppage WinTV Nova-T seconde édition (celle vendu actuellement) ainsi que pour les cartes Pinnacle PCTV MediaCenter 300i et 200i et la carte AVerMedia AVerTV DVB-T 771, il faut télécharger le patch All-2.6.11-2.diff.gz(en remplaçant 2.6.11-2 par votre version du noyau Linux).
Téléchargez le patch sur http://dl.bytesex.org/patches/
Vous devez posséder les sources du noyau Linux (fournis par votre distribution ou sur http://www.kernel.org).
cd /usr/src/linux wget http://dl.bytesex.org/patches/2.6.11-2/All-2.6.11.diff.gz gunzip All-2.6.11.diff.gz patch –dry-run -p1 < All-2.6.11.diff
Si il n'y a aucune erreur vous pouvez tapez :
patch -p1 < All-2.6.11.diff
| Note: Ce patch n'est normalement plus nécessaire depuis la 2.6.12 |
[modifier] Configuration du noyau
Pour la carte PCI Hauppage WinTV Nova-T seconde édition, Pinnacle PCTV MediaCenter 300i et 200i et la carte AVerMedia AVerTV DVB-T 771 vous devez avoir ceci dans le fichier .config :
| Fichier : .config |
# # Multimedia devices # CONFIG_VIDEO_DEV=m # # Video For Linux # # # Video Adapters # CONFIG_VIDEO_CX88=m CONFIG_VIDEO_CX88_DVB=m # # Digital Video Broadcasting Devices # CONFIG_DVB=y CONFIG_DVB_CORE=m # # Supported SAA7146 based PCI Adapters # CONFIG_DVB_AV7110=m CONFIG_DVB_AV7110_OSD=y CONFIG_DVB_BUDGET=m CONFIG_DVB_BUDGET_CI=m CONFIG_DVB_BUDGET_AV=m CONFIG_DVB_BUDGET_PATCH=m # # DVB-T (terrestrial) frontends # CONFIG_DVB_CX22700=m CONFIG_DVB_CX22702=m CONFIG_DVB_MT352=m |
Soit en plus clair pour un noyau 2.6.11 :
cd /usr/src/linux make menuconfig
Allez dans “Device Drivers” puis “Multimedia devices”. Mettez “Video For Linux” en module. Allez dans “Video For Linux”. Mettez ici “Connexant 2388x (bt878 successor) support” puis “DVB Support for cx2388x based TV cards” en module. Retournez en arriére et allez dans “Digital Video Broadcasting Devices”. Mettez “DVB For Linux” puis “DVB Core Support” en module. Ajoutez “AV7110 OSD support” en dur, et “Budget cards”, “Budget cards with onboard CI connector”, “Budget cards with analog video inputs” ainsi que "AV7110 cards with Budget Patch” en module. Enfin allez dans “Customise DVB Frontends” et mettez “Zarlink MT312 based”, “Conexant CX22700 based” ainsi que “Conexant cx22702 demodulator” en module.
[modifier] Compilation du noyau et installation
Comme d'habitude pour compiler un noyau Linux 2.6 tapez :
make make modules_install make install
Modifier grub.conf ou lilo.conf si vous avez changé de noyau.
Il est fortement conseillé d'installer hotplug ou coldplug afin de charger automatiquement les modules au démarrage.
Pour charger les modules “à la main” tapez :
modprobe mt352 modprobe dvb-bt8xx
Si besoin créez les régles udev comme ceci (provient d'un message de Richie Jarvis) : Supprimez les régles DVB déjà présente si il y en a.
Ajoutez ceci dans le fichier contenant les régles (dans /etc/udev/rules.d) :
| Fichier : /etc/udev/rules.d |
# DVB Support KERNEL="dvb*", PROGRAM="/etc/udev/scripts/dvb.sh %k", NAME="%c" |
Ajoutez le script suivant dans /etc/udev/scripts :
| Fichier : /etc/udev/scripts |
#!/bin/sh /bin/echo $1 | /bin/sed -e 's,dvb\([0-9]\)\.\([^0-9]*\)\([0-9]\),dvb/adapter\1/\2\3,' |
[modifier] Vérifications
Redémarrez l'ordinateur avec le nouveau noyau configuré.
Tapez lsmod pour vérifier que les modules de la carte DVB-T sont bien chargés.
Vous devriez avoir quelque chose de ce type :
Module Size Used by cx88_dvb 5700 0 cx8802 7684 1 cx88_dvb mt352 6276 1 cx88_dvb or51132 9860 1 cx88_dvb video_buf_dvb 4740 1 cx88_dvb dvb_core 78568 1 video_buf_dvb cx22702 8452 1 cx88_dvb dvb_pll 3396 3 cx88_dvb,or51132,cx22702 cx8800 26828 0 cx88xx 49056 3 cx88_dvb,cx8802,cx8800 ir_common 6212 1 cx88xx v4l1_compat 13636 1 cx8800 saa7127 12252 0 msp3400 26488 0 saa7115 12120 0 ivtv 807524 2 bttv 147920 0 video_buf 17668 6 cx88_dvb,cx8802,video_buf_dvb,cx8800,cx88xx,bttv firmware_class 7936 2 or51132,bttv i2c_algo_bit 8840 3 cx88xx,ivtv,bttv v4l2_common 4736 2 cx8800,bttv btcx_risc 3912 4 cx8802,cx8800,cx88xx,bttv tveeprom 11672 2 cx88xx,bttv videodev 7616 4 cx8800,cx88xx,ivtv,bttv
(sachant qu'il y a également sur cet ordinateur une carte Hauppage PVR 250 ainsi qu'une Pinnacle PCTV Rave).
[modifier] Configuration
[modifier] Fréquences des chaînes
Il faut commencer par récupérer les noms et les fréquences des chaines de TV.
Vous devez installer les utilitaires de linuxtv.org : http://www.linuxtv.org/downloads/ Pour Gentoo il y a un ebuild sur http://gentoo.zugaina.org/
Si il n'y a pas de paquet présent pour votre distribution vous devez procéder à une installation manuelle :
wget http://www.linuxtv.org/downloads/linuxtv-dvb-apps-1.1.0.tar.bz2 tar xjvf linuxtv-dvb-apps-1.1.0.tar.bz2 cd linuxtv-dvb-apps-1.1.0 make
Maintenant il faut rechercher les chaines de la TNT.
Pour cela il faut utiliser le programme scan situé dans “util/scan” de linuxtv-dvb-apps.
Tapez :
./scan dvb-t/uk-Oxford | tee channels.conf (Remplacez “uk-Oxford” par votre lieu de résidence)
Pour la France il n'y a pas de fichiers présents. Il faut donc en créer un.
Voici celui pour l'émetteur de Paris – Tour Eiffel :
| Fichier : fr-Paris |
# Paris – Tour Eiffel # T freq bw fec_hi fec_lo mod transmission-mode guard-interval hierarchy T 562000000 8MHz 2/3 NONE QAM64 8k 1/32 NONE T 498000000 8MHz 2/3 NONE QAM64 8k 1/32 NONE T 474000000 8MHz 2/3 NONE QAM64 8k 1/32 NONE T 586000000 8MHz 2/3 NONE QAM64 8k 1/32 NONE T 522000000 8MHz 2/3 NONE QAM64 8k 1/32 NONE T 650000000 8MHz 2/3 NONE QAM64 8k 1/32 NONE T 490000000 8MHz 2/3 NONE QAM64 8k 1/32 NONE T 514000000 8MHz 2/3 NONE QAM64 8k 1/32 NONE |
Pour créer votre fichier : Utilisez le site http://www.tvnt.net/couverture.php#3 pour trouver les canaux des multiplex numériques. Il faut transformer les canaux en fréquence pour cela utiliser la formule suivante :
Fréquence (Hz) = (306 + 8*(N° du canal))*1000000
Ensuite ajouter la ligne suivante dans le fichier :
T fréquence 8MHz 2/3 NONE QAM64 8k 1/32 NONE
(remplacez fréquence par le chiffre que vous avez trouvé)
Ainsi si le canal est 35 la ligne a écrire dans le fichier sera :
T 586000000 8MHz 2/3 NONE QAM64 8k 1/32 NONE
Répétez cette opération pour tous les canaux multiplex.
Une fois le fichier créer tapez :
./scan fichier | tee channels.conf
Conservez le fichier ainsi créer précieusement, il est nécessaire pour l'utilisation de plusieurs programmes.
[modifier] Test de l'installation
Vous avez besoin pour cela de tzap qui est présent dans le répertoire “util/szap” de “linuxtv-dvb-apps”.
Tapez :
./tzap -c ../scan/channels.conf TF1
Vous devriez alors avoir ceci :
using '/dev/dvb/adapter0/frontend0' and '/dev/dvb/adapter0/demux0' tuning to 562000000 Hz video pid 0x0078, audio pid 0x0082 status 00 | signal ffff | snr c000 | ber 00003fff | unc 00000000 | status 1f | signal 3636 | snr ffff | ber 00000000 | unc 00000000 | FE_HAS_LOCK status 1f | signal 3636 | snr ffff | ber 00000000 | unc 00000000 | FE_HAS_LOCK status 1f | signal 3636 | snr ffff | ber 00000000 | unc 00000000 | FE_HAS_LOCK
Si vous avez le texte “FE_HAS_LOCK” ceci signifie que la carte a trouvé le signal donc que tout devrait fonctionner correctement.
[modifier] Utilisation
[modifier] Mplayer
Installez Mplayer USE=”dvb” emerge mplayer
Copiez maintenant le fichier “channels.conf” créé au chapitre précédent dans le répertoire “~/.mplayer/”.
Pour voir une chaine tapez ensuite :
mplayer dvb://”TF1”
Remplacez “TF1” par le nom de la chaine inscrite dans le fichier “channels.conf” que vous voulez.
Pour enregistrer une chaine avec mencoder (distribuer avec mplayer) tapez ceci :
mencoder -avc copy -ovc copy dvb://”TF1” -o fichier_de_destination.mpg
[modifier] MythTV
MythTV est une interface graphique pour les cartes TV. Il permet de faire de votre PC un magnétoscope numérique et, par l'ajout de modules, de voir des photos, des vidéos, la météo, de jouer,...
MythTV supporte parfaitement les cartes DVB-T.
Installez MythTV
USE=”dvb” emerge mythtv
(faites de même pour tous les modules que vous voulez) Puis aller lire la documentation sur http://www.mythtv.org
Pour l'affichage du programme des chaines de télé dans MythTV vous devez éditer à la main la base de donnée en rajoutant l'adresse du programme sur le site guidetele.com ou telepoche.com
La version 0.5.40 de xmltv ajoute la gestion des chaines de la TNT française et permet donc de se passer de cette manipulation.
[modifier] Freevo
Freevo est, tout comme mythtv, une interface graphique pour les cartes TV. Il supporte également parfaitement les cartes DVB-T.
Installez Freevo emerge freevo
Pour la configuration avec une carte DVB-T, ce site explique les manipulations à faire : http://www.lahiette.com/biboobox/?Freevo/La+TNT
[modifier] VideoLan
[modifier] Client local
Il faut pour voir la télé, VLC 0.7.2 minimun.
USE=”dvb wxwindows” emerge vlc
Pour regarder M6 de l'émetteur de Paris – Tour Eiffel, il suffit de lancer ceci :
vlc --programs 1025 -vvv --color --ttl 12 dvb:// --dvb-frequency=498000000 --dvb-adapter=0 --dvb-bandwidth=8
Le changement de chaine est expliqué dans le paragraphe suivant.
[modifier] Stream (flux réseau)
Pour diffuser le flux mpeg de la carte il faut utiliser VLC 0.7.2 minimun.
Sous Gentoo, installez le en tapant :
USE=”dvb” emerge vlc
La ligne pour diffuser M6 de l'émetteur de Paris – Tour Eiffel en unicast à l'ordinateur disposant l'adresse ip 192.168.1.2 est la suivante :
vlc --programs 1025 -vvv --color --ttl 12 dvb:// --dvb-frequency=498000000 --dvb-adapter=0 --dvb-bandwidth=8 --sout '#duplicate{dst=standard{mux=ts,access=udp,url=192.168.1.2,sap,name="[TNT] M6",group="TNT"},select="program=1025"' --intf rc
Pour obtenir les informations, il faut consulter le fichier “channels.conf” créé au chapitre précédent.
Voici la premiére ligne d'un fichier channels.conf :
TF1:562000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_2_3:FEC_NONE:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_32:HIERARCHY_NONE:120:130:1537
Ainsi pour TF1 la ligne devient :
vlc --programs 1537 -vvv --color --ttl 12 dvb:// --dvb-frequency=562000000 --dvb-adapter=0 --dvb-bandwidth=8 --sout '#duplicate{dst=standard{mux=ts,access=udp,url=192.168.1.2,sap,name="[TNT] TF1",group="TNT"},select="program=1537"' --intf rc
Il faut donc changer la fréquence qui est en 2éme dans la ligne provenant du fichier channels.conf et le numéro du programme qui est toujours à la fin de la ligne.
Pour récupérer le flux unicast sur l'ordinateur distant, lancez VLC, puis cliquez sur “Fichier”, “Ouvrir un flux réseau...” et cocher “UDP/RTP” et vérifiez que le port est bien 1234. Cliquez sur “OK”. Vous devez maintenant recevoir le flux envoyer par votre serveur.
