Pour aller un peu plus loin avec MediaTomb
Possesseur d’une PlayStation3 et d’une FreeboxHD, j’accède fréquemment aux fichiers images, audios et vidéos stockés sur mon Ubuntu 9.04. Pour ça, j’utilise le logiciel libre MediaTomb, basé sur le protocole UPnP.
Une grosse colère, une bonne dose de patience et un peu de temps libre m’ont récemment permis de régler quelques soucis récurrents pour enfin pouvoir :
- Démarrer MediaTomb en même temps que le pc,
- Lire des fichiers MKV sur la PS3 (après conversion),
- Me faciliter l’accès aux données.
Pour commencer, installer MediaTomb puis éditer le fichier de configuration /etc/default/mediatomb et changer la ligne (à adapter à votre interface réseau) : INTERFACE="eth0"
Démarrage automatique
Sur ma distribution 9.04, le script /etc/init.d/mediatomb ne lance pas le logiciel automatiquement. Après quelques recherches, le problème vient du fait que le script de MediaTomb se lance en même temps celui des services réseaux.
J’ai cru comprendre que le processus INIT démarre tout ce qui se trouve dans /etc/rcS.d/ puis lance par défaut le runlevel 2. Or avec la version 9.04 Jaunty, le script /etc/init.d/networking se situe maintenant lui aussi dans /etc/rc2.d avec une priorité de 20.
Il me semblait pourtant que init avait été remplacé par upstart… si vous pouvez m’en dire plus, je suis preneur !
Des solutions existent ici et là mais j’ai finalement opté pour modifier la priorité de démarrage du script dans chaque runlevel.
sudo update-rc.d -f mediatomb remove
sudo update-rc.d mediatomb defaults 99
Les numéros les plus petits étant démarrés en premiers, le script de MediaTomb (priorité à 99) démarre après celui des services réseaux dont la priorité est à 20.
Lire des vidéos MKV
Par défaut la PS3 ne supporte pas le format Matroska Video. Il suffit donc de convertir ces fichiers au format TS ou M2TS, le format par défaut du Blu-ray (solution extraite de ce thread du forum Ubuntu-fr)
Pour que MediaTomb supporte les formats HD TS et M2TS, ajouter dans /etc/mediatomb/config.xml les lignes :
<map from="ts" to="video/mp2t"/>
<map from="m2ts" to="video/mpeg"/>
Pour convertir un MKV dans ces formats, nous allons utiliser le script H264ToBox, dont l’évolution peut être suivie sur ce thread.
Récupérer la dernière version du script sur ce site ainsi que TsMuxer sur le site SmartLabs.
Les copier dans un répertoire de votre PATH (classiquement /usr/local/bin) et rendre h264tobox exécutable :
sudo mv h264tobox /usr/local/bin/
sudo mv tsMuxeR /usr/local/bin/
sudo mv tsMuxerGUI /usr/local/bin/
sudo chmod +x /usr/local/bin/h264tobox
Ce script a encore quelques dépendances à satisfaire, listées sur la page des scripts utiles de la documentation Ubuntu-fr et installable en cliquant sur ce lien APT.
La conversion se fait à l’aide de l’une de ces commandes (h264tobox –help pour l’aide) :
h264tobox -i fichier.mkv
h264tobox -i fichier.mkv -o m2ts
Durée de l’opération sur mon vieux pc d’environs 7 minutes pour 4.3Go. N’hésitez pas tester avec ce sample.
Ce n’est pas une solution qui fonctionne toujours mais bon nombre de fichiers MKV sont maintenant lisibles sur la PS3 !
Personnalisation
MediaTomb retranscris sur la PS3 la même arborescence que celle de votre ordinateur. Pour éviter d’avoir à aller au fin fond de plusieurs répertoires, une solution consiste à créer des liens symboliques dans un nouveau répertoire créé à la racine, tout simplement !
Vous pouvez modifier le nom qui s’affiche dans le menu de la PS3 en éditant le fichier /etc/mediatomb/config.xml et en remplaçant la valeur entre les balises name pour obtenir par exemple :
<name>sidney_v</name>
Pour changer l’icône associé à MediaTomb sur la PS3 :
sudo cp monimage.png /usr/share/mediatomb/web/icons/mt-icon120.png
Extra : pour ajouter la gestion des MKV à la Freebox, ajouter la ligne suivante dans le fichier /etc/mediatomb/config.xml
<map from="mkv" to="video/x-matroska"/>
Prise en charge des caractères accentués
Lorsque MediaTomb démarre en tant que service, l’encodage des noms de répertoires/fichiers avec accent se retrouvent tronqués. Pour corriger cela, après les lignes :
</server>
<import hidden-files="no">
insérer :
<filesystem-charset>UTF-8</filesystem-charset>
<metadata-charset>UTF-8</metadata-charset>
<playlist-charset>UTF-8</playlist-charset>
Et pour ceux qui voudraient aller plus loin (je manque de temps), regardez du côté des rubriques transcoding et scripting de la documentation officielle…
Les articles sur le même sujet :
Tags HowTo, Planet-Libre, tutoriel, ubuntu + Dans la catégorie Actu libre

Oulala ça m’a l’air bien compliqué mediatomb ! Si tu ne connais pas, je te recommande chaudement PS3 media server (http://ps3mediaserver.blogspot.com/).
).
C’est très simple à utiliser et ça marche vraiment bien (avec incrustation auto des sous titres dans les vidéos, ça, ça rox
Va sur le forum récupérer la dernière version (qui doit dater de juillet il me semble, j’ai pas regardé s’il y avait une autre version plus récente encore), elle permet de causer aussi à la freebox HD.
Cela n’a pas marché pour moi le changement de priorité du script de démarrage. j’ai été obligé de rajouter sleep 120 dans le script de démarrage de mediatomb.
Pour le problème des charset, j’avais mis à jour la doc du site ubuntu-fr il y a quelques temps déjà.
J’ai un problème pour lequel je n’ai pas trouvé de solution. J’ai une installation PC sous 9.04, une FBX HD, une PS3 et une TV DLNA SAMSUNG. J’ai galéré pendant un mois pour faire tourner mediatomb sur la TV, mais j’ai trouvé ( et complété au passage la doc ubuntu rubrique TV SAMSUNG) Par contre, depuis, mes videos ne sont plus lues sur la fbx hd.
Du coup, j’ai tout de même trouvé 2 solutions pour la fbx: Homeplayer ou minidlna, un super logiciel que j’ai découvert au cours de mes recherches. Il s’agit d’un serveur DLNA minimaliste mais qui tourne au poil. Son seul défaut est qu’il ne permet pas de modifier les mimes type. Du coup mes mkv ne passaient pas sur la TV
Je plussoie Flink pour ps3mediaserver. Un tres tres bon prog pour povoir tout lire sur sa PS3.Le pricipal avantage que tu y trouveras sera le transcodage en temps réel de tous les formats non supportés par la PS3.
La derniere version en date est sur le forum officiel 1.11.363 il me semble.
PS3 Media Server est vraiment remarquable ! Après seulement quelques secondes tout est fonctionnel et les possibilités sont impressionnantes : flux RSS Picasa, Youtube, TV sur internet, shoutcasts, podcasts & co
Je ne connaissais pas, merci bien
Ah ouais tout de même, il faut que je teste ça sur la mienne ça a l’air bien sympa
PS3 Media Server est très sympa, mais MediaTomb est plus roots et plus personnalisable au final. Mais il faut mettre les mains dans le camboui
Merci pour ces infos, il y a cependant une faute de frappe dans :
UTF-8
^^^^^^^^^
La bonne syntaxe est :
UTF-8
Merci pour ces infos, il y a cependant une faute de frappe dans :
« UTF-8″
^^^^^^^^
La bonne syntaxe est :
« UTF-8″
Désolé, pour les rebonds, les syntaxes avec des ne passent pas dans les commentaires…
Merci pour ces infos, il y a cependant une faute de frappe dans :
mapfilesystem-charset UTF-8 map/filesystem-charset
^^^^^^^^^
La bonne est :
mapfilesystem-charset UTF-8 /mapfilesystem-charset
Le tout avec les qui vont bien autour des mapfilesystem-charset
Merci manu pour ta persévérance
Je viens de modifier le billet pour tenir compte de ta remarque ; si ce n’est pas correct, fais-moi signe par mail depuis la page d’accueil du site… à bientôt !
Bonjour,
J’aimerai afficher en tant que vignettes les covers des films qui sont dans le même repertoire.
Quelqu’un aurai une idée?
Juste pour répondre à ma propre question , voici comment j’ai fait pour afficher les covers des films que ce trouvent dans un dossier sur le serveur, sur la ps3 à partir de mediatomb.
tout d’abord, voici les modifications à effectuer dans le config.xml
1. activer le transcodage:
2. ajouter les mimetype des formats fichiers à afficher:
ex:
…
3. rajouter un profil nommé covers:
image/jpeg
yes
yes
128×128
Ensuite copier le script suivant dans /usr/local/bin/covers.sh
#!/bin/bash
DOSSIERCOVERS= »/home/hora/covers »
MISSING= »missing »
FILE=$(basename « $1″)
if [ -f "$DOSSIERCOVERS/$FILE.jpg" ];
then
cp « $DOSSIERCOVERS/$FILE.jpg » $2
else
cp « $DOSSIERCOVERS/$MISSING.jpg » $2
fi
- Dans le script donner le chemin d’accès au répertoire des images ainsi que le nom de la vignette de remplacement.
Attention, les vignettes doivent s’appeller de cette facon: « nom du film’. »extension ».jpg
ex:
pour le film very_bad_trip.avi, l’image doit s’appeller : very_bad_trip.avi.jpg
rebooter mediatomb
si certaine vignettes ne s’affichent pas vérifier dans un premier temps que le nom soit correct dans votre répertoire et que le mimetype correspondant au format de la vidéo soit bien dans le config.xml
voili voilou.
Hora
Oops point 1, 2, 3
1. activer le transcodage:
» »
2. ajouter les mimetype des formats fichiers à afficher:
ex:
» »
» »
…
3. rajouter un profil nommé covers:
» »
» image/jpeg »
» yes »
» yes »
» 128×128″
» »
» »
» «