Crossepg sur PC

19 février 2014
Howto

Crossepg est habituellement un plugin utilisé sur les démodulateurs satellites et TNT sous Linux enigma 2. Il permet de connaître les programmes TV sur une semaine voire plus,mais aussi rechercher par mots-clefs, consulter une soirée entière,etc… Le format habituel utilisé est le xepgdb, un format facile à travailler pour ces démodulateurs, mais le format d’origine est le xmltv, plus fiable et offrant plus de sources de téléchargements. ce format est cependant difficile voire impossible à utiliser directement. Nous allons donc dans cet article voir comment générer directement un fichier epg.dat et l’utiliser directement dans un démodulateur. Pour ceux qui veulent s »épargner la phase de compilation, je fournis une archive x86 à déployer sur votre Linux en root.

1 Compilation et installation

Nous téléchargeons les sources soit en github, soit l’archive disponible directement sur le site de développement https://github.com/E2OpenPlugins/e2openplugin-CrossEPG , l’archive est là : https://github.com/E2OpenPlugins/e2openplugin-CrossEPG/archive/master.zip

Dézippons notre archives avec la commande unzip ou mc (midnight commander).
Nous avons à présent un dossier appelé e2openplugin-CrossEPG-master, allons-y avec la commande cd e2openplugin-CrossEPG-master

Nous avons besoin de quelques dépendances python, libxml++ et swift :

sudo apt-get install python2.7 python2.7-dev libxml++2.6-2 libxml++2.6-dev swift

Comme crossepg veut python 2.6, on va lui donner :

sudo ln -s /usr/include/python2.7 /usr/include/python2.6

Il y a un petit bug dans le script de compilation, éditez-le avec votre éditeur favori, par exemple gedit make_e2_x86.sh ligne 5, enlevez le + de CFLAGS+= » qui devient CFLAGS= »

Lançons la compilation avec la commande sh make_e2_x86.sh quelques minutes plus tard, selon la vitesse de votre processeur, une archive est créé dans le dossier out. Ceux qui ont téléchargés mon archive peuvent reprendre le fil ;-)

Installons crossepg avec la commande tar -zxvf out/crossepg-standalone_0.6.2_x86.tar.gz / ou tar -zxvf crossepg-standalone_0.6.2_x86.tar.gz / pour ceux qui ont téléchargés mon archive.

Notre crossepg est à présent installé.

2 Utilisation

Créons un dossier test et allons-y : mkdir test && cd test

Téléchargeons la liste des sources wget http://www.rytec.be/tools/rytec.sources.xml.20120529.zip dézippons là avec unzip ou mc.

Ouvrons ce document avec un éditeur gedit rytec.sources.xml &, nous voyons une liste xml classique en ordre alphabétique, cherchons Rytec France. Téléchargeons la liste des chaines françaises avec wget http://enigma2.world-of-satellite.com/epg_data/rytec.channels.xml.gz puis gunzip rytec.channels.xml.gz . Nous pouvons télécharger depuis un autre site au besoin, c’est tout l’intérêt des sources multiples. Nous avons la liste des chaines, il nous faut à présent les programmes, nous avons plusieurs source, prenons wget http://enigma2.world-of-satellite.com/epg_data/rytecxmltvcsat.gz puis gunzip rytecxmltvcsat.gz Seul ce fichier est mis à jour quotidiennement, les autres le seront soit à la suite d’une réorganisation des chaines, soit des sources.

Il nous manque encore notre fichier lamedb, chaque démodulateur a le sien, téléchargez le avec votre outil ftp habituel, il se trouve dans /etc/enigma2

Nous avons à présent tout ce qu’il nous faut, créons un dossier epg mkdir epg puis commençons.

/usr/crossepg/crossepg_xmltv -d epg rytec.channels.xml rytecxmltvcsat

30 secondes sur mon petit PC, sans doute moins chez vous,puis

/usr/crossepg/crossepg_dbconverter -l lamedb -e epg/epg.dat -d epg

Et voila, nous avons notre epg.dat, transférons le dans notre démodulateur à la place de l’ancien (selon vos réglages à ou à /hdd/crossepg), puis chargeons avec notre plugin crossepg « Force epg.dat reload », et voila nous avons nos programmes TV sur une semaine. Nous pouvons ajouter d’autres programmes, par exemple les érotiques, il n’y a pas de mal à se faire du bien…. ;-)

wget http://enigma2.world-of-satellite.com/epg_data/rytecxmltverotic.gz && gunzip rytecxmltverotic.gz

/usr/crossepg/crossepg_xmltv -d epg rytec.channels.xml rytecxmltverotic

/usr/crossepg/crossepg_dbconverter -l lamedb -e epg/epg.dat -d epg

Voila, on retransfère dans notre démodulateur et on recharge notre epg.dat Nous pouvons ainsi ajouter d’autres bouquets,mais n’oubliez pas les limites des démodulateurs.

Cela cous a paru une procédure longue ? OK, faisons-le en une commande ! Placez-vous dans le dossier test puis faites :

rm -f rytecxmltvcsat* && wget http://enigma2.world-of-satellite.com/epg_data/rytecxmltvcsat.gz && gunzip rytecxmltvcsat.gz && rm -f epg/* && /usr/crossepg/crossepg_xmltv -d epg rytec.channels.xml rytecxmltvcsat && /usr/crossepg/crossepg_dbconverter -l lamedb -e epg/epg.dat -d epg

Un petit y de confirmation pour effacer vos fichiers, si ce y vous embête ou si vous voulez automatiser la commande avec cron, faites :

rm -f rytecxmltvcsat* && wget http://enigma2.world-of-satellite.com/epg_data/rytecxmltvcsat.gz && gunzip rytecxmltvcsat.gz && /usr/crossepg/crossepg_xmltv -d epg rytec.channels.xml rytecxmltvcsat && /usr/crossepg/crossepg_dbconverter -l lamedb -e epg/epg.dat -d epg

Mais il est plus propre de virer les fichiers temporaires. Bons programmes !