tv home - Crash test: Emby

Crash test: Emby

Hello,

Ça faisait un petit moment que je n’avais pas posté. Étant donné que la plupart du monde vie confiné chez lui, ça laisse du temps pour faire des projets perso. On ma demandé de l’aide pour installer un serveur emby. Comme je n’ai jamais testé emby c’est l’occasion de voir qu’est ce que je le programme à besoin pour tourner correctement.

Emby ?

Pour vous la faire courte ça vous permet d’héberger vos films et les distribuer facilement entre tous vos appareils sur un réseau local. La comparaison la plus simple c’est d’imaginer son petit netflix auto hébergé à la maison. Dans le même genre il existe aussi Plex. Tu lui donnes des fichiers vidéos et la solution s’occupe de les indexer, de les trier, récupérer les covers et toutes les métadata en se basant sur des registres publiques. Et comme ça le soir, tu t’installe dans ton home cinéma et tout est clean. Plus besoin de chercher les dvd planqué à l’autre bout de la maison.

Ma fonctionnalité favorite sur ce genre de dispositif c’est le système de mise en pause. Comme sur les plateformes des SVOD le logiciel garde une trace de tout ce que tu as vu, ou tu en étais dans ta série / film et c’est vraiment trop agréable. Il existe aussi un système de profil pour éviter de mélanger tous les utilisateurs et comme c’est en réseaux tout le monde y a accès. Page web, clients lourds, Emby est supporté par beaucoup d’appareils différents.

Crash test

C’est parti pour mettre les mains dans le serveur. Je suis parti d’un ubuntu serveur 18.04.3 fraichement installé. Une petit coup de mise à jours avec aptitude et c’est parti pour installer emby. Je précise que j’ai réalisé l’installation sous virtualbox avec des ressources volontairement très limités. 1coeur et 1Go de Ram pour voir la consommation de la bête. J’ai également configuré la carte réseau en mode accès par pont pour que le routeur de la maison lui attribue un ip propre.

La manipulation est très simple. Emby est distribuer sous la forme d’un .deb . Donc on commence par télécharger le fichier avec wget.

wget https://github.com/MediaBrowser/Emby.Releases/releases/download/4.4.1.0/emby-server-deb_4.4.1.0_amd64.deb

Une fois téléchargé on installe le paquet avec depkg

dpkg -i emby-server-deb_4.4.1.0_amd64.deb

Et c’est fini.

> Comment ça c’est tout ???

Et bien l’installation en elle est finie. Le panel est disponible à l’adresse suivante : IP:8096. Par contre en l’état votre machine est plutôt vulnérable. Je ne s’aurais au combien vous recommander d’installer un pare-feu avec ufw par exemple pour limiter le nombres de ports exposé. C’est très important si emby est installé sur VPS par exemple ou que votre box internet possède des ports ouverts sur internet. Il est à noter que Emby se démarre automatiquement avec la machine donc pas besoin de faire de manip spécifique pour ça.

Pour la configuration d’emby, tout se passe sur le panel web disponible à l’adresse donné juste au deçu. Si vous avez un doute sur l’adresse ip, utilisé la commande suivante :

ifconfig
image - Crash test: Emby
Ipconfig

L’adresse ip de votre machine se trouve après inet pour l’ipv4 et après inet6 pour l’ipv6.

Les perfs

Le serveur fraîchement démarré consomme à peine 200Mo de Ram et le cpu est au repos. Tout se passe bien pour l’instant. Durant le transfert via SFTP d’un film pour faire des tests le cpu c ‘est complètement emballé mais c’est plutôt normal. Le temps de décoder tout le flux arrivant vers la VM.

JJ’ai commencé par tester le client android. Il est simple et efficace. Mon instance d’emby est toute de suite découverte part l’application. Le stream ce passe parfaitement et en regardant la charge se voit à peine sur le serveur.

Je suis ensuite naturellement passé à la version web et dès que le stream est lancé, la charge cpu explose. Un cœur complet saturé. Sur l’instant j’ai pas compris car avec le client lourd android tout allait bien. La version web demande un transcodage avec ffmpeg. Il prend pas le flux vidéo natif et du coup la charge CPU explose sur le serveur. Si l’on souhaite partager notre instance emby avec plusieurs personnes si tout le monde passe par le client web le serveur ne suivra pas.

Étant donné qu’il existe des clients pour toutes les plateformes ou presque j’ai voulu tester le client windows mais là je me suis pris un gros STOP. Il faut la version premium d’emby appelé emby theater. C’est là que le mat blesse pour moi. Je n’ai pas envie de payer pour pouvoir utiliser des versions clients lourds sur chacun de mes appareils.

Le transcodage pour la version web est sûrement là pour des contraintes techniques que j’ignore, mais c’est pas pratique quand on a beaucoup d’utilisateurs. Enfin voila du coup j’ai peu découvrir un peu comment marchait le logiciel. Je vais rester sur plex pour l’instant mais ça reste une alternative à garder sous le coude. Emby est open source alors que Plex est closed sources quant à lui.