| Si comme moi vous êtes sous mac, que vous possédez un iPod, et que vous téléchargez régulièrement vos émissions de TV (Séries, divx, etc,…) alors vous allez être intéressés par ce tutoriel, car voici la solution pour obtenir automatiquement les derniers épisodes de vos séries favorites sur votre iPod |
Attention, je previens tout de suite ce billet est assez technique et s’adresse à un public averti. Ce tutoriel décrit une élégante technique qui pour être comprise et mise en oeuvre, nécessite certaines connaissances en programmation (shell, xml, ruby). Mais rien de trop compliqué non plus, rassurez vous.
Le besoin
Pour beaucoup, l’un des inconvénients lorsque l’on a un iPod, c’est d’être obligé d’utiliser iTunes pour gérer son contenu.
Personnellement, pour la musique, cela ne me pose pas de problème : la synchronisation des playlists iTunes que j’ai sur l’ordi est une technique de gestion que je trouve sympa très efficace. En tout cas, plus pratique que le remplissage par copier coller de fichiers.
Par contre pour les vidéos, c’est autre chose : pour pouvoir lire une vidéo sur un iPod, elle doit être préalablement convertie dans le bon format (codec). Car c’est bien conu, on ne peut pas lire de fichiers .AVI sur un iPod! Et c’est bien dommage quand on a des tonnes fichiers de séries TV en AVI à portée de main.
La technique décrite ici permet d’accomplir ce que je n’imaginais même pas dans mes rêves les plus fous!
En combinant intelligement plusieurs outils et technologies simples :
Bittorent + RSS + Apache + Ruby + ffmpeg + cron + RSS(encore) + iTunes + iPod = Transpodder
on va réussir rendre automatique l’encodage puis l’importation des vidéos téléchargées, et cerise sur le gateau : cela se fera en tâche de fond et/ou pendant que vous n’êtes pas là.
Transpodder se présente sous la forme d’un script Ruby qui surveille votre répertoire "Téléchargements" où vos vidéos de séries TV arrivent habituellement une fois téléchargées, puis encode celles que vous avez préalablement choisies dans un format optimisé (mp4) pour l’iPod, et les place dans iTunes, en tant que podcasts prêts à être synchronisés.
La Conf
Tout commence avec votre logiciel de téléchargement. Une manière de faire, c’est de suivre le billet que j’avais écrit sur ma méthode pour matter les séries TV, avec le logiciel Miro. J’ai appris il y a peu de temps que cette méthode qui se base sur Bittorent et RSS s’appelle le broadcatching (définition sur wikipédia)
La première étape, c’est donc de faire pointer Transpodder sur le répertoire dans lequel se trouve vos derniers épisodes de séries. Ensuite, il faut spécifier le repertoire où enregistrer les vidéos au format iPod. Il faut que ce soit un répertoire qui est accessible depuis un serveur web Apache. Sur Mac Os X, il suffit que ce répertoire soit dans le ~/Sites de votre "home folder". Les vidéos une fois encodées doivent être accessibles depuis l’adresse at http://localhost/~username/ipodfiles.
Dernière étape, spécifiez (via des expressions régulières) quelles sont les séries que vous voulez synchroniser : il est en effet peu probable que vous souhaitiez synchroniser tous les fichiers qui se trouvent dans votre répertoire de téléchargement.
Comment ca marche
Transpodder parse votre répertoire de téléchargement, trouve les épisodes séries en question et encode les fichiers qu’il n’a pas dejà traité. Il crée un répertoire par série et génère un flux RSS de podcast contenant tous les épisodes disponibles. En ajoutant ce flux à iTunes, tous les épisodes futurs de cette série seront automatiquement ajoutés dans iTunes.

Les spécificités
Transpodder utilise FFMPEG en ligne de commade pour réaliser l’encodage. C’est une solution d’encodage très rapide, simple et efficace. Transpodder gère le redimensionnement des vidéos à la bonne taille.
En passant, voici les dimensions à configurer pour l’iPod Touch et l’iPhone :
4×3 = 426×320
16×9 = 480×270
Pour l’iPod vidéo 5ème génération :
4×3 = 320×176
16×9 = 320×240
Notez bien que Transpodder va uniquement encoder un épisode que si cela n’a pas déjà été fait. C’est simple mais smart! Parralèllement, il crée un fichier index.html file à la racine qui permet de lister tous les flux disponibles, un par série. Cela rends l’ajout à iTunes possible par un simple glissé-déposé depuis le navigateur web.

Technicités
Il y a quelques dépendances à satisfaire pour utiliser Transpodder.
- ffmpeg
- avitype or qt_info
Transpodder utilise FFMPEG pour encoder les vidéos. C’est un projet open source disponible gratuitement. Sous Mac Os X, il suffit d’extraire le binaire ffmpeg du projet ffmpegX et de le mettre dans un répertoire.
Si vous êtes sous linux, il vous faudra aussi le package transcode d’installé pour avoir accès à avitype. Si vous êtes sous Mac Os X, il faut télécharger et installer qt_tools. Sur l’une ou l’autre des plateformes, ces 2 applications servent simplement à determiner les dimensions de la vidéo d’origine à encoder.
C’est parti!
Une fois que tous les réglages mentionnés si dessus sont en place dans le script Ruby en début de fichier, vous obtenez un script complètement fonctionnel, qui necessite néamoins d’être executé à la main, mais avec un peu de connaissances de cron (je vous laisse potasser ca), vous pouvez lancer le script de manière périodique et automatique.
Pour le lancer à la main dans le terminal, positionnez dans le bon répertoire et lancer la commande : ruby transpodder.rb
Au final
Avec Miro, mes séries TV préférées sont téléchargées automatiquement (cf mon post sur miro), converties au format iPod avec transpodder, téléchargées par iTunes et placée dans mon iPod. Toute cette chaîne est totalement automatique. Une fois qu’une série est "configurée" dans le script transpodder, il n’y a plus aucune intervention humaine. Les épisodes apparaissent simplement sur mon iPod dès qu’ils sont disponibles.
Liens
Download Transpodder
FFMPEG: http://ffmpeg.sourceforge.net/index.php
Transcode: http://www.transcoding.org/cgi-bin/transcode
ffmpegX: http://homepage.mac.com/major4/
qt_tools: http://www.omino.com/~poly/software/qt_tools/