[Interview] Comment Qobuz propose la lecture du FLAC via son player HTML5

[Interview] Comment Qobuz propose la lecture du FLAC via son player HTML5

Annie Cordy en lossless dans ton navigateur

Avatar de l'auteur
Guénaël Pépin

Publié dans

Internet

28/11/2014 8 minutes
19

[Interview] Comment Qobuz propose la lecture du FLAC via son player HTML5

Alors qu’il peine à trouver des fonds pour survivre (voir notre entretien), le service français de streaming « haute définition » Qobuz prépare la fin d’année avec quelques changements. Dans le même temps, le Qobuz Player web peut désormais lire la musique sans perte, au format FLAC, via le HTML5. Une nouveauté sur laquelle nous avons voulu en savoir plus.

Mercredi, Qobuz a mis en ligne une nouvelle version de son application web, intégrant la lecture « qualité CD » en HTML5. Les abonnés à l’offre Hi-Fi pourront désormais lire leurs morceaux en FLAC directement depuis leur navigateur, au lieu de devoir passer par l’habituelle application Desktop. Une première, face à des concurrents qui proposent pour la plupart uniquement des formats « à perte », y compris en web.

 

Cette solution implique des défis spécifiques : compatibilité avec les navigateurs, performances, navigation dans un morceau… Pour mieux comprendre comment cela fonctionne, et aller plus loin, nous en avons discuté avec Quentin Leredde, directeur produit du service de streaming.

Quelles complications avez-vous rencontrés concernant la lecture du FLAC en web par rapport au développement d'un logiciel dédié ?

Les technologies web n’ont pas toujours les mêmes performances qu’une application dédiée, sous iOS ou Android, où on peut utiliser des bibliothèques bas niveau pour le décodage audio. On a pris le parti d’utiliser des technologies compatibles avec les navigateurs. Avec HTML5, on a de nouvelles possibilités dont l'élément < audio >, ou le stockage local. On se rapproche des performances natives, alors qu’avant on devait utiliser un module Flash pour arriver à ce résultat.

 

L’API Web Audio n’est pas encore supportée par tous les navigateurs. Par exemple sur Internet Explorer. On est en incapacité de proposer notre innovation aux utilisateurs de ce navigateur. La version 12 d’IE va supporter Web Audio [Avec Windows 10]. Ça va donc devenir sans objet d’ici quelques mois.

Comment fonctionne concrètement votre lecteur ?

Aujourd’hui des frameworks permettent de lire de l’audio en HTML5, avec l’API Web Audio. On a trouvé des bibliothèques open source qui font du décodage FLAC en HTML5. On utilise Aurora.js, qui inclut un panel de décodeurs javascript [côté client] en fonction du format (MP3, FLAC, ALAC). Nous avons choisi Aurora.js pour ses bonnes performances, après benchmark. On a aussi fait des tests de qualité audio, sans constater de dégradation de qualité de signal (FLAC vers signal PCM).

 

On a trouvé que la solution fonctionnait bien. Il reste des petits aspects limitants sur lesquels nous travaillons derrière, comme la difficulté à faire du « seek », la navigation dans le morceau par exemple.  Le produit n’est pas encore au niveau de certains autres, comme un lecteur Flash. D’où l’innovation. On a tout de même trouvé ça satisfaisant pour un client léger.

Contribuez-vous à Aurora.js qui existe depuis 2 ans maintenant, et avez-vous contacté ses développeurs ?

Pour l’instant, on ne l’a pas modifiée. On travaille à des améliorations sur le « seek », pas encore supporté. Si on arrive a quelque chose de satisfaisant, on pourra contribuer. La version en production actuellement n’a pas le « seek ». On a quelque chose en développement, mais pas satisfaisant. D’ici quelques jours, on aura sûrement une solution satisfaisante.

Combien de temps avez-vous mis à développer l'ensemble ?

C’est un projet sur deux mois. L’intégration pure [à l’application web] n’a pas forcément été très longue, voire sensiblement plus courte. Ça a d’abord été le benchmark de la bibliothèque. On a aussi revu le design du « player », intégré le lecteur dans les fiches albums (du magasin)...

 

Même en une journée, on peut implanter la bibliothèque. C’est l’intégrer à notre solution, à notre API qui a été le plus long. On avait un développeur à plein temps sur ce sujet. Plusieurs personnes sont intervenues, par exemple pour le redesign ou la supervision technique.

Y a-t-il des différences de compatibilité selon les systèmes ?

C’est vraiment le navigateur… Il peut y avoir de légers deltas selon l’OS, selon l’implémentation. Ce n’est pas propre du coup au produit Qobuz. Il n’y a pas de spécificité entre les différents OS, [le lecteur se contentant de décompresser le fichier FLAC et de fournir le signal audio au système par le navigateur].

Quelles difficultés spécifiques avez-vous rencontrées ?

Le son numérique est redirigé vers le lecteur audio de l’OS, ça ne pose pas de problème particulier. Simplement, aujourd’hui avec nos applications natives, comme Qobuz Desktop [sur OS X et Windows], on peut proposer plus de configuration au niveau de l’audio.

 

On peut par exemple choisir le pilote audio responsable du traitement numérique, qui redirige vers le périphérique audio. Certains pilotes permettent de ne pas du tout ré-échantillonner le signal. Par défaut, le pilote peut agir sur le signal audio, [donc modifier sa restitution]. Aujourd’hui on sait choisir le pilote pour éviter ça dans une application native, pas encore dans le navigateur.

Une restitution « bit-perfect » ?

Oui. Le décodage du FLAC est bit-perfect. Mais quand le son passe par le pilote, il faut vérifier que le signal ne soit pas retraité. Pour l’instant, nous ne sommes pas en mesure de le faire dans le navigateur.

Quelles autres difficultés rencontrez-vous encore ?

On travaille aussi à l’optimisation de la lecture sur Firefox. La structure de Chrome et de Firefox est différente. Les performances de lecture audio peuvent être moins bonnes sur Firefox. Quand on a d’autres web apps ou des applications javascript gourmandes, on peut avoir des ralentissements, parfois une micro-coupure. On travaille dessus. Les navigateurs ne sont pas équivalents. On sait qu’ils ont des différences dans leur comportement, dans leurs performances, dans leur moteur javascript… ce genre de choses.

Comment l’avez-vous déterminé ?

C’est vraiment à l’usage que l’on a pu constater ça. On est dans le cœur en ce moment pour optimiser sur ces cas limites.

Cette web app est-elle utilisable sur mobile et tablette ? 

Oui, même si ce n’est pas là que c’est le plus intéressant. Le player web est compatible avec les appareils qui supportent le Web Audio. Contrairement aux applications natives, le lecteur web ne bénéficie pas de l’accélération matérielle pour la décompression audio.  Aujourd’hui, pour que l’expérience soit la plus optimale possible, il faut aussi une version mobile de la fiche album, qui arrive d’ici la fin de l’année.

Et côté performances ? 

Ce n’est pas un des usages fondamentaux. Tant que l’on n’avait pas de version mobile sur notre fiche album… Jusqu’ici, on n’a pas constaté de problème particulier. Ce n'est pas sur cet aspect qu'il était le plus important pour nous que la performance soit exemplaire car notre site n'existe pas encore en version mobile, il le sera début janvier. Et nous avons sur mobile des applications qui permettent de profiter du lossless, une nouvelle version de sort d'ailleurs à la mi-décembre.

Les utilisateurs préfèrent-ils l’application web ou desktop ? 

Notre parti pris c’est de laisser le choix à l’utilisateur. Dans le desktop, il peut encore choisir son pilote, avoir du offline… L’idée pour Qobuz c’est de proposer à l’ensemble de ses clients le lossless via l'application de leur choix, et maintenant, y compris par le navigateur pour plus de simplicité. Aujourd’hui, notre standard c’est le lossless, nous ne vendons que du lossless et la majorité de nos clients sont abonnés à une offre lossless. La part d’usage équivalente entre web et desktop. On a un usage important sur la fiche album, le player web et le player desktop.

Est-ce que les nouveaux utilisateurs vont plutôt vers le lecteur web ou le lecteur desktop ? 

L’application web ne supportant pas le lossless avant, elle n’était pas compétitive face au lecteur Desktop et aux applications mobiles. Nous verrons plus tard ce que cet ajout change. C’est une technologie qu’on est très heureux de présenter et sur laquelle on travaille efficacement pour continuer à la populariser. Avec IE 12, ce sera compatible pour les utilisateurs d’Internet Explorer, et on compte proposer ce qui manque, comme la navigation dans le morceau.

19

Écrit par Guénaël Pépin

Tiens, en parlant de ça :

Sommaire de l'article

Introduction

Quelles complications avez-vous rencontrés concernant la lecture du FLAC en web par rapport au développement d'un logiciel dédié ?

Comment fonctionne concrètement votre lecteur ?

Contribuez-vous à Aurora.js qui existe depuis 2 ans maintenant, et avez-vous contacté ses développeurs ?

Combien de temps avez-vous mis à développer l'ensemble ?

Y a-t-il des différences de compatibilité selon les systèmes ?

Quelles difficultés spécifiques avez-vous rencontrées ?

Une restitution « bit-perfect » ?

Quelles autres difficultés rencontrez-vous encore ?

Comment l’avez-vous déterminé ?

Cette web app est-elle utilisable sur mobile et tablette ? 

Et côté performances ? 

Les utilisateurs préfèrent-ils l’application web ou desktop ? 

Est-ce que les nouveaux utilisateurs vont plutôt vers le lecteur web ou le lecteur desktop ? 

Le brief de ce matin n'est pas encore là

Partez acheter vos croissants
Et faites chauffer votre bouilloire,
Le brief arrive dans un instant,
Tout frais du matin, gardez espoir.

Commentaires (19)


Intéressant.

Bravo à Quobuz de nous sortir du mp3.


Je viens de tester c’est très convaincant, ça prends très peu de CPU.


Vous êtes sûr que c’est un service français ? J’ai l’impression de lire une traduction d’une interview en anglais, la syntaxe de ses réponses est blindée de calques de l’anglais, c’est normal ?


Qui a un code parrain ?


si tu veux voici le miens:

http://www.qobuz.com/signup?parrain=6784-299355



a utiliser/diffuser sans modération ;)


Je tolère parce que c’était une demande, mais que je ne vois pas débarquer tout le monde avec son code dans les commentaires, sinon je sors la sword de masse ;)


Avec un peu de sucre autour et de dev, ça pourrait être très très sympathique sur Firefox OS … Si Quobuz est intéressé, faut pas hésiter à contacter Mozilla :)


Je suis d’accord avec toi mais quand on peut faire plaisir ;)


Mais du coup l’annonce du support du Flac par Windows 10 va simplifier leur travail sur ce futur OS non ?


Je pense que l’application Firefox OS sera peut-être plus simple à mettre en place quand ça sera fait :https://bugzilla.mozilla.org/show_bug.cgi?id=1039639


Si je ne m’abuse, dans l’interview, il est expliqué qu’ils utilisent une bibliothèque pour le décoder ? Donc normalement ils peuvent déjà l’avoir, là, même si Gecko supporte pas encore FLAC.


Il est vrai, mais ça sera toujours plus simple si l’OS le supporte nativement. ;)


+1

&nbsp; faudrais que Qobuz essai de s’associer avec un operateur a la manière de Deezer, on pourrais choisir notre offre perso j’ai Deezer avec Orange je ne peux plus m’en passer mais il manque le FLAC chez Deezer donc j’achète les albums qui valent le coup en FLAC, que j’ai écouté sur Deezer. A tous ceux qui n’ont&nbsp; pas encore franchi le cap, investir dans du matériel de qualité (sans pour autant tomber dans l’élitisme de ce qui est testé sur Qobuz, c’est le reproche que l’on peux faire tout le monde ne peux pas ce payer des DAC a 2000€ il faut aussi qu’ils démocratisent un peu la musique lossless s’ils veulent réussir). En tout cas je ne prendrais pas un 2eme abonnement, pas les moyens.


C’est intéressant comme interview. J’espère qu’ils arriveront à améliorer le framework et qu’ils diffuseront leurs contributions !



Comme le dit Nitot, pour l’avenir le web est la plateforme, ils ont raison de pousser en ce sens. J’espère qu’ils se sortiront de leurs pépins financiers.


Je reste sur l’achat d’album pour le moment vu qu’ils ne proposent pas d’application pour Windows Phone (mais pour Windows 8, si, ça ne devrait donc pas être difficile de le faire !).








Liam a écrit :



Vous êtes sûr que c’est un service français ? J’ai l’impression de lire une traduction d’une interview en anglais, la syntaxe de ses réponses est blindée de calques de l’anglais, c’est normal ?





oui oui, c’est bien français.. juste l’interviewé qui ne connait rien au produit, donc restitue juste ce qu’on lui a dit côté technique :)



&nbsp;



BrainBSOD a écrit :



+1

&nbsp; faudrais que Qobuz essai de s’associer avec un operateur a la manière de Deezer, on pourrais choisir notre offre perso j’ai Deezer avec Orange je ne peux plus m’en passer mais il manque le FLAC chez Deezer donc j’achète les albums qui valent le coup en FLAC, que j’ai écouté sur Deezer. A tous ceux qui n’ont&nbsp; pas encore franchi le cap, investir dans du matériel de qualité (sans pour autant tomber dans l’élitisme de ce qui est testé sur Qobuz, c’est le reproche que l’on peux faire tout le monde ne peux pas ce payer des DAC a 2000€ il faut aussi qu’ils démocratisent un peu la musique lossless s’ils veulent réussir). En tout cas je ne prendrais pas un 2eme abonnement, pas les moyens.





Cela a été tenté avec Bouygues Télécom en secret.. mais finalement annulé.



&nbsp;

Interview intéressante, même si quand on connait le personnage, c’est une vaste blague..&nbsp;



Si tu as des comptes à régler avec Qobuz (vu tes dernier commentaires) merci de le faire directement auprès des intéressés, sans forcément exploiter nos commentaires pour ça ;)








arno53 a écrit :



Mais du coup l’annonce du support du Flac par Windows 10 va simplifier leur travail sur ce futur OS non ?





Reste à savoir si Internet Explorer 12 supportera ce codec via la balise &lt;audio&gt;, mais ça semble en bonne voie (tout comme MKV via la balise &lt;video&gt;).