Petit projet d’hiver : une webradio sur raspberry

Il y a quelques années, j’ai acheté une radio philips NP 3300. C’était un chouette petit gadget qui me permettait d’écouter des radios sur le web (bon, ça, c’est sympa, mais sans plus), mais aussi toute ma bibliothèque musicale via UPnP (oui, encore un protocole qui n’a pas perçé). Et tout ça en se connectant en wifi au web. Et c’est très cool.

Ca marchait bien au début.

Et très vite, on a rencontré des soucis : l’appareil ne trouvait pas les radios, ou alors il restait complètement bloqué et on devait redémarrer. En plus, les rares mises à jour n’ont jamais apporté de corrections, mais juste des saletés comme le support de Spotify. Spotify … Quand je peux avoir toute ma bibliothèque UPnP ! Quelle honte.

Donc, depuis quelques temps, ce petit appareil dort dans un coin du salon. Et c’est très frustrant. Parce que quand il marche, le son est bon.

Du coup, en bon vieux geek qui a déjà mis en place un raspberry, j’avais déjà vu « quelques trucs » qui avaient l’air cool (connecter des trucs comme un écran LCD, des boutons, des haut-parleurs, ou alors installer une webradio). Et j’y ai réfléchi. Et encore réfléchi. Et donc, aujourd’hui, j’ai pris le taureau par les cornes. J’ai démonté mon NP 3300 pour regarder ce qu’il y avait dedans histoire de savoir quelle était l’ampleur de la tâche.

Il va donc me falloir

  1. Un raspbery 3 (pour avoir le wifi déjà configuré, c’est pratique !)
  2. Une carte MicroSD d’au moins 8 Go
  3. Un moyen d’alimenter mon Raspberry depuis une alimentation 9V/1.1A
  4. Une connexion pour mes deux hauts-parleurs 6 ohms/1.5 Watts (pour lesquels je n’ai, semble-t-il qu’une paire de câble directement connectés à la bobine)
  5. Une connexion pour les boutons sur le dessus de l’appareil … c’est une nappe de 13 fils dont un rouge … la masse, j’imagine)
  6. Une connexion pour l’écran LCD. Et là, je dois dire que je suis bien embêté, parce que la nappe de l’écran intègre également la LED de la télécommande infrarouge.

D’où le terme de projet d’hiver : tout ça va être sans doute assez long à mettre en place. J’essayerai de rassembler tout ça sur ce blog, histoire d’avoir une trace du bazar. Mais ça pourrait ne pas être simple.

Publicités

L’extension vidéo via UPnP ?

Depuis longtemps, je trouve les écrans dont je dispose trop petits. C’est maladif chez moi. Par exemple, au bureau, j’ai deux écrans Full HD, eh bien ça n’est pas assez (à ma décharge, je dois y lancer Eclipse, Flash Builder, Indesign, et quelques autres gros consomateurs d’esapce).

A la maison, c’est encore pire : mon beau tout-en-un n’a (contrairement à un chouette modèle MSI très récent) ni entrée ni sortie HDMI et est donc une île de vidéo au milieu d’un beau mur blanc. Or j’adorerais pouvoir balancer son image sur la télé ou ailleurs.

Oh, ne croyez pas que je n’ai pas cherché. je sais par exemple que ZoneScreen permet d’abuser VNC pour étendre un bureau sur une machine voisine. Mais la solution me semble un peu crapuleuse. Et en plus il n’est rgatuit que pour une utilisation domestique. Et il faut un logiciel sur le serveur (celui qui porte le clavier) et sur le client (celui qui reçoit l’image).

Bon, mes réflexions étaient un peu coincées, quand j’ai lu cet article de Lifehacker expliquant que DLNA/UPnP, c’est la meilleure solution pour qui veut dupliquer l’affichage de son smartphone.

Et là, j’ai eu un flash !

Je me suis dit que, si le mec de ZoneScreen était capable d’écrire un driver Windows envoyant l’image à travers VNC, pourquoi ne pas faire un driver envoyant l’image vers un lecteur UPnP ?

Evidement, je croyais que c’était une idée originale … pauvre fou que j’étais.

Cela dit, je note bien qu’aucun de ces sites ne détient de réponse claire, alors qu’il me semble qu’en aprtant du code de ZoneScreen, il soit possible d’écrire « le bon driver » : celui qui, quand un novueau client UPnP s’y connecte, crée un écran plug’n’play virtuel des bonnes dimensions pour y afficher du contenu provenant de la machine source.

Enfin bon, il faudrait pour ça que j’écrire un driver Windows … ce qui n’est pas actuellement dans mes cordes.

Ah la freebox !

La semaine dernière, free a déployé une mise à jour de la freebox HD apportant censément quelques mises à jour pour la partie HDMI (notamment le HDMI CEC très pratique pour se débarrasser à moitié d'une télécommande).
Hélas, dans le lot de modifications, il y avait aussi … la disparition de l'UPnP !
Chouette, non ? NON.
Parce que tous mes films sont stockés sur le DNS-323 et accédés en UPnP. Du coup, quand l'UPnP ne marche plus, ce sont les enfants qui viennent me dire qu'il y a un bug … Pas cool du tout.
Heureusement, le linuxien en moi a plus d'un tour dans son sac !
Le tour, en l'occurence, c'est l'excellent lftp !
Donc pif, je lance lftp. paf, je tape "mirror -R videos /Disque dur/Videos"
Et pof : la freebox explose (plus exactement, je perds la mise en pause du direct et mes enregistrements du week-end) parce qu'il y a trop de films à synchroniser et que du coup il ne reste que 4 Ko sur le disque dur de la freebox.
Alors, gentils développeurs de free, quand est-ce que vous corrigez ce fichu bug ?

J’ai choisi, pour moi c’est Betamax !

Ca faisait des années … bon, peut-être pas, mais au moins des mois que je cherchais un lecteur audio compatible UPnP. Parce que j'en avais marre de ne lire la musique chez moi que sur des CDs physiques.
Donc, j'ai acheté un poste audio compatible UPnP, juste au moment où tout le monde semble prendre la voix concurrente d'AirPlay (à commencer par ma freebox) … Je ne saurais dire à quel point je trouve déplorable le choix des "consomateurs" de choisir la dictature d'Apple dans des domaines aussi curieux que le streaming audio. Bon, c'est quand même moins grave que l'époque bénie/maudite des VHS/Betamax, puisque j'ai tout le matériel compatible : un serveur UPnP open-source, un lecteur vidéo open-source, et maintenant un poste audio compatible. La totale, quoi.
Donc, ce petit poste streamium marche bien. Il est peut-être un peu "lent" (environ 2 s. à chaque fois qu'on change de source audio), mais le son est plutôt bon, et le lecteur est à la fois compatible UPnP et WPA 2. Et ça, même pour un acheteur de Betamax, c'est sacrément cool.

Bye bye mediatomb, hello minidlna

Oui, encore une histoire de disque dur réseau.
Parce que c'est ma vie.
Parce que c'est mon blog.
Et parce qu'au fond, ça vous plaît.
Donc, suite à la fin – récente – des travaux chez moi, j'ai pu rebrancher tout mon bazar informatique, y compris mon NAS. Quelle ne fut pas ma surprise, lors de ce re-branchement, de découvrir que je n'arrivais plus à m'y connecter en SSH !
Je ne sais pas ce qui lui est arrivé, mais mon mot de passe root avait changé. Selon toute probabilité, je l'avais changé, dans un excès de paranoïa et, dans un excès de stupidité, je ne l'avais pas ajouté dans mon fichier Keepass.
J'ai donc dû désinstaller fun_plug, puis le réinstaller. Suite à cette réinstallation, j'en ai profité pour me poser une question critique sur Mediatomb.
après tout, il sert mes fichiers raisonnablement bien, mais souffre d'un problème d'ergonomie délirant : quand je regarde la liste de mes films depuis ma freebox, il se contente de balancer une liste à plat, sans aucun dossier. Et ça, c'est inacceptable. Surtout si on envisage, comme c'est mon cas, de streamer également la musique depuis ce NAS. Parce que là, avoir toute ma musique dans seulement deux listes de lectures, ben c'est le bordel le plus innommable, tout simplement.
En cherchant les forums, je suis donc tombé surminidlna. Bon, le site est minimal … sans doute parce que le produit l'est aussi. Cela dit, cette page peut faire office de bon monde d'emploi pour francophone.
Donc je l'ai installé. Enfin, j'ai essayé, d'abord, de l'installer avec ipkg. Ca n'a évidement pas marché.
j'ai donc dû installer méthodiquement tous les packages listés sur la page mentionnée plus haut, avant qu'il daigne finalement fonctionner.
Et je dois dire qu'é l'usage, c'est le silence total, ce qui est bien pour un serveur UPnP, je trouve, de ne pas faire parler de lui.

Au passage, puisqu'on est dans les histoires de serveurs, si vous téléchargez de temps en temps sur rapidshare, megaupload et tant d'autres, allez donc jeter un oeil à plowshare. Ca pourrait, une fois couplé à un script récupérant les liens depuis votre flux RSS préféré, vous permettre de mettre en place un torrentcast de qualité.

Pas cool

Bon, depuis deux jours, je regarde mes vidéos stockées sur mon DNS-323 directement sur la freebox, grâce à UPnP et mediatomb. Et autant pour l'expérimentation j'étais très content, autant le passage à la vraie vie est plus délicat.
Et ça pour une raison simple et stupide : la version de mediatomb disponible grâce à ffp est compilée sans javascript, et c'est à peu prés la seule disponible pour le DNS-323.
Mais à quoi sert le javascript ?
C'est simple.
mediatomb, quand il charge des fichiers, va les placer dans des dossiers virtuels définis grâce à un javascript, subtilement nommé import.js, qui permet aux hackers chevronnés de mettre les vidéos précisément où ils veulent.
Sans ce script, les vidéos apparaissent toutes dans un dossier video. Ce qui n'est pas pratique quand Tibére se met brutalement à cotoyer Dr House.
Donc, il fallait que j'arrive à faire marcher le truc. Hélas, comme mediatomb a été compilé sans javascript, ça ne peut pas marcher.
Heureusement, internet (et en l'occurence le forum du DNS-323) est là pour me proposer une version de mediatomb qui fait tout.
C'est quand même pas vraiment satisfaisant comme solution, parce que mon disque dur externe va commencer à être un peu en bazar, mais bon, je crois que je survivrais … surtout si mes vidéos sont bien rangées.
Bon, en testant, je me rend compte que cette histoire de javascript est loin d'être aussi évidente que ce que je pensais.
Ce qui est surtout vraiment pas évident, c'est que ça semble ne pas marcher. Pour l'instant, je vais donc mettre le truc en stand-by, je reprendrai une autre fois …
N'empêche, si ça améliore le WAF global de mediatomb, je serais preneur. Parce que même pour moi, c'est le merdier, ce dossier vidéo qui affiche 12 pages dans la freebox !
Il me reste cependant d'autres solutions sous le coude, comme par exemple celle d'utiliser un serveur UPnP en Ruby … (parce que les autres serveurs de ma connaissance – fuppes, GMediaServer – ne semblent pas avoir été compilés pour cette architecture, alors que Ruby, oui … ah, tiens, non – ou peut-être que si, grâce à optware et aussi sec je l'installe).

Bouyah !

C'est pas si souvent que je suis aussi enthousiasmé par SVM.
Mais cet article nous expliquant que la freebox supporte maintenant UPnP AV m'ouvre de nouvelles capacités vraiment excitantes.
Bon, enfin, pas tant que ça.
Mais quand même.
Maintenant, pour regarder mes films stockés sur mon nas, je n'aurais même plus à les copier, juste à mettre à jour ma freebox pour que le support soit activé.
L'intérêt, c'est de remplacer le disque dur de 40 Go de la freebox par celui de 400 Go de mon disque dur externe …
Et pour moi, ça suffit.

Terrible

Oh alors ça c’est trop terrible !

Bon, vous savez que j’avais quelques problèmes pour accéder à mon serveur UPnP.

Naïf que je suis, je pensais qu’il s’agissait d’un problème d’accès au serveur. J’avais testé avec Windows Media Player 11, et geexbox. Bizarrement, la geexbox n’a pas marché (sans doute parce que j’ai pris le mauvais câble réseau).

En désespoir de cause, j’ai testé XBMC pour Windows. Et là, LA claque. L’interface est un, non deux crans, au dessus de celle de Windows Media Center. C’est vraiment trop la classe.

Et en bonus, avec XBMC, les partages UPnP fonctionnent correctement. Du coup, je vais l’installer sur l’ordinateur de ma femme à la place de Windows Media Center, et on sera tous bien contents.

Bonne nouvelle

Alors que je croyais devoir vous faire un post sur la vacuité de ma vie, et mon incapacité chronique à écrire quoi que ce soit d'intéressant ici, la vie me rattrape, et mon disque dur réseau arrive enfin !

Du coup, je vais pouvoir jouer à le partitionner.

J'ai déjà prévu un plan plutôt clair et simple :

  • 50 Go par utilisateur en RAID bidule
  • 50 Go partagés par tout le monde en RAID bidule (essentiellement pour les photos)
  • Et le reste (soit théoriquement 500 Go) non RAIDés, et utilisés pour les données partagées via UPnP et DAAP . Le fait d'utiliser les deux protocoles doit nous permettre de regarder les films et d'écouter les musiques sur à peu près tous les types d'appareils, de l'iPod via iTunes au PC (là, les choix sont multiples : Windows Media Center, Geexbox, VLC, …) en passant (mais pas tout de suite) par la chaîne hifi ou la télé (via des gadgets comme le player hd dune).

Bref, ça va me donner du boulot.

Il y a aussi et surtout une question cruciale que je me pose : est-ce que moi, en tant qu'utilisateur, je vais accéder à mon espace personnel via un montage de disque dur distant (avec éventuellement un montage dans le dossier Mes documents), ou via une synchronisation permanente entre le disque dur réseau et le dossier Mes Documents ?

Remarquez bien que les deux sont possibles, et peut-être même complémentaires.

Bref, il y a du boulot.

Et encore, je n'ai pas parlé de l'importation initiale des données : les 10 Go de la bibliothèque de photos de l'iBook à envoyer, les 10 autres Go de MP3 à envoyer (ainsi que tous les CDs à ripper histoire de plus être embêté). vaut mieux pas que je me merde sur l'orgnanisation (même si je pense que celle que j'ai choisie est suffisament bonne pour nos usages domestiques).

Bon, je vous en reparlerai sans doute plus tard.

Rien à voir : télé, ethernet, disque dur réseau, et tout ça

Je dis rien à voir comme si il pouvait y avoir une quelconque cohérence dans ce que j’écris …

Bref,

Pour mon Nouwél, j’ai bien l’intention de me payer un serveur de stockage réseau. Au début, je pensais à un joli petit NAS Linksys : pas trop cher, totalement oubliable, et fournissant les données via samba, ftp, webdav et même UPnP. Bref, trop bien.

Dans le même temps, ma femme m’a parlé d’un projet sympa pour l’année prochaine : changer de télé.

Parce que bon, pour l’instant, on est en pointe avec une vieille télévision Thomson à tube cathodique.

Du coup, on envisage de la remplacer par une télé à écran plat en Full HD (normal, tout l’univers va demander de la Full HD dés l’année prochaine).

Et moi, je me dis que pour regarder nos photos, par exemple, un écran de télé Full HD, c’est à peu prés mieux que n’importe quel écran d’ordinateur ou cadre photo numérique minable (pas bête, hein).

Donc, j’ai regardé un peu les télés supportant l’UPnP.

Et la moins chére que j’ai trouvé (bon, d’accord, à la FNAC, mais ça donne une indication raisonnable) est la Philips 32PFL9613H. Et là, c’est la déception. Oh, bien sûr, le prix est assez élevé (aaargh) avec prés de 1300 €. Mais ce qui me gêne surtout pour mon intérieur Lillois, c’est évidement la taille. Parce que 81 cm dans un séjour qui fait 6 mètres dans sa plus grande dimension, ça fait vraiment beaucoup trop.

Bon, j’allais dire que j’aurais bien remplacé ça par une télé 26″ à 500 € et un quelconque PC (et je vais y revenir), mais je n’ai pas trouvé de 26″ qui fasse du Full HD, alors qu’un écran d’ordinateur 26″ Full HD avec haut-parleurs, ça existe, et c’est encore moins cher !

Du coup, la solution s’impose d’elle-même : remplacer l’énorme télévision par un écran de ce type connecté à un MiniPC de qualité faisant tourner XBMC qui, lui, intègre UPnP.

Avantages ? Plus petit, naturellement beaucoup plus évolutif, et surtout (et là, je rêve – ou pas) beaucoup moins cher !

Reste à trouver le bon mini PC.

Parce que du coup, je me pose la question de remplacer aussi le NAS par ce mini PC. Ce qui serait pas mal dans le genre tout en un de qualité. Quoique … Est-ce que le plus dingue ne serait pas de placer une petite eeeBox à coté de cet écran ?

Parce que des media centers qui tournent dessus, il y en a.

ca nous ferait un total de

  1. Le NAS : 200 €
  2. l’écran : 400 €
  3. l’eeeBox : 250 €

Soit un total stupéfiant de 625 €

Bien sûr, à ce total, il faudra rajouter de quoi télécommander l’engin (parce qu’il n’y a pas d’apple remote dans ce cas) et peut-être un autre jeu d’enceintes. Et un lecteur de DVD (et/ou de BlueRay pour l’avenir) …

Mais l’un dans l’autre je suis plutôt content de l’idée.

Reste à trouver l’argumentaire

338