Catégories
Musique Open-source Web

Gérer sa bibliothèque musicale en 2011

L’informatique en général et Internet en particulier a révolutionné la manière de gérer sa bibliothèque musicale. Sans remonter aux temps des disques vinyles et des K7 que l’on rembobinaient avec des stylos Bic, le numérique a permis de faciliter la vie de l’amateur de musique.

Au commencement vint le CD, une qualité professionnelle accessible au commun des mortel. Je me rappelle encore, non sans émoi, de la première écoute du CD de Jean-Michel Jarre (on ne se moque pas j’étais jeune à l’époque) sur la chaine HIFI flambant neuve de mon père.

Rapidement, quand les ordinateurs sont devenus assez puissant, nous avons commencés (nous les geeks et pas encore la ménagère de moins de 50 ans) à ripper nos chers ($$$) albums. Il fallait à l’époque être patient et pas trop regardant sur la qualité: il était impensable, vu le prix et la capacité des disques durs, de ne pas utiliser des codes compressés (ouha tu encodes en MP3 VBR à 96Kbps, le fou !). Il fallait ensuite connecter sa chaine HIFI avec son PC en perdant encore en qualité. Bref le résultat était loin de la source (CD).

Le coût du stockage, la puissance des ordinateurs et il faut le souligner la facilité d’utilisation de logiciels comme iTunes (ou je sais le mal absolu) ont facilité le passage en douceur du support physique (le CD encore et toujours lui) vers de bons vieux fichiers (MP3 ou AAC) stockés sur votre disque dur. C’était la belle époque des compilations en tout genre et il faut le souligner du piratage à outrance (même de la part de la ménagère de moins de 50 ans). Rien de plus facile que d’insérer un CD (pas forcement le sien) dans son lecteur, d’appuyer sur le bouton importer puis de remettre ce même CD dans sa boî”te.

C’est à cette période que les ventes des « lecteurs MP3 » portables explosent. Il était alors possible d’emporter la totalité (ou une grande partie) de sa bibliothèque musicale lors de ses déplacements. Le rêve ultime pour l’amateur de musique. Le CD meurt, c’est même à se demander si le vinyle ne lui survivra pas…

Pour éviter « l’hémorragie du piratage » (c’est leurs mots pas les miens), les majors se sont donc tournés, à la vitesse d’un éléphant centenaire, vers d’autres modèles de ventes basées sur la musique dé-matérialisée. Plus besoin d’acheter les albums sur un support physique. On achète directement des fichiers qui sont téléchargés directement sur votre disque dur à travers Internet. La révolution est en marche. Le DRM meurt. Apple touche le pactole avec son iTunes Store.

En parallèle, un autre modèle voit alors le jour. Pourquoi télécharger alors que les fichiers existent sur un serveur permettant de les diffuser en streaming (c’est-à-dire un téléchargement au moment de l’écoute et de manière transparent) ? C’est l’ère des Deezer et Spotify.

Les « lecteurs MP3 » sont remplacés par les « smartphones » et on utilise sa liaison 3G pour accéder en streaming à sa musique.

Que nous réserve l’avenir ? Difficile de le prévoir vu à la vitesse dont les choses évoluent. De nouveaux modèles essayent de s’imposer (iCloud Music par exemple) mais qui restent, pour l’instant, des déclinaisons des deux modèles précédents.

Pour en revenir au sujet de ce billet, je vais maintenant vous dire comment je gère ma bibliothèque musicale à la date d’aujourd’hui (en juin 2011). Mes CD ont été vendus ou classés dans deux beaux EasyCase. Ma bibliothèque iTunes comporte un RIP d’assez bonne qualité (MP3 384Kbps ou AAC) de ces CDs. Je l’utilise tous les jours depuis de mon iPod 160 Go pour écouter de la musique chez moi à travers mon installation HIFI. En parallèle, j’utilise le service Premium de Spotify (j’ai un abonnement depuis plus d’un an). Au début, je n’utilisais Spotify que pour écouter des nouveautés, mais il remplace de plus en plus mon lecteur iTunes (surtout depuis que Spotify permet d’importer automatiquement sa bibliothèque iTunes sur son compte et que j’ai pu retrouver mes compilations). Sur mon smarthphone, c’est également Spotify que j’utilise le plus sauf quand je suis à l’étranger ou dans une zone non 3G.

Pourquoi Spotify et pas Deezer ? Je pense que les deux services sont de qualité mais j’ai quelques points qui me semblent à l’avantage de Spotify:

  • je n’aime pas être dépendant d’une liaison Internet pour écouter ma musique (Spotify propose un mode d’écoute off-line ou les fichiers sont téléchargés sur votre machines, PC ou smartphone)
  • la bibliothèque proposé par Spotify me semble plus complète (du moins pour mes goûts musicaux)
  • le client Spotify Linux natif fonctionne très bien et évolue presque au même rythme que les clients Windows et Mac OS
  • la fonction d’importation de sa bibliothèques iTunes est vraiment un plus

Et vous ? Vous en êtes ou avec la fameuse dématérialisation de la musique ?

Catégories
Gstreamer Musique Open-source Planet-libre Video

Présentation « powerpoint » du framework GStreamer

Comme vous avez pu le remarquer, depuis quelques mois la fréquence des billets sur le blog est en chute libre. La « faute » à mon boulot (celui qui paye les factures) pour lequel je suis pas ma en déplacement. J’ai pu juger comme il était difficile de bloguer loin de ses terres. J’ai donc vite renoncer à écrire des articles depuis les chambres d’hôtels et j’ai préféré visiter les belles villes de Rennes et de Paris.

Cependant ces fameuses mission m’ont permis de poser sur quelques planches « powerpoint » (c’est votre chef qui va être heureux) une introduction au framework GStreamer que j’aborde souvent dans mon blog (voir la page dédiée ici).  Cette présentation est bien évidemment distribuée sous licence CC BY v3.  L’idéal si vous avez à l’utiliser est de la faire tourner sur PC sous GNU/Linux avec l’ensemble des plugins GStreamer installés. puis à chaque planche ou il y a un exemple de faire un copier/coller de ce dernier dans un terminal (effet démo garanti).

Pour d’évidentes raisons de compatibilité, je diffuse la présentation au format PDF (il suffit de cliquer sur l’image ci-dessous pour lancer le téléchargement). Pour les personnes voulant modifier cette présentation, vous pouvez également la télécharger au format ODP.

Je vous rappelle, que l’ensemble des billets sur GStreamer est regroupé sur cette page. Si vous voulez être tenu au courant des nouveaux articles sur le sujet, je vous conseille de vous abonner au flux RSS du blog, à mon compte Twitter ou à partir de Facebook.

Enfin pour finir, si vous utilisez cette présentation merci de laisser un petit commentaire sur cette page…

Catégories
Gstreamer Musique Open-source Planet-libre

Streaming audio haute qualité avec AAC

Le codec AAC (Advanced Audio Coding dont les fichiers portent souvent l’extension. MP4) est devenu au moins aussi populaire que le bon vieux MP3. Le fait que ce soit le codec audio utilisé par iTunes, le leader mondial de la vente en ligne, n’y est surement pas étranger.

Nous allons dans ce billet voir que l’on peut également utiliser ce codec lors de streaming. Je ne suis pas le premier à avoir cette idée car l’AAC est déjà utilisé pour la diffusion de la radio numérique Japonaise.

On ne change pas une équipe qui gagne, nous allons utiliser le framework GStreamer pour faire ce petit test de streaming audio entre deux machines. Pour ceux qui ne sont pas habitués à la notion de pipeline GStreamer, je vous conseille la lecture de ce billet.

Que cherche t’on à faire ?

Nous allons essayer de diffuser (« streamer ») un flux audio (par exemple un .WAV non compressé pour être sûr d’avoir une source de bonne qualité) depuis une machine A vers une machine B (reliées par un réseau IP) en utilisant un encodage AAC-LC et une encapsulation MPEG-4 / RTP.

Création de la pipeline d’émission

Si vous avez bien suivi, la commande suivante doit être saisie sur la machine A:

gst-launch -tv \

gstrtpbin name=rtpbin latency=0 buffer-mode=0 \

filesrc location=\ »samples/test.wav\ » ! decodebin ! audioconvert \

! queue ! faac bitrate=128000 ! rtpmp4apay \

! rtpbin.send_rtp_sink_1 \

rtpbin.send_rtp_src_1 ! udpsink port=6969 host=$IP_B

Bien que fait cette commande:

  1. elle lance GStreamer (gst-launch)
  2. Elle produit un flux réseau RTP (gstrtpbin)
  3. La source audio du flux réseau RTP sera un fichier WAV (filesrc), qui sera décodé (decodebin)
  4. On encode en AAC en utilisant le plugin faac (basée sur FAAC l’implémentation libre du codec AAC) en fixant un débit réseau cible de 128Kbps (128000 bits). On utilisera ainsi un streaming de type CBR (constant bitrate), c’est à dire que l’on fixe le débit et que le codec s’arrange pour adapter la qualité
  5. On encapsule le résultat dans une trame RTP MP4 Audio (rtpmp4apay)
  6. On stream en UDP (udpsink) vers la machine $IP_B  (à remplacer par l’adresse IP de la machine B) et sur le port 6969

Création de la pipeline de réception

A saisir sur la machine… B (bravo vous avez gagné une partie gratuite):

gst-launch -tv \

udpsrc port=6969 caps= »application/x-rtp, media=(string)audio, clock-rate=(int)16000, encoding-name=(string)MP4A-LATM, cpresent=(string)0, payload=(int)96, config=(string)40002810″ \

! gstrtpjitterbuffer latency=200 drop-on-latency=true ! rtpmp4adepay ! faad \

! audioconvert ! audioresample ! autoaudiosink

Que fait cette commande:

  1. Elle lance GStreamer (gst-launch)
  2. Elle écoute sur le port UDP port 6969 en filtrant les paquets RTP MP4A (udpsrc). La valeur a mettre dans la string config varie selon la fréquence d’échantillonnage de votre source. Elle est affichée lors du lancement de la pipeline A.
  3. Elle bufferise les paquets dans un buffer qui aura une taille maximale de 200ms (à adapter selon la qualité de votre réseau entre A et B). Si les paquets sortes de ce buffer avec plus de 200ms, ils seront dropés (donc perte de paquets, perte d’information, perte de son…).
  4. On décode le paquet RTP (rtpmp4adepay)
  5. On décode le flux audio AAC (faad)
  6. On joue le son sur le périphérique de sorti audio standard (autoaudiosink)

Résultat des tests

Après avoir fait mumuse avec des sources différentes (musique, voix…) et des débits plus ou moins importants (de 8 à 320 Kbps). On arrive à des résultats très intéressants.

Par exemple pour de la voix (« Pierre si tu m’entends 🙂 »), on arrive à une qualité tout à fait acceptable en réglant un bitrate de 16bps pour un flux à 16KHz.

Pour la musique, point de salut en dessous de 128 Kbps (à moins de se contenter d’une qualité vraiment médiocre). A 256 Kbps, on a une qualité qui correspond à une écoute depuis un fichier .MP4 téléchargé sous iTunes Store. Au dessus de 256 Kbps, je n’ai pas noté d’amélioration (mais je n’avais pas un périphérique de sorti de très grande qualité).

Catégories
Hardware Musique Open-source Systeme Video

Test du micro/casque Logitech ClearChat Pro USB sous Ubuntu

Je viens de recevoir un casque/micro Logitech ClearChat Pro USB. Spécialisé dans les applications chat (conversation, jeux vidéo…), il n´est pas fait pour les conversations téléphoniques (ce n´est pas un casque téléphonique sans fil, non plus), il peut cependant être utilisé pour écouter de la musique (bien qu’il existe de meilleur casque Hifi pour cette utilisation).

Sur la boîte, Logitech donne comme pré-requis l’utilisation d’un système d’exploitation de type Windaube ou MacOS X… Nous allons voir que ce casque fonctionne très bien sur une Ubuntu 10.04 et sans avoir à installer un quelconque driver.

Pour une vidéo de présentation du casque, vous pouvez regarder celle faite par OSGui:

Logitech ClearChat Pro USB Unboxing Review & Ubuntu Linux Tutorial

Catégories
Musique Open-source Video

Petite ligne de commande anti vuvuzela

Marre d’entendre les vuvuzelas lors des matchs de la coupe du monde 2010 ? Il y a un moyen très simple de supprimer les fréquences correspondantes à partir d’un filtre VLC.

Voici donc une ligne de commande qui va:

  • récupérer le fichier vidéo du match sur le site de France Television
  • ouvrir le fichier vidéo en utilisant VLC et en y appliquant le filtre « anti vuvuzelas« 

La ligne de commande en question:

[shell]
vlc –audio-filter param_eq –param-eq-f1=233 –param-eq-f2=466 –param-eq-f3=932 –param-eq-gain1=-20 –param-eq-gain2=-20 –param-eq-gain3=-20 –param-eq-lowf=100 –param-eq-lowgain=15 –param-eq-q1=10 –param-eq-q2=10 –param-eq-q3=10 mms://direct.francetv.fr/siege/_\!/evt/fr/soccer_wc_2010.wsx\?aifp=v18\&auth=daEcSbicgdCaGa1dYdobEbSbTbyc2cYaKbQ-bmf28I-dW-FytntDdLd9dc
[/shell]

Catégories
Musique Open-source

Tester son installation audio Hi-Fi

J’aime la musique, elle m’accompagne tout au long de la journée. Quelle soit rock, pop, classique, électronique peut importe… tant que le son est bon ! Nous sommes à un tournant au niveau des supports de diffusion de la musique au grand public. Le bon vieux CD laisse petit à petit sa place aux fichiers informatiques. Au revoir support physique et bienvenue au monde dématérialisé ou les frontières en terme de qualité sont repoussées aux limites de nos oreilles.

Nous allons voir dans ce billet quels sont les impacts de cette petite révolution sur le rendu final en nous focalisant sur des logiciels et des formats libre.

Catégories
Musique Reseau Systeme

Backup de sa bibliothéque musicale avec rsync

Voici un petit shell script permettant, depuis Mac OS X, de synchroniser votre bibliothèque musical iTunes vers un disque dur externe au format FAT32.

Si en plus ce disque est réseau (NAS), ce script sera une première étape dans le partager de votre bibliothéque iTunes entres les différents ordinateurs de votre réseau local (je parle ici d’un VRAI partage avec play-lists, notes, suppression, modification…). Mais j’y reviendrai dans un prochain article…

Script:

[shell]
#!/bin/sh
SRC="/Users/nicolargo/Music/iTunes/"
DST="/Volumes/DDEXT/MUSIC/iTunes"
RSYNC="/usr/bin/rsync -a -x -S -v –modify-window=1 –delete"
$RSYNC $SRC $DST
[/shell]

Détail des variables:

SRC: Emplacement de votre bibliothèque iTunes (à modifier selon votre configuration). A noter, le / en fin de ligne.

DST: Chemin d’accès vers votre disque dur externe ou réseau (à modifier selon votre configuration). A noter, l’absence de / en fin de ligne.

RSYNC: chemin et option vers rsync avec:

  • –modify-window=1: si vous faite une synchronisation vers un disque FAT32, cette option est obligatoire (sinon les fichiers seront recopiés intégralement à chaque synchronisation…)
    Remarque: si vous utilisez un disque externe formaté en HFS, il faut utiliser l’option -E en lieu et place de –modify-window=1
  • -a: synchronise l’ensemble des fichiers, répertoires et sous-répertoire
  • -x: ne pas écraser les fichiers systèmes
  • -S: gère de manière efficace les fichiers fragmentés.
  • -v: affiche ce que rsync fait
  • –delete: efface du disque dur externe les fichiers inexistants de votre bibliothèque iTunes.
Catégories
Musique

« In the mood for life » de Wax Tailor

Découverte de cette fin d’année (sortie dans les bacs le 21 septembre), le troisième bijou de Wax Tailor restera, si il ne doit en rester qu’un, comme mon album 2009.

In the mood for life

Mélange de hip hop, trip hop et electro, « In the mood for life » sonne comme un album idéal à écouter lors d’une ballade en ville, les écouteurs sur les oreilles.  Wax Tailor en est le grand chef d’orchestre: producteur indépendant, auteur, compositeur (rien que ça…). Si en plus j’ajoute qu’il est Français, confirmant ainsi la qualité de la French touch, vous n’avez aucune excuse pour le zapper. Il qualifie son album comme une bonne dose « d’humeur combattive face au quotidien » et espère que le bouche à oreille fonctionnera, un peu comme la prochaine tournée de U2. Il a en tout cas régalé les miennes…

Quelques liens utiles:

Catégories
Musique Open-source Systeme

Comment faire une borne multimédia ?

Une borne multimédia est un ordinateur dédié à une fonction bien précise: fournir un accès Internet, écouter de la musique ou regarder un film sont quelques exemples qui me viennent en tête. Si vous avez déjà eu à mettre en place une telle borne, la simplicité d’utilisation et le verrouillage de celle-ci sont des points clés à prendre en compte dès l’installation. 

Nous allons dans ce billet détailler l’installation d’une borne multimédia permettant d’écouter de la musique stockées localement sur notre machine. Cette borne se basera uniquement sur des logiciels libres.

Installation du système d’exploitation

Connaissant bien la distribution GNU/Linux Ubuntu, j’ai choisi d’installer cette borne sur une version 9.04 Janty. J’ai donc effectué une installation standard à partir de la Desktop Edition (suivant / suivant / ne pas lire le fichier readme…).

Une fois le système installé, j’ai créé deux comptes utilisateurs:

  • Administrateur: pour la gestion de borne. Ce compte est à créer lors de l’installation du système d’exploitation.
  • Invite: pour les utilisateurs. C’est ce compte que l’on va configurer pour être le plus simple à utiliser dans le cadre de notre besoin (qui est je vous le rappelle d’écouter de la musique).

Pour créer le compte Invite, il faut se connecter en temps qu’Administrateur au démarrage de la machine puis se rendre dans le menu « Système / Administration / Utilisateurs et groupes ». On clique ensuite sur le bouton « Déverouiller » et enfin sur le bouton « + Ajouter un utilisateur »:

On fixe le minimum de droits pour cet utilisateur dans l’onglet « Privilèges utilisateur »:

Afin que la borne se connecte directement et sans demande de mot de passe sur le compte invité, il faut effectuer les taches suivantes:

  • menu « Administration » / « Fenêtre de connexion »
  • onglet « Sécurité »

Il ne reste plus qu’a installer l’application que l’on souhaite mettre à disposition des utilisateurs (Banshee dans mon exemple):

sudo aptitude install banshee

Configuration de l’interface utilisateur

Afin de facilité l’utilisation de notre borne, il faut:

  • que le système se lance automatiquement avec le compte invité (ce qui a été fait dans la section précédante)
  • que le logiciel permettant d’écouter la musique se lance automatiquement et en plein écran
  • que l’utilisateur ne puisse rien faire d’autre…

Pour répondre à ce besoin nous allons remplacer le gestionnaire de fenêtre standard par OpenBox (Wiki), un autre gestionnaire simple et léger ( et compatible Gnome ou KDE).

La procédure d’installation est la suivante:

sudo aptitude install openbox

Toute la configuration est centralisée dans le fichier ~/.config/openbox.

Nous souhaitons seulement installer OpenBox pour l’utilisateur « Invite ».

su – Invite

Puis nous forçons le démarrage d’OpenBox:

# vi .xinitrc
exec openbox

# ln -s .xinitrc .xsession

Puis on édite le fichier de configuration d’OpenBox (seule action possible: bouton droit, relancer Banshee):

# vi .config/openbox/menu.xml
<?xml version= »1.0″ encoding= »UTF-8″?>
<openbox_menu xmlns= »http://openbox.org/ »
        xmlns:xsi= »http://www.w3.org/2001/XMLSchema-instance »
        xsi:schemaLocation= »http://openbox.org/
                file:///usr/share/openbox/menu.xsd »>
<menu id= »root-menu » label= »Openbox »>
  <item label= »Banshee »>
    <action name= »Execute »><execute>/usr/bin/banshee</execute></action>
  </item>
</menu>
</openbox_menu>

Enfin on lance automatiquement Banshee au démarrage d’OpenBox:

# vi .config/openbox/menu.xml
. $GLOBALAUTOSTART
sleep 2
/usr/bin/banshee &

Votre borne multimédia est presque prête, il ne manque plus qu’a mettre les fichiers musicaux dans le répertoire ./Musique du compte Invite puis de configurer Banshee…

Catégories
Musique Open-source

Installation de Songbird 1.2 sous Ubuntu

La version 1.2 de Songbird vient d’être mise à disposition, voici donc une procédure pour l’installer sur votre système GNU/Linux Ubuntu. Songbird est un gestionnaire de fichiers multimédia (musique, vidéo) open-source que l’on présente souvent comme le Firefox des iTunes (une belle pression sur ses épaules…).

Je ne vais pas rentrer dans le détail des fonctions que propose ce logiciel, il suffit de se rendre sur cette page pour avoir ces informations. Par contre, nous allons dans ce billet nous pencher sur l’installation de la « bête » sur notre bonne vieille distribution GNUL/Linux Ubuntu. Il va falloir un tout petit peu bidouiller car cette dernière version n’est pas encore dans les repos officiels.

On commence par récupérer Songbird à l’adresse suivante: http://getsongbird.com/download/

On va obtenir un fichier au format (extension) .tar.gz

Il faut ensuite ouvrir un terminal et ce rendre dans le répertoire ou le fichier a été télé-chargé (/home/nicolargo/Bureau dans mon exemple):

cd /home/nicolargo/Bureau

Ensuite on décompresse l’archive:

tar zxvf Songbird_1.2.0-1146_linux-i686.tar.gz

On va obtenir un répertoire Songbird.

Il ne reste plus qu’a dés-installer (si nécessaire) les versions précédentes:

sudo apt-get remove songbird

Puis à copier la nouvelle version dans notre système:

sudo mv Songbird /opt/

sudo chown -R root:root /opt/Songbird

sudo chmod -R 755 /opt/Songbird

Enfin, on créé un nouveau lanceur d’application personnalisé dans le tableau de bord:

  • click droit sur la barre de menu, puis click sur « Editer les menus »
  • click sur le menu Applications / Son et vidéo
  • click sur « Nouvel élément »
  • click sur Valider

Et voili, il ne reste plus qu’à aller dans le menu Applications / Son et vidéo et cliquer sur Songbird pour lancer l’application !

Bonne écoute :)