ReadyMedia (anciennement MiniDLNA) est un logiciel serveur dont l'objectif est d'être totalement compatible avec les clients DLNA/UPnP. Le démon MiniDNLA sert des fichiers multimédias (musique, images et vidéos) aux clients d'un réseau. Parmi les clients, on trouve par exemple des applications telles que totem et Kodi, et des appareils tels que des lecteurs multimédias portables, des smartphones, des téléviseurs et des consoles de jeu. 1)
Je m'en sers pour pouvoir visionner des vidéos sur l'ensemble des ordinateurs de la maison 2) avec VLC ainsi que la Playstation 3.
Pour pouvoir lire les fichiers sur la Playstation 3, il faut qu'ils soient compatibles avec les formats supportés 3).
Je ne vais pas expliquer comment configurer ReadyMedia car la page dédiée du wiki Archlinux est très bien faite. Par contre, il n'y a rien de noté pour la configuration d'instances multiples.
Il faut commencer par configurer ReadyMedia sans systemd pour chaque instance.
Cela veut dire qu'il y aura autant de fichiers de configuration que d'instances.
Dans mon cas j'ai les fichiers $(HOME)/.config/minidlna/tvshows.conf
et $(HOME)/.config/minidlna/movies.conf
.
Les fichiers seront identiques à l'exception des valeurs suivantes :
Il existe plusieurs méthodes pour générer un Universally unique identifier (UUID).
Avec Archlinux, il suffit de lancer la commande uuidgen
pour en obtenir un.
Pour lancer une instance ReadyMedia, il faut utiliser un des fichiers de configuration généré et surtout utiliser un fichier d'identifiant de processus unique par instance. Cela se traduit par la commande suivante :
minidlnad -f $(HOME)/.config/minidlna/tvshows.conf -P $(HOME)/.config/minidlna/tvshows.pid
Il faudra répéter l'opération pour chaque instance.
Pour me faciliter la tâche, j'ai ajouté le démarrage des différentes instances dans une règle de mon Makefile.
.PHONY: ReadyMedia ReadyMedia: @killall --quiet minidlnad || true @sleep 2 # Nécessaire pour permettre l'arrêt complet des instances de minidlnad avant d'essayer de les relancer. Si cette étape est omise, il arrive que les instances ne soient pas démarrées correctement dans les étapes suivantes. @minidlnad -f $(HOME)/.config/minidlna/tvshows.conf -P $(HOME)/.config/minidlna/tvshows.pid @minidlnad -f $(HOME)/.config/minidlna/movies.conf -P $(HOME)/.config/minidlna/movies.pid