Sortie de Yarock 1.1.2

Posté par . Édité par Benoît Sibaud, Ontologia et palm123. Modéré par Benoît Sibaud. Licence CC by-sa
34
18
mai
2015
Audiovisuel

Le lecteur audio dédié Linux "Yarock" est sorti en version 1.1.2 ce 15 mai 2015. Il est grand temps, après presque ces 5 dernières années passées à développer, que je consacre une dépêche LinuxFr.org à mon lecteur audio. Il propose de nombreuses fonctionnalités attendues pour ce genre de lecteur audio (gestion des étiquettes, listes de lectures, radio Internet, informations contextuelles,…), mais surtout une navigation simple et visuelle par le biais des pochettes d'albums.

DLFP

Je suis à l'écoute de toutes vos remarques et idées afin d'explorer de nouvelles pistes d'amélioration……alors à vos commentaires.

Présentation

Yarock est libre sous licence GPLv3 et les sources sont sur Launchpad (oui je sais, c'est pas bien). Le code est réalisé à partir du framework Qt4/5 et de l'incontournable bibliothèque taglib pour la lecture des méta-données. Pour la lecture, yarock propose à l'utilisateur, 3 moteurs de rendu audio différents (phonon, vlc, mpv).

Sachant que quelques images valent mieux qu'un long discours, je vous laisse jeter un œil ci-dessous.

Yarock propose plusieurs vues, notamment la vue "artistes", avec soit les images des artistes collectées via les services internet (discogs, lastfm, …) ou bien avec des piles d'albums.

DLFP

La vue "albums" affiche les pochettes pour chaque album organisée par section artistes.

DLFP

Les vues dédiées aux services de radio internet proposent une navigation similaire à celles des sites web par une hiérarchie de catégories en nuage. Pour le service "TuneIn" les images des radio sont aussi récupérées et affichées dans les listes de radios.

DLFP

Les listes de lectures profitent aussi de plusieurs vues et des fonctions de lectures intelligentes. La liste de lecture en cours peut être sauvée en base de donnée ou exportée en fichier de lecture (.pls, .m3u, .xspf).

Pour ceux préférant parcourir leurs dossiers, une vue permet de naviguer directement les dossiers et les fichiers.

Fonctionnalités

Voici en bref, les fonctionnalités principales du lecteur yarock:

  • Choix du moteur de rendu audio (phonon, vlc, mpv)
  • Égaliseur
  • Lecture sans saut/trou
  • Navigation claire et visuelles par pochettes d'album et images d'artistes
  • Nombreuses vues (artistes, albums, genre, années, pistes)
  • Radio web (tunein, shoutcast, dirble)
  • Simple liste de lecture
  • Listes de lectures intelligentes
  • Édition des étiquettes (sauvegardes des notes de pistes dans les fichiers)
  • Récupération des informations via internet (pochette d'album, biographie, artistes similaire, paroles des chansons)
  • Notifications de bureau
  • Interface de contrôle MPRIS
  • Gestion des raccourcis clavier
  • Aucune dépendance au bureau GNOME ou KDE

Installation

J'ai voulu que yarock soit simple à compiler en limitant les dépendances et l'utilisation de bibliothèques tierces. Je vous renvoie à la page installation du site web. Aussi, vous pouvez compiler avec Qt4 (par défaut) ou Qt5 et choisir quelle bibliothèque audio (phonon, vlc, mpv) utiliser.

  • # Fonctionnalités alléchantes

    Posté par . Évalué à 2.

    Et celle qui m'intéresse le plus : Pas de dépendances à Gnome ou KDE.

    J'♥ beaucoup les possibilités de choix comme celui du moteur de rendu et les formats supportés.

    Bravo et merci. Je l'essaierai.

    À quand dans les dépôts de Debian ?

    NB : Taglib, c'est libtag pour Debian.

  • # Remarques/questions

    Posté par . Évalué à 3.

    L'ensemble a l'air assez prometteur, surtout la non-dépendance à un DE. Installé rapidement sur une Archlinux ici pour voir l'ensemble, mais sur une machine sans musique.

    Ça m'a tout de même permis de constater un certain nombre d'inconsistances dans les chaînes de caractère (localisées ou non etc.), une icône d'application manquante sous Gnome 3 à minima. Des icônes trop importantes etc. Quelques glitchs graphiques etc. Probablement rien de monstrueux, mais des petites choses à fixer :)

    Ensuite pour le backend, je ne sais pas comment c'est supposer se passer pour mpv, en l'état ça me proposait un backend phonon au choix entre gstreamer et VLC. Enfin, deux choix proposés en tout cas :
    :: Il y a 2 fournisseurs disponibles pour phonon-qt4-backend :
    :: Dépôt extra
    1) phonon-qt4-gstreamer 2) phonon-qt4-vlc

    Du coup, les rapports de bugs sont les bienvenus sur Launchpad ? Parce que le dernier que j'y vois date encore de 2014 ;o

    En tout les cas, le tout est assez prometteur, et par exemple l'intégration à Gnome, bien que pas homogène d'un point de vue visuel au reste du DE, ne choque au final pas tant que ça (après, le fait d'utiliser Qt induit de base que ce soit mieux intégré à KDE et d'autres environnements plus basés Qt je suppose ; je ne sais pas sur quel environnement les screenshots ont été faits ;) )

    J'essaierais de le tester un peu plus ce soir avec une machine ayant de la musique dessus.

    PS : Quand on clique sur l'icône du soft en haut du site pour revenir à la page d'accueil, on se prend une 404 sur Github.

    • [^] # Re: Remarques/questions

      Posté par . Évalué à 4.

      Les rapports de bugs sur Launchpad sont bien sûr les bienvenus. Tu peux même prendre mon adresse mail et me faire une jolie capture d'écran avec tous ce que tu as vus, j'essaierai d'améliorer l'interface sous GNOME.

      Concernant les moteurs audio, si tu utilises phonon, seulement gstreamer et vlc sont maintenus à ce jour. Les autres moteurs audio n'utilisent pas l'interface phonon. Si tu veux le moteur "vlc" ou "mpv" il faut passer les options à cmake comme suit:

      cmake .. -DENABLE_VLC=ON -DENABLE_MPV=ON (-DENABLE_PHONON=OFF)

      Merci pour l'erreur de lien sur le website : c'est corrigé.

      Sébastien

  • # 5 années passées à développer

    Posté par (page perso) . Évalué à 4.

    Salut

    Justement, Sébastien, que retire-tu de ces 5 années passées à développer ?
    * Combien de temps cela te prend-t-il ? Quelques heures par semaine ? par mois ?
    * Est-ce que cela t'as permis de progresser en tant que développeur ?
    * Est-ce que tu as eu des soucis ? des priorités à gérer, des contraintes, des frustrations ? Les désitératas des utilisateurs peuvent être éloignés de la volonté du programmeur.
    * Est-ce que tu ne te sens pas un peu {seul, trop nombreux} sur ton projet ? ou préfère-tu cela ?

    Merci de ta réponse.

    • [^] # Re: 5 années passées à développer

      Posté par . Évalué à 7.

      Salut, merci à tous pour votre intérêt.

      Combien de temps cela te prend-t-il ? Quelques heures par semaine ? par mois ?
      Difficile à dire, au début beaucoup de temps perso, puis moins et maintenant j'ai quelques coût d'arrêt par manque de motivation/inspiration.

      Est-ce que cela t'as permis de progresser en tant que développeur ?
      Oui énormément, car je suis à titre professionnel orienté développement embarqué (essentiellement langage C) avec très peut de connaissance dans les "frameworks" disons "au niveau" ni dans le langage c++. Donc je pense pas être très calé par rapport au spécialiste c++ mais je pense que je me suis maintenu techniquement compétent en travaillant sur ce projet qui diffère de mes activités pro.

      Est-ce que tu as eu des soucis ? des priorités à gérer, des contraintes, des frustrations ? Les désitératas des utilisateurs peuvent être éloignés de la volonté du programmeur.
      Oui parfois beaucoup de désillusions quand les critiques pleuvent, mais globalement je suis assez satisfait du résultat. Concernant les utilisateurs je pars du principe que tous est bon a prendre, j'arbitre en fonction de la difficulté/de l'intérêt général du soft/mes propres envies :). J'essaie en tout les cas de répondre à tous.

      Est-ce que tu ne te sens pas un peu {seul, trop nombreux} sur ton projet ? ou préfère-tu cela ?
      Je suis seul sur ce projet et travailler seul me convient bien (je crois). Tant que j'ai des retours d'utilisateurs ça me permet de rester "connecté" et de continuer à avancer sur le projet.

      Voila pour ces quelques éléments de réponses, merci encore pour ton commentaire.
      Sébastien

      • [^] # Re: 5 années passées à développer

        Posté par (page perso) . Évalué à 5. Dernière modification le 18/05/15 à 14:59.

        Merci Sébastien pour ce retour :)

        Du coup, on est 3 devs Français a avoir créé un lecteur audio:
        - Yarock
        - Miamplayer
        - Lollypop

        Effectivement, il faut savoir faire abstraction des critiques mais les retours positifs sont en général plus nombreux.

        Sinon, comme toi, cela me permet de faire de gros progrès surtout que mon métier est admin sys/réseau.

        Et du coup, je vais regarder Yarock de plus près car dans l'esprit il correspond plus à Lollypop que MiamPlayer et y'a donc surement de bonnes idées à copier :)

      • [^] # Re: 5 années passées à développer

        Posté par . Évalué à 2.

        Desole je n'ai jamais rempli de bug report car yarok marche aprfaitement chez moi. J'apprecie beaucoup l'integration avec tune-in car cela me permet d'ecouter des radios que j'aime bien de facon super simple.

        Et du coup comme pas de bug je n'ai pas pu te remercier pour ton lecteur donc voila c'est fait. :)

      • [^] # Re: 5 années passées à développer

        Posté par . Évalué à 4.

        C'est rigolo, tu utilises Launchpad pour gerer le projet et github pour le site web.
        C'est pour des raisons historiques?

      • [^] # Re: 5 années passées à développer

        Posté par (page perso) . Évalué à 4.

        Merci à toi surtout, c'est très intéressant.
        Cela me donne une piste : Je m'ennuie dans mon boulot (de développeur) ou je subis les choix technologiques obsolètes de mon employeur. Voilà une motivation supplémentaire pour me lancer :)
        Encore merci d'avoir partagé ton expérience.

  • # Les questions qui compliquent tout

    Posté par . Évalué à 4. Dernière modification le 18/05/15 à 13:46.

    Salut

    Pourquoi un mélange "Qt 4/5", c'est dû à des limitations dans Qt 5 ?

    Utilise-tu QML ?

    Le lecteur sait-il lire les formats .MOD (Amiga), .SPC (SNES), .GYM (Megadrive), les variantes du format MOD telles que .TFMX (Amiga), et le MIDI et ses variantes .RMI/.XMI ? ;-)

    Propose-t-il une interface à la Winamp/XMMS/Audacious ? (pas "bibliothèque", quoi)

    "Quand certains râlent contre systemd, d'autres s'attaquent aux vrais problèmes." (merci Sinma !)

    • [^] # Re: Les questions qui compliquent tout

      Posté par . Évalué à 1.

      Pour la dernière question, je suppose que oui : « Pour ceux préférant parcourir leurs dossiers, une vue permet de naviguer directement les dossiers et les fichiers. »

      Pour les formats lus, ceux-ci dépendant probablement du backend/moteur choisit ?

    • [^] # Re: Les questions qui compliquent tout

      Posté par . Évalué à 6.

      En réalité c'est soit Qt4 soit Qt5, au choix :). Le but étant (à voir) de passer en pur Qt5 facilement quand il sera temps.

      Pas de QML ! Je ne le sens pas trop. Pour info, j'utilise de manière intensive (tous le navigateur d'artistes, album ….) le canevas graphique (QGraphicsView) de Qt. En l'utilisant à bon escient (après plusieurs tentatives à mes débuts) on peut afficher de manière correcte de nombreux éléments tous en restant sobre au niveau mémoire et en gardant la réactivité de l'interface.

      Pour mon cas perso, avec environs 700 albums et près de 7000 pistes, tous fonctionne à merveille.

      Pour les formats…..je vais y travailler ;)

      Pour l'interface, yarock est orienté bibliothèque. Il reste une navigation par dossiers/fichiers pour ceux qui l'utilisent mais je doute que ce soit le point fort.

      Sébastien

      • [^] # Re: Les questions qui compliquent tout

        Posté par . Évalué à 4.

        QML, c’est censé te faciliter la vie de ce côté là, et surtout, ça utilise la carte graphique, et donc permet de soulager le processeur et de faire des effets kikoolol assez facilement.

        Par contre, tu vas devoir faire l’impasse sur la compatibilité Qt4 si tu franchis le pas (globalement, le QML inclus dans Qt4 est déprécié et n’est plus recommandé, c’est Qml2 que tu devrais utiliser).

        Mes commentaires sont en wtfpl. Une licence sur les commentaires, sérieux ? o_0

        • [^] # Re: Les questions qui compliquent tout

          Posté par (page perso) . Évalué à 2.

          Mais est ce que QML permet de faire du natif? Genre, un bouton qui ressemble à un QWidget?

          • [^] # Re: Les questions qui compliquent tout

            Posté par . Évalué à 2.

            Il y a des composants qml qui reprennent le look and feel des composants de bureau. Qt components for desktop, par exemple, je ne sais plus quel est le nom en qml2.

            Pour l’instant, je pense que l’intégration au reste du DE sera moins bonne qu’avec un qt standard, mais là on n’est pas dans ce cadre là si j’ai bien suivi.

            Mes commentaires sont en wtfpl. Une licence sur les commentaires, sérieux ? o_0

  • # Launchpad

    Posté par . Évalué à 2.

    "les sources sont sur Launchpad (oui je sais, c'est pas bien)"

    Euh depuis 2009, les sources de Launchpad sont publié sous AGPL:
    https://dev.launchpad.net/LaunchpadLicense
    http://blog.launchpad.net/general/launchpad-is-now-open-source
    http://www.ubuntu.com/news/canonical-open-sources-launchpad

    Tu fais parti de ceux qui trouve que la GPL est liberticide et tu préfère la licence BSD ?? (troll détecté)

    • [^] # Re: Launchpad

      Posté par (page perso) . Évalué à 5.

      De mon côté, en tant que simple utilisateur, c'est surtout que je trouve ce site incroyablement mal pensé et mal conçu. Il me faut toujours beaucoup plus de temps que chez les concurrents pour trouver telle fonctionnalité ou effectuer telle action.

  • # Support osx

    Posté par . Évalué à 2.

    Bonjour,
    Je viens d'essayer de le compiler sur mon macbook et je me retrouve avec un problème à cause de Qt5X11Extras introuvable (il n'est pas fourni de base dans les packages QT pour osx).

    cmake .. -DENABLE_VLC=ON -DENABLE_QT5=ON -DENABLE_PHONON=OFF
    

    Je veux bien regarder de mon côté comment regler le problème (le couple CMake/Qt ça m'amuse) mais j'aimerais que tu me dises ce que tu en penses avant: Est-ce insurmontable ?
    Merci d'avance,
    Hervé

    ps: On voit que c'est du beau travail, rien qu'à parcourir tes CMakeLists.txt… Bravo =)

    • [^] # Re: Support osx

      Posté par . Évalué à 1.

      Salut, merci pour le commentaire :)

      Malheureusement rien n'a été prévu pour compiler sous osx. Tu peux essayer avec Qt4 car cette partie est dans une librairie différente. Néanmoins, je pense qu'il y aura d'autres problèmes.

      Je note pour mes longues soirées d'hiver….mais je pense qu'il y a du boulot :)

      Sébastien

  • # lire vers un appareil DLNA ?

    Posté par . Évalué à 2.

    Très sympa, j'adopte.
    Y'a t-il un moyen simple de "pousser" la lecture vers un serveur DLNA (en l’occurrence mon ampli) ?
    Je souhaiterais piloter la musique sur mon installation hifi depuis mon PC/portable sous ubuntu
    Merci d'avance

    • [^] # Re: lire vers un appareil DLNA ?

      Posté par . Évalué à 3.

      Quel est le besoin?

      1) Accès à la bibliothèque en DLNA
      La navigation se fait au niveau du contrôleur DLNA.
      Je conseille "Universal Media Server" si on aime le Java et la simplicité d'une GUI. Cela permet également de transcoder si le format n'est pas lisible pour le client.

      2) Écouter le flux de lecture en direct en utilisant DLNA.
      Ici le flux de lecture est redirigé sur un flux réseau DLNA.
      Je conseille d'utiliser "Rygel" avec PulseAudio. Il faudra bidouiller un peu.

    • [^] # Re: lire vers un appareil DLNA ?

      Posté par . Évalué à 4.

      Si tu utilises PulseAudio, il y a pulseaudio-dlna qui est sympa.

      C'est un serveur DLNA vraiment simple d'utilisation. Les renderers DLNA sur le réseau sont ajoutés comme périphériques de sortie dans PulseAudio, ce qui permet d'envoyer facilement le flux audio des applications vers ces appareils (avec pavucontrol par exemple).

      • [^] # Re: lire vers un appareil DLNA ?

        Posté par . Évalué à 2.

        Waou, merci @AR7 de me faire découvrir pulseaudio-dlna
        J'avais essayé Rygel il y a quelques temps mais c'était trop complexe et j'avais laissé tomber
        pulseaudio-dlna fonctionne bien après quelques tests, il détecte mes différents renderers dlna (dont mon ampli hifi), bref, c'est que du bonheur ! Merci merci !

  • # Bibliothèque - Dossier de liens

    Posté par . Évalué à 2.

    Suis-je le seul à vouloir utiliser (en vain) des dossiers contenant des liens vers mes MP3?

    Ma bibliothèque reste désespérément vide…

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.