Installation d’un serveur DLNA sur le DNS320

Après avoir installé le fun_plug dans le précédent numéro pour prendre le contrôle de notre DNS320, passons aux choses sérieuses en installant deux ou trois applications comme un serveur DLNA.

Pour ceux qui ne le savent pas un serveur DLNA est un serveur UPnP (un protocole réseau universel, analogue au Pnp en connexion) qui permet de diffuser du contenu multimédia dans toute la maison.

De nombreux clients DLNA existent, notamment les télés les plus récentes, la PS3 et la freebox V5. On peut facilement installer un serveur DLNA sur PC Windows, c’est d’ailleurs le cas avec Windows Media Player.

Dans mon cas le DNS320 a déjà un serveur DLNA, mais la freebox v5 ne le reconnait pas. Avec fun_plug on peut installer un autre serveur DLNA venant du monde Linux. Deux serveurs sont particulièrement connus, MiniDLNA et Mediatomb. MiniDLNA est un serveur assez simple mais efficace; Mediatomb est un serveur un peu plus élaboré. La version 0.7 de fun_plug ne les préinstalle pas, il faut les installer soi-même.

Pour installer ces serveurs, la première chose à faire est de vérifier les prérequis sur les pages officielles de MiniDLNA et de Mediatomb. C’est simple, il suffit de noter tous les composants required ( ou recommandé ) et de récupérer les packages correspondants avec slacker :

# recup des prerequis
slacker -a mysql
slacker -a expat
...

Ensuite on installe les serveurs

slacker -a minidlna
slacker -a mediatomb

Les serveurs se lancent via un script sh dans le répertoire start, en passant en paramètre start, stop, restart ou status.
Attention, ne pas lancer les serveurs en même temps !

# exemple pour mediatomb
/ffp/start/mediatomb.sh start

Le paramètre status permet de vérifier si le serveur est bien lancé

/ffp/start/minidlna.sh status
minidlna not running
# minidlna ne tourne pas
/ffp/start/mediatomb.sh status
mediatomb running as pid 3941
# mediatomb si

Certains composants peuvent aussi manquer à l’appel pour les exécutables. Il faut vérifier les librairies utilisées avec ldd. Il faut ensuite installer les librairies manquantes avec slacker.

ldd /ffp/bin/minidlna
ldd: can't open cache '/ffp/etc/ld.so.cache'
        libjpeg.so.8 => not found
        libid3tag.so.0 => /ffp/lib/libid3tag.so.0 (0x4000f000)
        libsqlite3.so.0 => /ffp/lib/libsqlite3.so.0 (0x40026000)
        libz.so.1 => /ffp/lib/libz.so.1 (0x4008a000)
        libm.so.0 => /ffp/lib/libm.so.0 (0x400a5000)
        libexif.so.12 => not found
        libdl.so.0 => /ffp/lib/libdl.so.0 (0x400bf000)
        libiconv.so.2 => /ffp/lib/libiconv.so.2 (0x400ca000)
        libintl.so.8 => /ffp/lib/libintl.so.8 (0x401b2000)
        libc.so.0 => /ffp/lib/libc.so.0 (0x401c2000)
        libpthread.so.0 => /ffp/lib/libpthread.so.0 (0x40227000)
        libgcc_s.so.1 => /ffp/lib/libgcc_s.so.1 (0x40243000)
        ld-uClibc.so.0 => /ffp/lib/ld-uClibc.so.0 (0x40000000)
# il manque libjpeg, lebexif
slacker -a libjpeg
slacker -a libexif

Si ça ne marche toujours pas les messages d’erreur peuvent aider dans la résolution des problèmes.
Dans mon cas j’avais :

[2012/09/12 19:29:55] daemonize.c:104: error: Unable to open pidfile for writing /ffp/var/run/minidlna/minidlna.pid: No such file or directory
[2012/09/12 19:29:55] minidlna.c:940: warn: Starting MiniDLNA version 1.1.0-cvs [SQLite 3.5.6].
Segmentation fault

Il fallait créer le répertoire /ffp/var/run/minidlna/ et installer SQLite ( et non MySQL ).

mkdir /ffp/var/run/minidlna/
slacker -a sqlite

Voilà, il faut connaître un peu Linux pour installer un serveur DLNA sur le DNS320, mais ça vaut le coup, maintenant la freebox reconnait le NAS parfaitement.
Dans le prochain article j’expliquerai comment configurer le fichier xml de configuration de Mediatomb pour la freebox.

8 réflexions au sujet de « Installation d’un serveur DLNA sur le DNS320 »

  1. Bonsoir,

    En suivant le tuto, pour mon cas
    mediatomb ne se lancer pas a cause de lib non trouvées:
    mediatomb: can’t load library ‘libsqlite3.so.0′
    mediatomb: can’t load library ‘libcurl.so.4′

    il manquait deux packages pour pouvoir le lancer:
    slacker -a sqlite
    slacker -a curl

    SI ca peut aider.

  2. Bonjour

    Je suis en plaine installation (réinstallation) de fun_plug. Car jétais dans une version FFP assez ancienne.

    Enfin je souhaite faire causer ma TV Samsung avec mon DNS320.

    Pour rmédiatomb l’installation du package est done, mains la partie /ffp/start/mediatome.sh n’est pas créée.
    Après upgrade, j’ai dû faire un chmod +x de ce fichier.

    La commande ldd n’existe pas, donc je ne peux pas savoir ce qu’il manque. :/
    Peut-être que je n’ai pas installé un package pour avoir cette commande!?
    Si c’est la cas, lequel… si quelqu’un sait ;)

    Merci de votre aide.

    Franck

    • En précisant le chemin bin ?
      Le -R ne marche pas avec /ffp/start/minidlna.sh, il est implicite.
      Avec /ffp/bin/minidlna il devrait marcher.

  3. Bonjour,

    J’ai réussi à trouver comment paramétrer le .conf –> /mnt/HD/HD_a2/

    Sinon, au reboot, 2 processus minidlna démarrent.

    Je suppose qu’il s’agit de l’indexation ?
    L’un des 2 prend 95% du CPU

    Comment suivre l’avancée de l’indexation ?

    Merci

    • En effet, il faut passer par le répertoire de montage, par exemple chez moi :
      media_dir=V,/mnt/HD/HD_a2/videos
      Le V indiquant les vidéos.

  4. Bonjour,

    J’ai fait l’install de MiniDlNa.
    Il semble fonctionner.

    Seulement, FFP s’installe … dans le répertoire /Volume_1/ffp
    Or, mes média sont dans /Volume_1/Musique/

    Le root FFP ne voit pas mes répertoires de médias, comment configurer le minidlna.conf ?

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée.

Vous pouvez utiliser ces balises et attributs HTML : <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>