blog.bressure.net

Carnet professionnel d'un informaticien

Application, Paramétrage

Synchronisation des fichiers multimedia du N900 avec un PC

admin
Nokia N900 communicator/internet tablet
Image via Wikipedia

Dans la catégorie des smatphones le N900 fait figure d’ovni. Il ne jouit pas d’une réputation, justifiée, de machine grand public. La synchronisation des fichiers multimédia en est un exemple. Alors que la concurrences permet une synchronisation sans effort d’une bibliothèque de chansons avec le téléphone, le N900 manque d’application user-friendly . En effet avec un Iphone, on a ITune et même à l’époque des pocket PC, Windows Media Player permettait de garder la synchronisation.

La problématique exposée ici est celle d’amener avec soi sa bibliothèque multimédia afin d’en jouir en mobilité. Le N900 est sans doute la machine la plus à même de répondre à ce besoin avec ses 27 Go disponibles. La solution de la copie plus une synchronisation par rsync satisfont parfaitement mais de nos jours la bibliothèque des fichiers que les gens ont sur leur ordinateur peut dépasser les 27 Go ! Par ailleurs, on peut avoir besoin de place sur le N900 pour d’autre choses (enregistrement vidéo etc).

Le problème est donc de synchroniser un sous ensemble de sa bibliothèque multimedia PC. Bien entendu, cette synchronisation doit être automatique.

Les logiciels pour N900 tel que MediaBox permettent la sélection manuelle des certains fichiers stockés à distance par UPnP (via MediaTomb) mais il faut soi-même supprimer les fichiers obsolètes et en choisir de nouveaux. Le grand public est fainéant.

Heureusement que la solution n’est pas compliquée et facile à implémenter. L’idée est de fournir au N900 une liste de fichiers à prendre sur le PC. Cette liste doit changer car il serait dommage d’avoir toujours les mêmes chansons  à écouter…

L’utilitaire GoMedia écrit en python offre une commande en ligne paramétrable pour générer une liste de fichier. L’exemple suivant sélectionne aléatoirement pour 10 Mo max de fichier audio pris dans le répertoire spécifié par l’option -d et génère un fichier n900_playlist:

gomusic -m 10 -d /home/thierry/Musique/ -o /home/thierry/Musique/n900_playlist

Cette commande sera planifiée par un script /etc/cron.hourly/gomusic

#!/bin/sh
gomusic -m 10 -d /home/thierry/Musique/ -o /home/thierry/Musique/n900_playlist

La fréquence choisie permet de prendre en compte les nouveaux fichiers de la bibliothèque dans l’heure qui suit une modification.

Ensuite pour rendre ce fichier accessible au N900 qui sera l’initiateur de la synchronisation, on peut le mettre sur une url web accessible uniquement depuis le réseau interne en créant le fichier /etc/apache2/conf.d/gomusic

Alias /gomusic /home/thierry/Musique
<Location /gomusic>
 Order Allow,Deny
 Allow from 192.168.0.0/255.255.0.0
</Location>

Ainsi l’url http://<mon_ip>/gomusic/n900_playlist ne sera accessible que depuis l’intranet. Lorsque le N900 sera dans le réseau local il suffira de lui faire faire un wget à cette url pour obtenir une liste de fichiers de musique. Le script suivant permet par exemple de synchroniser le répertoire /home/user/MyDocs/.sound/jesus avec cette liste

#!/bin/sh
wget -O /home/user/n900_playlist -T 10 -t 1 -q http://192.168.0.12/gomusic/n900_playlist;
if [ $? -ne 0 ]; 
then
 exit 1
fi
rm -r /home/user/MyDocs/.sounds/jesus;
rsync --files-from /home/user/n900_playlist 192.168.0.12::musique  /home/user/MyDocs/.sounds/jesus

L’automatisation de cette tâche peut être faite avec l’outil Alarmed pour être déclenchée par exemple tous les soirs à 23h.

Tags:

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.

Back to top