OSMC (et KODI)

Mon histoire avec OSMC et Kodi

Je pense que la plupart des personnes qui commencent à utiliser un Raspberry Pi s’essayent à le transformer en mediacenter. C’était en tout cas mon souhait avec mon premier Raspberry Pi (un Raspberry Pi modèle B).

Je n’avais à l’époque aucune connaissance en media center, et j’étais parti à priori sur l’utilisation directe de VLC sur ce mini PC. Après des premiers tests je me suis rendu compte que le Raspberry Pi (surtout le modèle B de l’époque) n’était pas assez puissant pour faire tourner VLC. Il fallait plutôt utiliser des logiciels plus optimisés pour le Raspberry. En effet il fallait profiter du GPU du Raspberry Pi pour les vidéos ce que VLC ne faisait pas.

En creusant un peu les autres possibilités je suis tombé sur OSMC (qui s’appelait à l’époque Raspbmc). Il s’agissait d’une intégration de Kodi (qui s’appelait à l’époque XBMC pour Xbox Media Center) sur Raspbian l’OS par défaut du Raspberry Pi. Il y avait d’autres alternatives mais j’ai choisi d’aller sur cette solution car elle permettait de garder Raspbian et donc de pouvoir facilement installer d’autres paquets Debian sur la même machine comme Squeezebox center.

J’ai donc installé cette première version sur mon Raspberry Pi et cela a fonctionné directement. Cela m’a permit de voir le travail remarquable qui avait été fait sur XBMC pour en faire un très bon media center. Je suis resté sur Raspbmc un long moment, en suivant les mise à jour et les changements de noms. J’ai arrêté de l’utiliser comme media center principal lorsque je suis passé sur un serveur un peu plus puissant pour d’autres besoins et sur lequel j’ai installé directement Kodi (ex XBMC).

J’ai tout de même conservé mon Raspberry Pi avec OSMC. Il est juste devenu un media center d’appoint pour une deuxième télévision. Il se connecte directement sur le serveur principal hébergeant le contenu multimédia.

Points positifs

Voici les points positifs que je retiens de OSMC, et pour une partie cela provient directement de Kodi

  • Très facile à installer et mettre en oeuvre
    L’installateur fourni par l’équipe derrière OSMC est très facile. On tombe ensuite sur le fonctionnement de Kodi très intuitif je trouve.
  • Peut être alimenté par une sortie USB de la TV
    Profiter de la sortie usb de la TV pour alimenter le Raspberry Pi était un des avantages. Cela permettait d’éviter de rajouter une multiprise.
  • L’intégration du CEC
    Il s’agit d’une norme de communication qui permet d’utiliser la télécommande de la télévision pour envoyer directement des commandes au media center via le cable HDMI. C’est vraiment très pratique car cela évite de rajouter un clavier sur le Raspberry Pi. C’est quelque chose qui m’a beaucoup manqué quand je suis passé sur un PC standard sur mon media center principal.

Point négatifs

  • Les performances en mode serveur de media
    Je n’ai jamais eu trop à me plaindre des performances en temps que player. Par contre utiliser le Raspberry en temps que serveur de media était plus complexe. On atteint vite les limites de puissance du micro ordinateur ainsi que ses limites en bande passante. Ceci est notamment lié au fait que les ports Ethernet et USB utilisent la même puce. Toutefois je n’ai pas testé sur les dernières versions du Raspberry Pi qui n’ont plus ce problème normalement.
  • L’incompatibilité avec Airplay et Chromecast
    Ce n’est pas la faute d’OSMC mais c’est pour moi un des points négatifs de cette solution: il n’est pas possible de caster une video directement sur le media center. Une fois qu’on a gouté à cette facilité c’est assez bloquant de ne plus pouvoir le faire.
  • Accès à des fichiers à distance
    Même si j’ai toujours réussi à m’en sortir je trouve que la mécanique de configuration pour se connecter à un serveur multimédia distant est assez complexe. C’est plus une remarque qui concerne Kodi plus que seulement OMSC.
  • L’interface par défaut de OSMC
    J’ai eu beaucoup de mal à me familiariser avec l’interface développée par les équipes d’OSMC. Je suis longtemps resté sur l’interface par défaut de Kodi. Mais devoir à chaque mise à jour refaire ce changement est assez lourd. Je me suis donc habitué à la nouvelle interface même si je la trouve moins facile. C’est notamment difficile de faire la différence entre les tons de gris des titres.

Conclusion

Kodi et OSMC sont des projets open source complets et qui continuent à ce jour à être maintenu et mis à jour. N’hésitez pas à les utiliser et si vous le pouvez à aider les développeurs et à contribuer sur ces projets.

Squeezebox Center (LMS)

Squeezebox logo

http://www.mysqueezebox.com/

Historique

En 2011 je cherchais un moyen de profiter de ma bibliothèque musicale sans forcément utiliser mon ordinateur pour cela. C’est un collègue de travail de l’époque (Olivier si tu tombes un jour sur cette page :-)) qui m’a conseillé Squeezebox. J’ai donc essayé cette solution qui était à l’époque activement développé par Logitech.

J’ai commencé avec un dispositif Squeezebox touch que j’ai complété ensuite par d’autres produits. Avec l’arrivée des enceintes bluetooth et des applications musicales comme Deezer ou Spotify le besoin d’un environnement comme tout intégré s’est raréfié. Logitech a malheureusement abandonné complètement cette solution.

Heureusement le code source de la solution est libre et il y a toujours des développeurs pour maintenir le code (au moins la partie serveur).

Mais Squeezebox c’est quoi ?

Squeezebox c’est un ensemble serveur/client qui permet de diffuser sa musique facilement.

D’abord on installe Squeezebox server (aussi appelé Logitech Media Server, LMS) sur notre machine serveur. Ensuite via l’interface web on peut configurer les dossiers de musique locale à scanner. On peut aussi rajouter des plug-ins (notamment pour les bibliothèques musicales en ligne).

Une fois la partie serveur en place il suffit de s’y connecter via des clients. Ce peut être soit des produits Logitech soit des logiciels type Squeezelite.

Je ne vais pas rentrer dans tout l’historique ici, la page Wikipédia (en anglais) donne beaucoup d’informations à ce sujet. Ce qu’il faut retenir c’est qu’au cours de son histoire le server a beaucoup changé de nom. Il a été successivement appelé SlimServer, SqueezeCenter, Squeezebox Server et Logitech Media Player. On retiendra aussi que la partie produit a commencé avec la société Slim devices. Elle a ensuite continué avec Logitech lors du rachat en 2006. Enfin en décembre 2012 Logitech a annoncé qu’ils arrêtaient le développement.

Mon installation

Même si celle-ci a évolué plusieurs fois au fil des années elle s’est relativement stabilisée sur la configuration suivante :

  • Le serveur Squeezebox server qui tourne sur mon ordinateur NUC sous Ubuntu,
  • Un squeezebox touch qui est branché sur ma chaine Hi-Fi,
  • Une squeezebox radio pour avoir ma musique dans la cuisine,
  • Un squeezebox controller pour sonoriser la chambre,
  • Le logiciel squeezelite qui tourne sur mes différents laptop pour écouter de la musique en travaillant,
  • L’application Squeezer sur mon smartphone Android.

Bilan

J’aime mon installation et ne souhaite pas en changer mais elle a quelques limitations que je vais essayer de lister ici.

  • Le premier point négatif est que Logitech a laissé tombé la solution, et même si le code est ouvert il n’y aura plus de nouveaux produits. Il faut noter que des solutions basées sur des Raspberry Pi existent pour palier à ce problème, mais ça ne remplace pas les produits « out of the shelf » produits par une entreprise.
  • Un autre aspect assez irritant pour moi a été la difficulté d’installation du serveur sur ma machine. En effet le serveur tournant sur son propre compte utilisateur j’ai eu des difficultés à partager un disque dur externe.
  • Enfin le fait que les apps qui permettent d’écouter sur les smartphones (Squeezeplayer sur Android) sont payantes malgré le fait qu’elles ne soient pas vraiment maintenues.

Malgré ces limitations je considère que cette installation est pérenne et permet d’avoir simplement et facilement accès à de la musique à différents endroits de la maison.

Il est aussi à noter que le développement semble être plus actif dernièrement avec la sortie de la version 8.0 et 8.1 du serveur. De même le forum de discussion (https://forums.slimdevices.com) montre plus d’activité.

Visual Studio Code

Vscode logo

Comment pourrais-je parler des projets open source que j’utilise sans parler de mon IDE: Visual Studio Code ou vscode pour les intimes.

Durant mes années de développement j’ai utilisé différents IDE sur lesquels j’ai développé sur de multiples langages mais mon choix actuel depuis plus de 2 ans est Visual Studio Code.

Ce que j’aime :

  • Facile à mettre en oeuvre,
  • Bonne intégration pour le développement en Python (mon language de programmation principal),
  • Développement actif (par Microsoft mais open source),
  • La synchronisation possible entre plusieurs instances.

Ce que j’aime moins :

  • L’interface de configuration des options (difficile de s’y retrouver dans toutes ses options, la recherche n’est pas assez précise),
  • La stabilité des extensions (J’ai eu une mésaventure avec l’extension Python qui me prenait 100% de CPU et ne fonctionnait pas comme prévu).

Pourquoi je l’utilise

Malgré ces quelques points négatifs je trouve que cet IDE réponds à mes besoins. Comparé à mes précédents IDE il a :

  • Une vraie intégration du code pour proposer des complétions intelligentes (contrairement à ce que j’avais à l’époque sur Notepad++)
  • Un outil gratuit avec un code open source, même si c’est Microsoft derrière le code est libre. C’est ce qui me gênait un peu avec SublimeText
  • Un outil léger avec des extensions pour chaque language utilisé (incomparable à la machinerie lourde d’Eclipse)
  • Des mise à jour régulières, avec des belles releases notes, c’est mon coté « mise-à-jour-o-phile » j’aime bien voir évoluer ce que j’utilise, même si ça entraine des désagréments (voir mon problème de CPU overload).

Je ne sais pas si je resterai sur cet IDE encore longtemps mais pour l’instant je n’ai pas trouvé de raison de vouloir changer.