Journal Taguer ses fichiers audio

Posté par  (site web personnel, Mastodon) . Licence CC By‑SA.
29
17
déc.
2023

Sommaire

'lut les gens,

Le contexte

Même si je dispose d'un compte Deezer depuis plus de dix ans, j'entretiens de longue date une base de fichiers audio pour mon usage personnel et privé, n'étant pas toujours connecté ne serait-ce dans les transports (train, avion notamment).

Étant assez peu regardant sur la qualité audio, d'une part parce que je suis loin d'avoir l'oreille musicale vu qu'elle a subi les affres de la plongée sous marine (je souffre d'acouphène) et d'autre part je n'ai pas investi dans des lecteurs haut de gamme et coûteux, j'ai donc principalement des fichiers au format MP3 avec un bitrate tout de même de 192kb/s en moyenne.

J'ai toujours pris soin de remplir proprement les métadonnées qui sont inclues dans les fichiers car c'est toujours sympa de savoir ce qu'on écoute et c'est encore mieux si le lecteur affiche la jaquette de la piste. Par ailleurs il est indispensable de disposer de ces données pour pouvoir construire rapidement des listes de lecture suivant différents critères comme la date ou le genre musical.

Quelle que soit l'origine du fichier audio, ces métadonnées ne sont pas forcément remplies ou complètes et il faudra pouvoir les modifier grâce à divers outils d'édition, mais avant cela juste un petit mot sur les métadonnées audio.

Les formats de métadonnées audio

ID3 est de facto le standard utilisé pour les métadonnées audio qui signifie " IDentify an MP3", mais en fait il ne s'applique pas qu'aux fichiers MP3, cela marche également pour les fichiers audio FLAC ou OGG. Il se décline en plusieurs versions:

  • ID3v1: c'est la première version qui date de 1996, où on retrouve des informations comme le titre, l'artiste, l'album, l'année de parution, un commentaire et le genre musical
  • ID3v1.1: idem avec le numéro de la piste sur l'album
  • ID3v2: c'est beaucoup plus riche, on peut rajouter à peu près tout et n'importe quoi, en plus de l'image de l'album, on peut aller jusqu'aux paroles de la piste, le compositeur, l'arrangeur, etc. on trouve également d'autres champs intéressants pas toujours utilisés par les lecteurs comme ReplayGain qui donne le volume sonore de la piste et permet la normalisation du son à la lecture. La dernière version de ce standard est la ID3v2.4 qui date tout de même de l'an 2000, presque une éternité.

ID3 n'est pas le seul format d'encodage des métadonnées audio, sans évoquer les formats propriétaires (iTunes, ASF/Windows media, …) il existe également les formats documentés et ouverts:

  • les tags APE qui existent dans les versions APEv1 et APEv2 dont on retrouvera ici la description de l'ensemble des champs, il a le défaut de ne pas embarquer d'image de la jaquette
  • les tags vorbis qui peuvent être utilisés pour les fichiers audio Vorbis, FLAC, Theora et Speex, on retrouvera le format des différents champs par

C'est assez difficile de comparer ces différents formats, ils intègrent tous les différents champs qui vont bien dont le ReplayGain, ID3 est certainement de loin le format le plus utilisé et c'est l'assurance que la plupart des lecteurs le reconnaissent même dans sa dernière version, le format APE est donné pour être plus simple et plus flexible avec une meilleure reconnaissance des différentes langues, mais il n'intègre pas les images.
En revanche en se projetant vers l'avenir, on peut constater que la dernière version d'ID3 date de 2000, autant dire un siècle à l'échelle de l'informatique et que le site officiel n'a pas évolué depuis plus de 10ans maintenant, ça sent quand même un peu le sapin et on peut se demander si les autres formats ne vont pas le supplanter à terme, la problématique se pose également pour le format MP3 mais c'est un autre sujet.

Dans tous les cas il faudra éviter le mixte de format de métadonnées rendu possible par le fait que suivant les versions on peut se retrouver avec des métadonnées ID3 et APE en début et fin de fichier (ou vice-versa), ça peut entraîner des conflits et des erreurs de lecture suivant le lecteur.

Sans être totalement exhaustif et en faisant l'impasse sur les outils en ligne de commande, passons maintenant à la présentation de deux outils d'édition des métadonnées, l'un en mode automatique et l'autre en mode manuel.

Taguer automatiquement les métadonnées avec MusicBrainz Picard

MusicBrainz Picard est un outil très puissant d'édition de métadonnées audio, il va de pair avec une base de données que tout un chacun peut entretenir et alimenter. Pour la petite histoire et les amateurs de Star Trek, le nom Picard vient du nom du commandant du vaisseau Entreprise Jean Luc Picard (en français dans le texte) dans la série Star Trek la nouvelle génération.
Titre de l'image
Picard permet de traiter des lots de fichiers musicaux de deux manières. Tout d’abord pour chaque fichier à partir de ses métadonnées et du nom d’origine, il va identifier dans sa base de donnée la piste correspondante qui complètera ou rajoutera les bonnes données avec la jaquette. La deuxième méthode consiste à calculer l’empreinte musicale du fichier pour trouver une empreinte similaire dans la base et rattacher ainsi le fichier d’origine avec la piste qui correspond à l’empreinte.

Pour les fichiers qui n’ont pas été trouvés par une des deux méthodes, il reste à les rechercher directement sur le site. Il existe ainsi une interaction entre le navigateur et Picard qui permet d’identifier et de baliser les fichiers. Dans Picard on sélectionne le fichier non trouvé, ça nous renvoie automatiquement sur la page du navigateur avec une liste de pistes similaires, on choisit notre piste, on clique sur TAGGER dans le navigateur et le tour est joué !
Titre de l'image

Il peut exister des faux positifs, des pistes rattachées à des compilations généralistes qu’on préfèrerait rattacher aux albums de l’artiste ou bien encore des pistes inexistantes dans la base, enfin tout un tas de bonnes raisons pour traiter certains fichiers manuellement d'où l'emploi complémentaire de Kid3.

Taguer manuellement avec Kid3

J'ai rapidement cherché les outils d'édition de métadonnées audio en m'attardant sur l'un des plus populaires d'entre eux qui est easyTAG, mais il a la fâcheuse tendance à faire ça de manière un peu trop automatique sans qu'on ait vraiment la main sur ce qui se passe.
Finalement j'ai jeté mon dévolu sur Kid3, il est très puissant pour l'édition manuelle bien qu'il soit également capable aussi de remplir automatiquement les métadonnées de piste audio.
Titre de l'image

Dans le screenshot ci-dessus, on peut voir qu'un fichier audio contient généralement des métadonnées ID3 v1.1 et v2.30, ces dernières ayant été remplies automatiquement avec Picard.
L'outil intègre différentes fonctionnalités permettant de filtrer les fichiers pour leur appliquer des traitements particuliers par lot. L'outil filtre permettra de sélectionner les fichiers ne contenant pas de jaquettes (par exemple) pour pouvoir ensuite les intégrer manuellement.

Titre de l'image

On peut également faire une sélection de pistes et leur appliquer un traitement unique comme la suppression d'un champ non conforme au standard (lignes en rouge par défaut).

Titre de l'image

Ce n'est qu'un survol de toutes les fonctionnalités de Kid3 qui dispose par ailleurs d'un mode terminal permettant de créer des scripts de traitement par lot.

Pour aller plus loin

  • # Kid3

    Posté par  (site web personnel) . Évalué à 3.

    Merci pour la présentation de Kid3, je ne connaissais,je regarderai.
    Par le passé j'ai pas mal utilisé Musicbrainz Picard, pas toujours très simple à comprendre, mais efficace quand on maîtrise.
    Sinon lorsque j'ai numérisé tous mes CD en Flac j'ai industrialisé le processus en utilisant Beets, outil python en ligne de commande, avec des scripts shell autour.

    • [^] # Re: Kid3

      Posté par  (site web personnel) . Évalué à 4.

      Moi j'avais utilisé abcde pour la même chose. Très simple mais redoutablement efficace.

      • [^] # Re: Kid3

        Posté par  (site web personnel) . Évalué à 3.

        Beets permet des trucs sympas en ligne de commande… Et donc via ssh… J'ai choisi cela pour mon serveur navidrome car ce dernier fait le choix de ne pas autoriser de modifier de fichier a distance. Ainsi si a distance je repère un problème de tag je peux me connecter en ssh pour le corriger.

  • # easyTAG

    Posté par  . Évalué à 4.

    Merci pour la découverte de Kid3, faudra que je teste.
    Je suis habitué à easyTAG. C'est vrai que son ergonomie est particulière, mais je m'y suis fait et j'apprécie de pouvoir faire beaucoup de choses au clavier, sans la souris. Mais je n'ai jamais ressenti d'automatismes imposés dans ce logiciel, à quoi faites-vous allusion ?

    Sinon, même avec acouphène également, j'apprécie la musique "à toc la gamelle" :
    - quand je dois passer par des MP3, c'est à 320, qualité max (vieux lecteurs, auto radio MP3, etc)
    - mais quand j'achète un CD, c'est rip direct en FLAC

    Librairie sur le FW/NAS pour Clementine, et synchro avec le téléphone avec FolderSync pour lecture avec JetAudio (gap less).

    • [^] # Re: easyTAG

      Posté par  . Évalué à 2.

      Librairie sur le FW/NAS pour Clementine,

      Je crois qu'il est temps de passer à https://www.strawberrymusicplayer.org/ Oui, tout ça va trop vite…

      • [^] # Re: easyTAG

        Posté par  (site web personnel, Mastodon) . Évalué à 3.

        Clementine n'est pas mort son développement reste très actif et strawberry n'apporte pas grand chose en plus (voire moins de fonctionnalités)

        https://www.funix.org mettez un manchot dans votre PC

        • [^] # Re: easyTAG

          Posté par  . Évalué à 2.

          Merci, effectivement, on dirait que c'est bien développé, mais du coup, j'ai cherché une simple liste de nouveautés, je n'ai rien trouvé, c'est pas facile de voir ce qui est réellement développé dans l'application.

          Mais oui, je ne sais plus pourquoi je suis passé à Strawberry un jour…

  • # Kid3

    Posté par  . Évalué à 3.

    À noter que kid3 existe aussi sur Android et permet donc de tagger directement sur le téléphone.

    Par contre, je n'ai pas encore trouvé de bon outils pour ajouter les tag replaygain directement sur le téléphone. Si quelqu'un a une solution pour cela, je serais fort ravi.

  • # Il lui manque juste un truc...

    Posté par  (site web personnel) . Évalué à 3.

    Le seul reproche que je fait à ID3, c'est sur la gestion de l’internationalisation. Quand j'ai une piste de Jpop, j’aimerais avoir certains champs avec le contenu en japonais, en japonais translittéré en alphabet latin, et traduit en anglais. S'il est bien possible de dupliquer des champs (avoir plusieurs nom de piste par exemple), il n'est pas possible d'y rattacher le "format" du contenu.
    Sinon, pour ma part, je tague principalement avec Foobar2000 avec un plugin Discogs, et Picard.

  • # Beets.io

    Posté par  . Évalué à 3. Dernière modification le 18 décembre 2023 à 23:37.

    J'avais été déçu par les résultats de Picard il y a très longtemps (pistes interverties,…), je suppose que ça s'est amélioré depuis…

    Quand je cherchais une liste d'images docker utiles pour un NAS perso, je suis tombé sur Beets https://beets.io/ qui permet par un système de plugin de combiner plusieurs des outils mentionnés dans l'article. Je n'ai pas pris le temps de creuser plus pour l'instant.
    Le côté extensible/personnalisable me plaît. Je pense qu'il y a moyen d'ajouter un script python perso pour essayer d'uniformiser la capitalisation de mes titres…

    Bears, beets, battlestar galactica…

    Edit: zut j'avais pas vu qu'il avait déjà été mentionné plus haut

  • # C'est pas libre, mais c'est bien

    Posté par  . Évalué à 1.

    J'ai taggué une grosse partie de ma musique sous Windows il y a très longtemps avec Metatogger. J'ai pas trouvé d'équivalent d'aussi bonne qualité sous Linux. Même si c'est pas libre, mais ça marche très bien sous Wine.

    Sinon, comme j'achète des CD, je les rips avec whipper, ça va sur le nas et c'est lu par kodi connecté à l'ampli.

Suivre le flux des commentaires

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