« Gestion audiothèque » : différence entre les versions

De Vanlindt Marc
Aller à la navigation Aller à la recherche
 
(137 versions intermédiaires par le même utilisateur non affichées)
Ligne 1 : Ligne 1 :
== Introduction ==
== Introduction ==
Il existe deux formats dans lesquels nous retrouvons, en général, la musique  
Il est de plus en plus difficile d'écouter de la musique dans de bonnes conditions.


# '''MP3 ''': le format le plus courant, destructif mais compatible avec tout.
Beaucoup de gens n'achètent plus de musique et passent par des solutions de streaming, comme '''YouTube Music''' ou '''Spotify''', soit en acceptant des publicités si version gratuite, soit en payant un abonnement pour des qualités légèrement supérieures.  
# '''FLAC ''': le format des audiophiles, sans destruction, diminuant la taille sans diminuer la qualité.
Cela n'est pas sans raison.


==== Formats destructifs ====
Pourtant, nous sommes beaucoup à avoir acheté les droits sur la musique, en achetant CDs, K7s, vinyls...
On peut parfois retrouver d'autres formats, comme le '''Vorbis (OGG)''', le '''OPUS''' ou le '''AAC (MP4/M4A).'''


Ces formats, bien que destructifs comme le '''MP3''' sont parfois de bien meilleure qualité, l''''OPUS''' allant jusqu'à proposer des fichiers trois fois plus petits que le '''MP3''' mais avec une qualité proche du '''FLAC'''. Le problème est que ces formats ne se sont pas imposés et que le '''MP3''' est le seul à pouvoir être lu sur tous les appareils prévus pour lire de la musique, même les plus anciens car, étant rétrocompatible, même un ancien lecteur '''MP3''' d'une voiture d'il y a 20 ans restituera la bonne qualité d'un '''MP3''' récent.
=== Droit à la copie privée ===
En Belgique, nous avons une loi qui dit : "'''Toute personne a le droit de réaliser une copie privée si la source est licite'''" qui est une '''extension au droit d'auteu'''r puisqu''''autorise''' la réalisation d'une '''copie''' '''sans devoir passer par une demande à l'auteur ou l'éditeur'''.


Ce problème vient en partie d'une chose : le fait que le format soit propriétaire ou non.
Celle-ci est disponible sur le site du '''SPF Economie'''<ref>[https://economie.fgov.be/fr/themes/propriete-intellectuelle/droits-de-propriete/droits-dauteur-et-droits/droits-dauteur/utilisation-dune-oeuvre/copie-privee-et-reprographie Copie privée et reprographie - SPF Economie]</ref>.


Lorsque '''Fraunhofer''' a créé le '''MP3''', il s'agissait d'un format propriétaire et il fallait payer une licence pour obtenir les outils pour lire et encoder en '''MP3'''. Un groupe de développeur a alors créé son propre codec, '''LAME''', toujours maintenu et offrant une bien meilleure qualité. Mais une très grosse entreprise ne peut pas utiliser un codec libre et open source car celui est fourni sans garantie. Donc on paye '''Fraunhofer'''.   
Cela peut sembler contre-intuitif mais il n'est pas obligatoire d'être propriétaire de l'oeuvre pour posséder une copie privée si la copie a été réalisée par la personne elle-même, que c'est dans un cadre d'écoute personnelle et que la source est licite.   


C'est ce qu'a fait '''Microsoft''' pour son '''Windows Media Player'''. Il était possible d'encoder en '''WMA''' et en '''MP3.''' Une piste encodée en '''WMA''' donnait mieux qu'en '''MP3''', mais c'est car '''Microsoft''' avait demandé une version modifiée à '''Fraunhofer''' afin de rendre ses outils un peu plus rapide au détriment de la qualité.  
Le '''SPF''' le confirme : 
{| class="wikitable"
|'''Introduction'''
| colspan="2" |'''''" Sous certaines conditions, les copies effectuées à des fins privées peuvent toutefois être réalisées sans autorisation'''. '''C’est en vertu de cette exception''' au droit d’auteur et aux droits voisins '''qu’il est permis de faire des copies''' '''d’un CD''' (ou partie d’un CD), pour le mettre sur un lecteur MP3 ou sur sa tablette par exemple, '''ou d’un CD emprunté à la Médiathèque''', '''ou''' '''d’un film qui passe à télévision''' afin de le visionner à un moment ultérieur. Il en est de même des photocopies d’un article ou d’une partie d’un livre effectuées à des fins strictement privées. Les photocopies d’un article ou d’une partie d’un livre réalisées par une personne dans le cadre de ses activités professionnelles sont également autorisées par la loi sur le droit d’auteur dans le cadre d’une autre exception, l’exception de reprographie. "''
|-
|'''Usage privé'''
|''" Les copies ne peuvent être réalisées '''que par une personne physique pour un usage privé'''. Cela signifie que '''la copie réalisée ne peut être utilisée à des fins commerciales'''. "''
|Les fins commerciales concernent églament un service rendu gratuitement.
On ne peut faire quelque chose à la place de quelqu'un. On peut juste lui mettre les outils en place et le guider pour qu'il le fasse lui-même, de manière gratuite, tout cela étant un prêt.
|-
|'''P2P'''
'''et '''illégal'''
| colspan="2" |''" '''Effectuer une copie privée à partir d’une source illicite, n’est pas autorisé'''. La Cour de Justice de l'Union européenne l’a clarifié dans un arrêt du 10 avril 2014. On entend par source illicite, la source à partir de laquelle il est porté atteinte aux droits des auteurs ou des titulaires de droits voisins. '''La copie d’une œuvre via un réseau P2P, même effectuée pour son usage personnel, constituera souvent une source illicite, et donc, n’est pas autorisée par la loi.''' "''
|}
Les autres sections ne concernent pas notre cas.


Contrairement à '''LAME''', le codec '''Fraunhofer''' n'a pas cherché à faire évoluer la qualité mais est passé au 5.1 et au Surround pour une utilisation vidéo, faisant que leur codec propriétaire était encore très utilisé.
Les sources licites sont, par exemple : 


Un autre groupe, '''xiph''', a créé le codec '''Vorbis''', totalement libre et open-source cherchant à offrir une alternative au '''MP3''' en proposant, entres autres le 5.1. '''OGG''' n'est pas un format c'est un conteneur pouvant contenir plusieurs codecs. Donc si vous voyez un '''OGG''', c'est peut-être un '''MP3''' (mais c'est  très rare)... Ce codec est encore très utilisé entre autres pour les pistes audios de films ou séries.
* Oeuvre achetée
* Oeuvre louée à la médiathèque
* Oeuvre empruntée à un ami
* Enregistrer la radio
* Enregistrer la télévision


Nous pouvons donc avoir le même '''MP3''', faisant exactement la même taille, au même bitrate, mais avec trois qualités différentes.  
Cette loi fait suite à la directive européenne '''2001/29/CE du Parlement européen et du Conseil du 22 mai 2001 sur l'harmonisation de certains aspects du droit d'auteur et des droits voisins dans la société de l'information.'''<ref>[https://eur-lex.europa.eu/legal-content/FR/TXT/HTML/?uri=CELEX:32001L0029 Directive 2001/29/CE]</ref>
 
Avant cela, il y avait une précédente loi, datant de 1994, basée sur une autre directive européenne, la '''92/100/CEE'''<ref>[https://eur-lex.europa.eu/legal-content/FR/ALL/?uri=CELEX:31992L0100 Directive 92/100/CEE]</ref> encadrant le prêt par des institutions officielles, telles que les médiathèque. Cette directive voit le prêt comme une substitution à l'achat et estime qu'il doit y avoir rémunération de l'auteur lorsqu'il y a prêt.
 
Toutes ces lois, arrêtés royaux, directives... sont nés de la démocratisation à l'époque des enregistreurs '''VHS''' et '''K7 audio''' ayant amené à une grosse baisse des ventes.
 
Bien que les directives européennes aillent à l'encontre du droit à la copie privée, la Belgique, et plusieurs autres pays peuvent l'autoriser de par l'application d'une taxe sur différents supports.
 
=== Taxe Auvibel ===
Chose peu connue : depuis '''1994''', en '''Belgique''', beaucoup de '''supports numériques''' sont soumis à la '''taxe''' '''Auvibel'''<ref>[https://www.auvibel.be/fr/ '''Auvibel''' - Site officiel]</ref>, qui reverse une partie du '''prix du support'''<ref>[https://www.auvibel.be/fr/remuneration/tarifs-et-definitions/ '''Auvibel''' - Montants par support]</ref> aux sociétés de '''droits d'auteur''' puisqu'il est offert le droit à tous de réaliser sa '''copie privée''' sans devoir forcément posséder l'original. Ils estiment donc que doit être appliquée une taxe à tout appareil permettant de :   
 
* Créer une copie privée
* Contenir une copie privée
* Lire une copie privée
 
==== Supports taxés actuellement (2022) ====
{| class="wikitable"
|+
!Support
!Montant HTVA
|-
|Carte mémoire
|1,5 €
|-
|Clef USB
|1,5 €
|-
|Baladeur audio
|2,7 €
|-
|Smartphone
|4,3 €
|-
|Tablette
|4,3 €
|-
|HDD externe
|5,4 €
|-
|Appareil de salon
|6,4 €
|-
|IPTV officiel
|4,3 €
|-
|Ordinateur grand public
|4,3 €
|-
|Imprimantes jet d'encre
|2,7 €
|-
|Liseuse
|1,1 €
|-
|CD vierge (pièce)
|0,1 €
|-
|DVD vierge (pièce)
|0,2 €
|-
|Reconditionné
| 60%
|}
Les supports taxés ont évolué au fil du temps, à l'époque il y avait les disquettes, les VHS et les K7 audio... 
 
Toujours est-il que le cadre offert par cette loi vous permet d'avoir votre propre audiothèque, de bien meilleure qualité que les solutions de streaming, tout en restant dans la légalité.
 
=== Et ailleurs ? ===
Un pays  comme la Grande-Bretagne se base principalement sur le copyright, qui a le même but que le droit d'auteur mais en a une vision différente. Contrairement au droit d'auteur, le copyright ne prévoit pas d'extension permettant la copie privée.
 
En Angleterre, la musique est au même prix, les supports vierges sont beaucoup moins chers MAIS il est totalement interdit de réaliser une copie d'une oeuvre sous copyright sans avoir une autorisation de l'auteur ou que cette oeuvre ne soit autorisée dans un cadre très clairement défini (éducation, médical, scientifique...). Les amendes en cas de non respect peuvent être énorme et si un avocat vous prend en grippe et veut faire un exemple, cela peut aller jusqu'à la prison.
 
En Grande-Bretagne, il est donc courant de trouver des albums "doubles" comprenant le CD ainsi qu'un lien vers une version MP3 légale à pouvoir mettre sur son balladeur. C'est aussi une des raisons pour laquelle iTunes de Apple a si bien marché, il a longtemps été la principale plateforme permettant d'acheter sa musique légalement pour l'écouter sur appareil mobile.
 
=== Conclusion ===
A l'heure actuelle, beaucoup de gens ne possèdent plus de musique et passent par le streaming ou simplement la radio.
 
Le problème de l'un comme de l'autre est que n'est disponible que ce que ces plates-formes proposent et que dès que l'on a l'habitude d'écouter des genres un peu alternatifs, il n'est pas rare de voir des artistes, des albums, certains morceaux disparaitre...
 
De plus, les "petits artistes" sont rarement présents ou disparaissent également si pas assez rentables.
 
En Belgique nous avons pourtant un droit qui semble aller "de soit", mais qui ne l'est pas.
 
Chacun, quels que soient ses moyens, peut se créer, s'il en prend le temps, un capital culturel et intellectuel dont il peut jouir comme il le désire...
 
Certes il est prestigieux d'avoir l'original du remaster 2013 Deutsche Grammophon de l'enregistrement de la 9ème de 1977, dirigée par Karajan. Mais ce n'est pas car quelqu'un n'a pas les moyens de se l'offrir qu'il n'a pas droit d'en réaliser une copie et de pouvoir l'écouter s'il le réalise dans le cadre de la loi. On ne l'oblige pas à acheter la version à 2€ tirée d'un MIDI foireux ou jouée par un orchestre de débutants... (c'est directement pour ça que de telles versions existent dans les pays ou la copie privée n'est pas autorisée...)
 
Le droit à la copie privée est ce qui vous permet, dès que vous croisez un album que vous aimez, que ce soit à la médiathèque ou chez un ami, d'en réaliser une copie légale.
 
C'est ce qui vous permet d'avoir votre propre audiothèque, pouvant comprendre des milliers d'albums, en ne gardant que les meilleures versions et qualités, tout en étant à l'abri de les voir disparaitre.
 
C'est un '''droit''' d'une '''importance capitale''' car il '''atténue''' la '''différence de classes''' en la '''réduisant''' directement '''par un accès égal à tous à la culture'''.
 
== Buts de la page ==
 
=== 🎵 Audiothèque Jellyfin ===
Le but ici est de vous permettre de :
 
# Gérer vos albums proprement
# Les rendre accessibles sur internet
# Sans que cela ne soit public...
## avec une ip changeante
## grâce à une gestion des utilisateurs.
 
Pour cela, il faut :
 
# Un ordinateur simple avec USB3 faisant office de serveur
# Un bon disque dur avec sa propre alimentation où héberger la musique
# Une connexion internet qui ne joue pas au yo-yo...
# Idéalement un onduleur gardant le serveur allumé en cas de panne de courant pas trop longue. Vous pouvez également par un bon Raspberry Pi, qui s'allume tout seul dès qu'il a du courant, mais il faut revoir tous les scripts qui viennent :)
 
Pour connaître l'IP à utiliser, je passe par un script qui se lance au démarrage de la machine et qui toutes les deux heures envoie mon IP sur mon Nextcloud. Si vous utilisez l'outil de synchronisation Google Drive, vous pouvez également l'envoyer là.
 
Voici le code du fichier '''SENDIP.BAT''' : <syntaxhighlight lang="batch">
@echo off
:loop
for /f %%i in ('powershell -command "(Invoke-RestMethod -Uri https://api.ipify.org)"') do set ip=%%i
echo http:\\%ip%:8096 > C:\Moncloud\monip.txt
timeout /t 7200 /nobreak >nul
goto loop
</syntaxhighlight>C'est important car à la moindre coupure internet votre ip change. Ainsi, où que vous soyez, tant qu'il y a internet chez vous, ce fichier sera mis à jour sur votre cloud. Si depuis votre smartphone vous voyez que le fichier n'est plus mis à jour, vous savez qu'il y a une coupure d'internet chez vous. 
 
Pour vous assurer que ce code se lance à chaque démarrage, ouvrez une fenêtre d'exploration de fichiers et mettez l'adresse "'''shell:startup'''". Tous les fichiers contenus dans ce dossier sont directement lancés au démarrage. Copiez y le fichier '''SENDIP.BAT'''. 
 
Pour bien gérer son audiothèque et avoir quelque chose de propre, il ya plusieurs choses à savoir. 
 
== Types de formats ==
Il existe deux formats dans lesquels nous retrouvons, en général, la musique :
# '''MP3 ''': le format le plus courant, '''destructif''' mais compatible avec tout.
# '''FLAC ''': le format des audiophiles, '''non-destructif''', diminuant la taille sans diminuer la qualité.
Parmis les premières choses à comprendre il y a donc :
 
=== Qu'est-ce qu'un format et qu'est-ce qu'un codec ? ===
De manière très simple : 
 
# '''Format ''': c'est l'extension du fichier qui indique en général le format (MP3, FLAC, M4A ou MP4...)
# '''Codec ''': Un codec est un outil permettant de "'''co'''"mpresser et '''"déc'''"ompresser des données dans un certain format.
 
==== Analogie avec un texte ====
En général l'évolution d'un codec passe surtout par l'évolution de la partie compression.
 
Afin de mieux comprendre le principe du codec destructif, nous allons faire une analogie et partir de la phrase suivante, que ChatGPT m'a généré.
 
'''Attention''', une analogie est forcément une simplification et vulgarisation... Il est évident que c'est plus compliqué que ça. Si vous avez compris, tant mieux, car ce sera toujours une meilleure compréhension que celle de la majorité des gens. Mais ne pensez pas avoir compris  : <syntaxhighlight>À Noël, le vieux maître pêcheur goûta un exquis rôti de bœuf accompagné d’élégantes légumes où mûrît un zeste d’âme très gênée.</syntaxhighlight>Nous allons partir du fait que trois formats, passant par plusieurs codecs ou évolutions, utiliseront la même décomposition de la phrase :
{| class="wikitable" style="text-align:center; background-color:#96fffb;"
|-
! À
! style="background-color:#c7ffc6;" | No
! ë
! style="background-color:#c7ffc6;" | l, le vieux ma
! î
! style="background-color:#c7ffc6;" | tre p
! ê
! style="background-color:#c7ffc6;" | cheur go
! û
! style="background-color:#c7ffc6;" | ta un exquis r
! ô
! style="background-color:#c7ffc6;" | ti de b
! œ
! style="background-color:#c7ffc6;" | uf accompagn
! é
! style="background-color:#c7ffc6;" | d'
! é
! style="background-color:#c7ffc6;" | l
! é
! style="background-color:#c7ffc6;" | gantes l
! é
! style="background-color:#c7ffc6;" | gumes o
! ù
! style="background-color:#c7ffc6;" | m
! û
! style="background-color:#c7ffc6;" | r
! î
! style="background-color:#c7ffc6;" | t un zeste d'
! â
! style="background-color:#c7ffc6;" | me tr
! è
! style="background-color:#c7ffc6;" | s g
! ê
! style="background-color:#c7ffc6;" | n
! é
! style="background-color:#c7ffc6;" | e.
|}
La compression maximale de ces trois formats donnera la même phrase sans aucun accent ou caractère spécial  :<syntaxhighlight>A Noel, le vieux maitre pecheur gouta un exquis roti de boeuf accompagne d’elegantes legumes ou murit un zeste d’ame tres genee.</syntaxhighlight>Nous allons partir du fait que nous utilisons toujours le même taux de compression, passant ici par l'utilisation de quatre caractères à modifier pour passer de notre phrase compressée à celle d'origine.
 
===== Format 1 =====
 
====== Codec 1 ======
 
Celui-ci gardera quatre caractères : '''é''', '''ù''', '''õ''' et '''ô'''. <syntaxhighlight>A Noel, le vieux maitre pecheur gouta un exquis roti de boeuf accompagné d’élégantes légumes où murit un zeste d’ame tres genée.</syntaxhighlight>Sur les quatre caractères ajoutés, deux sont inutiles.
 
====== Codec 2 ======
On passe alors par un deuxième codec qui effectue la compression différement.
 
Ce nouveau compresseur, au lieu de garder 4 accents de base, analysera les accents les plus utilisés et ne gardera que ceux là, donc ici '''é''', '''ù''', '''ë''' et '''ê''', nous avons donc, toujours avec le même taux de compression :<syntaxhighlight>A Noël, le vieux maitre pêcheur gouta un exquis roti de boeuf accompagné d’élégantes légumes où murit un zeste d’ame tres gênée.</syntaxhighlight>
 
===== Format 2 =====
 
====== Codec 1 ======
Ce nouveau format va faire autrement, au lieu d'indiquer des caractères à utiliser, il vont indiquer les accents à garder.
 
Notre premier codec partira de la même décomposition et utiliser les quatre accents les plus utilisés : '''aigu '''', '''grave''' `, '''circonflexe ^''' et '''tilde ~'''.<syntaxhighlight lang="abap">À Noel, le vieux maître pêcheur goûta un exquis rôti de boeuf accompagné d’élégantes légumes où mûrît un zeste d’âme très gênée.</syntaxhighlight>
 
====== Codec 2 ======
Puis l'évolution ou un autre codec décidera de partir sur les accents les plus utilisés, remplaçant le tilde par le tréma. 
 
Nous avons avec ce format presque la réalité : <syntaxhighlight>À Noël, le vieux maître pêcheur goûta un exquis rôti de boeuf accompagné d’élégantes légumes où mûrît un zeste d’âme très gênée.</syntaxhighlight>Mais nous pouvons voir qu'aucun de ces deux formats ne tient compte de notre pauvre '''bœuf''' écrit '''boeuf''' car ils se concentrent sur le principal et que cette faute est une faute tolérée.
 
===== Format 3 =====
 
====== Codec 1 ======
Avec l'évolution des technologies, un nouveau format va proposer quelque chose qui demandait trop de ressources avant pour un encodage rapide.
 
Au lieu d'indiquer un accent à appliquer à tous les caractères, on indique ce qui doit être appliqué. Avec un même taux de compression, le compressuer indique alors quatre choses :
 
# tous les accents : aigus, graves, circonflexes, tilde, tréma
# toutes les déclinaisons du caractère C : pour avoir les  cédilles
# ligature des O : pour '''bœuf'''
# ligature des A : pour '''curriculum vitæ'''
 
Ce troisième format nous donnera alors exactement le contenu original : <syntaxhighlight>À Noël, le vieux maître pêcheur goûta un exquis rôti de bœuf accompagné d’élégantes légumes où mûrît un zeste d’âme très gênée.</syntaxhighlight>et peut même aller plus loin puisque prend en compte des caractères que nous n'utilisons même pas.
 
====== Codec 2 ======
Mais un autre codec ira plus loin :
 
# Tous les accents et les cédilles rentrent dans les accents
# Ligature sur tous les caractères
# Déclinaisons
# Emoji
Ce nouveau codec permettra alors d'encore plus compresser puisqu'on n'a plus besoin de 4 modifications de caractères mais seulement des deux premières.
 
==== Conclusion ====
Nous pouvons voir ici que, même si la phrase est toujours lisible, elle est plus ou moins agréable à lire en fonction du format et du codec utilisé.
 
Il en va de même pour l'audio. Ce que nous écouterons nous semblera parfaitement acceptable, mais cela passe par de petites erreurs qu'un puriste peur remarquer.
 
=== Formats non-destructifs ===
Le '''FLAC''' est un format ouvert créé par '''xiph''' en '''2000''' dans le cadre du projet '''"OGG".''' Par abus de langage on parle de '''OGG''' pour les audios compressés car c'est souvent cette extension là qu'aura le fichier, mais en réalité le '''OGG''' est un conteneur pouvant contenir plusieurs flux se basant sur les codecs qu'ils ont créé :
 
* '''Vorbis ''': Audio avec perte, en principe au format '''OGA'''
* '''Theora ''': Vidéo, en principe au format '''OGV'''
* '''FLAC ''': Audio sans perte
* '''OPUS ''': Audio avec perte.
 
Il a également existé le format '''APE''', dont le format de tag, compatible avec les '''MP3''' est toujours utilisé, créé spécialement pour le logiciel '''Monkey's Audio''', mais ce logiciel ne s'étant pas imposé, le format audio '''APE''' a totalement disparu.
 
'''FLAC''' est connu pour offrir une compression supérieure à celle du '''ZIP''', pris en général comme référence pour la compression sans perte, tout en permettant une décompression plus rapide que le temps de la piste compressée, quel que soit le niveau de compession.
 
Avant cela, les audiophiles utilisaient soit des formats non destructifs comme le '''WAV''' ou le '''PCM''', mais qui ne permettaient pas les tags, faisant que les lecteurs audios n'affichaient pas les informations, soit alors ils réalisaient un '''ISO,''' une copie conforme d'un CD, en un seul fichier, mais pris par les lecteurs comme un réel CD avec plusieurs pistes.
 
Ce format est toujours utilisé et maintenant que la plupart des gens ont un accès internet haut-débit, un site comme '''Qobuz''' propose une alternative à '''YouTube Music''' et '''Spotify''' en proposant une écoute en qualité '''FLAC''' ainsi que l'achat des albums.
 
Depuis septembre 2025, '''Spotify''' propose une abonnement proposant le '''FLAC'''.
 
'''Apple''' a créé le format propriétaire '''ALAC''', offrant la même chose sans aucun avantage mais utilisé pour les offres haute qualité de '''Apple'''...
 
Bien que le '''FLAC''' soit sans perte, lors de l'encodage, il vous sera demandé '''16''' ou '''24bits'''.
 
==== 16 ou 24bits ? ====
Il peut sembler logique que '''24''' offre une meilleure qualité que '''16''' mais ce n'est pas le cas.
 
La majorité des '''FLAC''' viennent de sources en '''16bits''' car elles sont largement majoritaires. Si vous encodez un CD en '''16bit''', à la lecture vous aurez très exactement la même qualité que si vous l'aviez encodé en '''24bit''' car les 8bits en plus ne seront remplis que de 0.
 
Le '''24bit''' n'est utilisé que dans les studios et il faut donc que le studio soit directement la source.
 
Il est possible de rencontrer du '''24bit''', par exemple lorsque '''Peter Gabriel''', pour le 25ème anniversaire de son album "'''So'''", donnait un lien dans chaque CD afin de pouvoir télécharger la version studio '''FLAC''' '''24bits'''.
 
Les rips de vinyls sont, en principe, toujours en '''24bits''' avec, en plus, une fréquence à '''96Khz''' au lieu de '''44.1Khz'''
 
Il existe une réelle différence de qualité entre 16 et 24, donc si votre source est 24bits, convertissez en 24bits...
 
Voici une liste des supports pouvant être rencontrés et la manière de les encoder : 
 
{| class="wikitable"
|- style="text-align:center;"
! style="text-align:left;" | Place
! Nom du support
! colspan="2" | Où
! Qualité
! style="text-align:left;" | Convertir en
|-
| style="text-align:center; vertical-align:middle; font-weight:bold;" | 1
| style="vertical-align:middle; font-weight:bold;" | SACD <br />Super Audio CD
| colspan="2" style="vertical-align:middle;" | Magasins, internet
| style="vertical-align:middle;" | La meilleure qualité possible pour le grand public, mais il faut un lecteur spécial (certains lecteurs BluRay sont hybrides mais il faut vérifier).<br />Ce format est presque exclusivement utilisé pour la musique classique.<br />Etant multi-canal, il est également utilisé pour certaines oeuvres enregistrées dans ce but (Pink Floyd, Dire Straits...)<br />Attention, certains SACD sont double couche, avec sur une la version SACD et l'autre la version CD, faisant que certains SACD peuvent être lus dans un lecteur CD normal, mais sans offrir la qualité SACD.<br />Enfin, il faut faire attention lors de la conversion car le SACD ayant un format spécial, il doit être encodé avec une fréquence particulière. La fréquence sera toujours de 44,1 multiplié par une puissance de 2.
| FLAC bits et Khz en fonction de la piste d'origine.
|-
| style="text-align:center; vertical-align:middle; font-weight:bold;" | 2
| style="vertical-align:middle; font-weight:bold;" | Audio HiRes
| colspan="2" style="vertical-align:middle;" | Qobuz, Tidal, Apple Lossless
| style="vertical-align:middle;" | FLAC 24bits à une fréquence de 192Khz
| Laisser tel quel
|-
| style="text-align:center; vertical-align:middle; font-weight:bold;" | 3
| style="vertical-align:middle; font-weight:bold;" | BluRay Audio
| colspan="2" style="vertical-align:middle;" | Magasins, internet
| style="vertical-align:middle;" | Même qualité que l'Audio HiRes avec possibilité de multi-canal. <br />Nettement plus utilisé que le SACD pour tout ce qui est musique pop (Jimi Hendrix, Alan Parson, ...)
| FLAC bits et Khz en fonction de la piste d'origine.
|-
| style="text-align:center; vertical-align:middle; font-weight:bold;" | 4
| style="vertical-align:middle; font-weight:bold;" | CD Audio
| colspan="2" style="vertical-align:middle;" | Magasins, internet
| style="vertical-align:middle;" | Equivalent à FLAC 16bits à une fréquence de 44.1Khz. Un CD audio ne peut avoir une autre qualité que celle là.
| FLAC 16bits<br />44.1Khz
|-
| rowspan="2" style="text-align:center; vertical-align:middle; font-weight:bold;" | 5
| rowspan="2" style="vertical-align:middle; font-weight:bold;" | Vinyls
| rowspan="2" style="vertical-align:middle;" | Magasins, internet
|33T
| style="vertical-align:middle;" | Le vinyl étant analogique, il n'y a pas de bits, fréquences, etc. L'avantage du vinyl est que ses limites physiques imposent un mastering plus propre et mieux réalisé.<br />Cela amène au fait que même si en cinquième position, il peut parfois se retrouver en première, surtout sur des éditions récentes (par exemple Black Ice de AC/DC)
| rowspan="2" | FLAC 24bits<br />48Khz ou 96Khz
|-
|45T
| style="vertical-align: middle;" |Le 45 tours allant beaucoup plus vite et étant masterisé pour une seule piste, la qualité est en général à la fois meilleure de par son mastering et de par sa vitesse de lecture.
|-
| style="text-align:center; font-weight:bold;" | 6
| style="font-weight:bold;" | Streaming
| colspan="2" | Internet
| A ne prendre que si aucune autre source existe
| Ne pas convertir
|}
Les logiciels audio, quelque soit le nombre de bits de l'audio, travaillent jusqu'en 32bits en fonction des retouches effectuées.
 
En très gros : '''16bits''' signifie qu'un échantillon sonore est divisé en 65536. En travaillant en '''32bits''', le logiciel créé des étapes d'interpolation et au lieu de travailler sur des échantillons sonores divisés en 65536, chaque division est elle-même divisée en 65536, soit 4294967296 divisions par échantillon.
 
Bien qu'à une telle qualité, il sera difficile d'entendre la différence sans un excellent matériel, si vous effectuez une modification à l'audio et sauvez en '''FLAC''' '''32''', '''24''' et '''16bits''', il y aura une différence de qualité entre les trois.
 
'''Attention 2''' : Encore une fois, même si le vinyl est en 5ème position, il faudra toujours analyser les autres sources et le mastering de celle-ci. Le vinyl, même si un support de moins bonne qualité restera celui sur lequel le mastering sera le meilleur par obligation.
 
==== La fréquence ====
L'oreille humaine peut en général entendre les sons allant d'une fréquence de <math> 20Hz</math> à une fréquence de <math> 20KHz</math>.
 
Les enceintes courantes peuvent produire des sons allant jusqu'à <math> 20KHz</math>.
 
Si la fréquence d'une piste est de <math> 44.1KHz</math>, c'est car il existe le "théorème d'échantillonnage" qui est on ne peut plus simple : la fréquence captée doit être échantillonée à, au moins, le double de cette fréquence.
 
Pour le CD, ils ont voulu reproduire fidèlement jusqu'à 20 kHz. Le théorème impose d'échantillonner à au moins le double, soit 40 kHz minimum. Ils ont choisi 44.1 kHz pour avoir une marge de sécurité technique pour les effets et filtres appliqués numériquement.
 
Alors, pourquoi monter jusqu'à <math> 192KHz</math> ?
 
Car ce que j'ai dit plus haut serait faux pour beaucoup de personnes. Il n'y a aucune preuve scientifique que ce qui suit est vrai mais cela vient d'un manque d'études et du fait que celles ayant été effectuées ont été contestées.
 
Un chercheur japonais, Tsutomu Oohashi, a réalisé une étude en faisant écouter à des sujets un type de musique particulier, contenant beaucoup de hautes fréquences, afin d'analyser leur activité cérébrale pendant l'écoute.
 
Il a remarqué une activité cérébrale lorsque les sons à haute fréquence étaient joués même si inaudibles consciemment. Il a appellé cela "l'effet hypersonique".
 
Mais il y a plusieurs problèmes, dont un amené directement par Oohashi, ce qui montre l'honnêteté intellectuelle de sa démarche :
 
* Cet effet hypersonique disparait totalement si la musique est écoutée au casque plutôt que sur enceintes. Cela laisse donc supposer que ce n'est pas l'oreille qui "capte" les hautes fréquences mais d'autres partie du corps.
 
Le fait que le son puisse transmettre le son par conduction osseuse est un fait établi et connu depuis longtemps.
 
Beethoven, une fois devenu sourd, utilisait une latte en bois qu'il plaçait entre ses dents et reliée au piano afin de pouvoir faire parvenir le son à son cerveau grâce aux vibrations sur les os de sa machoire..
 
Mais d'autres problèmes ont été soulevé concernant son expérience :
 
* Il n'a pas été possible de la reproduire par un laboratoire occidental en utilisant la même musique. Mais...
* Biais culturel : la musique utilisée étant une musique asiatique, elle peut être perçue différement par des sujets asiatiques d'un côté et occidentaux de l'autre.
* Echantillon : l'étude de Oohashi se base sur un échantillon de 30 sujets, ce qui est très faible.
* Incertitude quant au matériel utilisé : certaines enceintes, lorsqu'elles produisent des hautes fréquences, peuvent avoir tendance à produire des artefacts dans les zones audibles.
 
Ses études ne sont donc pas réfutées, mais plusieurs biais méthodologiques ont été soulevés pouvant entrainer des conclusions fausées, ce qui est vrai aussi.
 
Toujours est-il que c'est au Japon qu'est né le label '''Hi-Res Audio''' qui impose à minima :
 
* Que la piste soit encodée en WAV ou FLAC à 96kHz et 24 bits
* Que le matériel d'écoute permette de décoder ces pistes.
* Que les enceintes aillent jusqu'à minimum 40kHz.
 
Ce qui est défendu par les audiophiles voyant cette étude comme réaliste est le fait d'avoir une meilleure '''harmonique'''.
 
L'harmonique, en très très gros, ce sont toutes les fréquences utilisées par un instrument lorsque l'on joue une note.
 
Par exemple, si j'ai un instrument dont le Do est situé à  500Hz et que je joue cette note, elle sera appellée la "'''fondamentale'''" et ses harmoniques seront 1000, 1500, 2000, 2500... Hz
 
Si je fais un DO à l'octave supérieure, donc une fondamentale de 1000Hz,  ses harmoniques seront 2000, 3000, 4000, 5000... Hz
 
Et si je passe encore à l'octave supérieure, avec une fondamentale à 2000Hz, les harmoniques seront de 4000, 6000, 8000, 10000... Hz
 
Certains instruments ont une harmonique très riche, comme le violon, la guitare, la guitare électrique ou les cymbales et d'autres n'en ont que très peu, comme la flûte. Ceux avec une harmonique riche produisent des harmoniques jusque dans les hautes fréquences là où les autres non.
 
Ces harmoniques en hautes fréquences font partie de la "'''texture'''" d'un son. Le fait de supprimer les harmoniques inaudibles amoindrirait la qualité de cette texture, ce qui pourrait être perçu inconsciemment.
 
Personnelement, j'ai tendance à penser que, en effet, il est mieux d'avoir une plus large fréquence et que certaines fréquences inaudibles peuvent être perçues. Néanmoins, je pense aussi que ces fréquences ne peuvent être perçues que si le cerveau est prêt à les accepter. Mon impression est que j'ai plus tendance à remarquer une différence de qualité sur une piste que j'aime que sur une piste que je n'aime pas. Cela m'amène aussi à, lorsque j'entends certaines musiques que je n'aime pas du tout, avoir une barrière car je ne suis plus en mesure de comparer la bonne ou la mauvaise qualité, elles deviennent toutes de "mauvaise qualité".
 
Certains artistes, tels que '''Aphex Twin''' avec leur titre bien connu <math>\Delta M_i^{-1} = - \alpha \sum_{n=1}^N D_i \left[ n \right] \left[ \sum_{j \in C \left[ i \right]}^{} F_{ji} \left[ n -1 \right] + Fext_i \left[ n^{-1} \right] \right]</math> qui, étant le vrai titre, est en général appellé "Formula" ou "Equation", joue avec les fréquences.
 
Voici le spectrogramme de ce morceau :
[[Fichier:02. Aphex Twin - Formula spectrogram.png|centré]]
Mais si dans '''Audacity''' on analyse pluis loin pour ne regarder que de petites sections :
[[Fichier:AphexTwinZoom.png|centré|1280x1280px]]
Cacher un message dans la fréquence d'un audio est une manière courante de transmettre des messages et n'est pas très compliquée.
 
Donc oui, il y a moyen de transformer une image en son :
[[Fichier:DeMeyer2.png|centré]]
Et si je transforme cette image en son allant de 24Khz à 48Khz sur FLAC 24bits de 96khz, j'aurais ce FLAC totalement inaudible (dans le sens où l'on n'entend strictement rien) mais pourtant existant :
[[Fichier:DeMeyer3.png|centré]]
Et si maintenant je prends un aute FLAC 24 bits 44.1 Khz ou 48Khz je peux mixer les deux :
[[Fichier:Mixfrequence.png|centré]]A l'écoute, il n'y a pas de différence entre chacune des pistes du bas.
 
Si je repars de notre image de Willy, on peut voir que que notre image n'est plus une image mais une onde à différentes fréquences donnant une "impression" d'image en noir et blanc si l'on regarde le spectrogramme.
 
Il est donc possible d'appliquer des effets sonores à cette "image". Je vais donc appliquer : 
 
* Fondu en ouverture : dégradé à gauche
* Fondu en fermeture : dégradé à droite
* Amplification : saturation du blanc
* Echo : petit flou dégradant les couleurs pures
 
{| class="wikitable"
|+
!Onde de base
!Onde modifiée
|-
|[[Fichier:Willbasecomparatif.png|centré]]
|[[Fichier:Willyaudacity.png|centré]]
|-
|[[Fichier:WillyNB1.png|centré]]
|[[Fichier:WillyNB2.png|centré]]
|}
Pour ceux ayant connu les télévisions en noir et blanc analogiques, cela rappelera sans doute quelque chose puisque les effets que j'ai appliqué sont, en gros, les distortions appliquées à l'onde par les téléviseurs de l'époque.
 
Vous venez de comprendre la télévision analogique de nos grands-parents : une seule onde mais les fréquences basses servaient à transmettre l'audio et les fréquences hautes servaient à transmettre la  vidéo. Mais comme tout était onde, toute distortion à l'audio se répercutait sur la vidéo et vice versa...
 
Ici plus haut, j'ai "étalé" mon image sur "10 secondes de largeur", maiis si si dans un audio de très haute qualité je met une image toute les 1/24 de seconde, vous aurez une vidéo directement dans votre audio...
 
Pour la télévision analogique couleur, c'est le même principe mais en un peu plus compliqué.
 
Afin d'assurer la compatibilité avec les téléviseurs noir et blanc, majoritaires, rien n'a été changé à l'onde perçue par ceux-ci. La couleur venait d'une seconde onde, modifiant la pemière, pour restituer les couleurs.
 
Mais une télévision transformait alors ce flux en trois ondes distinctes correspondant aux trois couleurs primaires :
{| class="wikitable"
|+
!Rouge
!Vert
!Bleu
|-
|[[Fichier:Rouge.png|centré|532x532px]]
|[[Fichier:Vert.png|centré|532x532px]]
|[[Fichier:Bleu.png|centré|532x532px]]
|}
qui une fois réunies donnent :
[[Fichier:Image couleur.png|centré]]Donc, ce que vous voyez là, c'est à l'origine une image de Willy en 300x240px puis qui est passée par :
 
# '''Python''' : On divise l'image couleur en trois images noir et blanc différentes en fonction des trois couleurs primaires : rouge, vert et bleu.
# '''Python''' : Chacune de ces trois images est transformée en audio
# '''audacity''' : On applique des effets à ces audios
# '''ffmpeg :''' On génère le spectrogramme de chaque audio
# '''Python''' : On recompose une image en attribuant chacune des trois images à un canal de couleur
Mais si vous paramétrez mieux et augmentez les qualités, il est tout à fait possible d'avoir, de cette manière, un résultat bluffant :
{|
!Image d'origine
! colspan="3" |[[Fichier:Starry.jpg|900x900px]]
|-
| rowspan="2" |'''Décomposition'''
|'''Rouge'''
|'''Vert'''
|'''Bleu'''
|-
|[[Fichier:R fusion r starry.png|centré|300x300px]]
|[[Fichier:V fusion r starry.png|centré|300x300px]]
|[[Fichier:B fusion r starry.png|centré|300x300px]]
|-
|Onde générée
|[[Fichier:R starry spectrogramNB1.png|centré|370x370px]]
|[[Fichier:V starry spectrogramNB1.png|centré|370x370px]]
|[[Fichier:B starry spectrogramNB1.png|centré|370x370px]]
|-
|Recomposition
| colspan="3" |[[Fichier:Fusion r starry spectrogram.png|centré|1200x1200px]]
|}
 
=== Formats destructifs ===
Ce que fait un format destructif est de supprimer l'inutile en fonction de ce que ce format considérera comme inutile ou inutile selon la manière dont vous l'aurez configuré.
 
Le premier format destructif utilisé massivement a été le '''MP3''' mais a amené à une multiplication des codecs pour le même format.
 
L'origine de plusieurs codecs pour un même format est principalement le problème du droit d'auteur.
 
==== MP3 ====
Lorsque '''Fraunhofer''' a créé le '''MP3''', il s'agissait d'un format propriétaire et il fallait payer une licence pour obtenir les outils pour lire et encoder en '''MP3'''.
 
Un groupe de développeur a alors créé son propre codec, '''LAME''', toujours maintenu et offrant une bien meilleure qualité. Mais une très grosse entreprise ne peut pas utiliser un codec libre et open source car celui est fourni sans garantie. Donc on paye '''Fraunhofer'''. 
 
C'est ce qu'a fait '''Microsoft''' pour son '''Windows Media Player'''. Il était possible d'encoder en '''WMA''' et en '''MP3.''' Une piste encodée en '''WMA''' donnait mieux qu'en '''MP3''', mais c'est car '''Microsoft''' avait demandé une version modifiée à '''Fraunhofer''' afin de rendre ses outils un peu plus rapide au détriment de la qualité. Ils cherchaient ainsi à imposer leur format '''WMA''' via des partenariats qui n'ont pas duré longtemps.
 
Nous pouvons donc avoir le même '''MP3''', faisant exactement la même taille, au même bitrate, mais avec trois qualités différentes.


En gros, il est considéré que si l'on encode avec '''Windows Media Player''' avec un bitrate de 128, cela équivaut à un encodage '''Fraunhofer''' avec un bitrate de 96. Là où un encodage '''LAME''' 128 équivaut à un '''Fraunhofer''' 160.
En gros, il est considéré que si l'on encode avec '''Windows Media Player''' avec un bitrate de 128, cela équivaut à un encodage '''Fraunhofer''' avec un bitrate de 96. Là où un encodage '''LAME''' 128 équivaut à un '''Fraunhofer''' 160.


Le '''AAC''' est également une création de '''Fraunhofer''' et est donc un format propriétaire vu comme l'évolution du '''MP3''', utilisé par '''YouTube Music''' et '''Spotify''' ainsi que par '''Apple.'''
L'avantage du '''MP3''' est son universalité. Même si un autoradio récent peut lire des formats plus récents, il lira le quand même le '''MP3'''.
 
'''Fraunhofer''' et '''LAME''' n'ont pas fait évoluer leurs encodeurs de la même façon. '''Fraunhofer''' s'est concentré sur les possibilittés, en ajoutant par exemple la possibilité de réaliser un '''MP3 5.1''' (via une extension payante), là où '''LAME''' s'est concentré sur la qualité d'écoute et ne permet que le mono ou la stéréo.
 
==== WMA ====
'''Microsoft''' a décidé de créer son propre format audio afin de proposer une chose que le '''MP3''' n'avait pas prévu : les '''DRM''', ou la gestion des droits d'auteurs, permettant à l'éditeur d'interdire la copie ou encore de mettre une date d'échéance après laquelle le fichier ne pouvait être lu.
 
Ces '''DRM''' n'ont pas tenu longtemps car ont posé de très nombreux problèmes :
 
Tout album rippé en '''WMA''' avait des '''DRM''' liés à la machine utilisée pour le rip, sans qu'on ne le sache et une simple mise à jour Windows pouvait parfois rendre les fichiers illisibles, imposant un nouveau rip...
 
De plus, '''Windows Media Player''', dès que l'on voulait synchroniser ses audios sur un lecteur portable, convertissait d'abord la piste en '''WMA''' pour lui ajouter des '''DRM'''... Si vous changiez de lecteur portable et y mettiez votre carte mémoire, aucune piste ne pouvait être lue...
 
Il y a eu un nombre incroyable de problèmes qui ont amené '''Microsoft''' à faire marche arrière, totalement supprimer l'application de '''DRM''' et proposer un outil permettant de supprimer les '''DRM''' des fichiers '''WMA''' protégés...
 
Enfin, cette manière de fonctionner enfreint les lois de certains pays, comme celle vue plus haut : le droit à la copie privée.
 
==== AAC (MP4, M4A) ====
Le '''AAC''' est également une création de '''Fraunhofer''', démarrée très tôt (1997), commandée par un conglomérat d'entreprises, et est donc un format propriétaire vu comme l'évolution du '''MP3''', utilisé par '''YouTube Music''' et '''Spotify (interface Web)''' ainsi que par '''Apple.'''


Bien que '''Fraunhofer''' annonce une amélioration de qualité par rapport au '''MP3''', elle n'est vraie qu'avec le codec '''Fraunhofer''' du '''MP3'''. Pas avec '''LAME''' qui, à bitrate égal, offre une meilleure qualité.
Bien que '''Fraunhofer''' annonce une amélioration de qualité par rapport au '''MP3''', elle n'est vraie qu'avec le codec '''Fraunhofer''' du '''MP3'''. Pas avec '''LAME''' qui, à bitrate égal, offre une meilleure qualité.


Néanmoins, c'est devenu un standard utilisé également par '''Netflix''', '''Disney''' et la majorité des plates formes de streaming videos. Celles-ci proposent toujours des systèmes beaucoup plus évolués, tel que le Dolby 5.1, le Dolby TrueHD ou encore le Dolby Atmos, mais pour ça, il faut un matériel que la très très grande majorité des gens n'a pas et si on ne l'a pas, ce sera du '''AAC''' stéréo.
Néanmoins, '''Fraunhofer''' s'orientant vers une utilisation vidéo et non audio de par le multi-canal, c'est devenu un standard utilisé par '''Netflix''', '''Disney''' et la majorité des plates formes de streaming videos. Celles-ci proposent toujours des systèmes beaucoup plus évolués, tel que le Dolby 5.1, le Dolby TrueHD ou encore le Dolby Atmos, mais pour ça, il faut un matériel que la très très grande majorité des gens n'a pas et si on ne l'a pas, ce sera du '''AAC'''.


Toujours est-il que si l'on a la possibilité d'encoder en '''MP3''' avec '''LAME''', cela vaut mieux que du '''AAC''' et, pour la vidéo, si l'on a la possibilité de passer par '''Vorbis''', qui a aussi continué à évoluer, cela vaut mieux également.
Toujours est-il que si l'on a la possibilité d'encoder en '''MP3''' avec '''LAME''', cela vaut mieux que du '''AAC''' et, pour la vidéo, si l'on a la possibilité de passer par '''Vorbis''', qui a aussi continué à évoluer, cela vaut mieux également.


L'un des avantages pésenté par '''Fraunhofer''' du '''ACC''' par rapport au '''MP3''' est l'absence de gap, le petit blanc entre deux pistes. Mais pour cela, les '''AAC''' doivent être intégrés dans un '''MP4''', cela ne fonctionne pas avec des fichiers séparés... '''LAME''' a de son côté réglé ce problème et le '''MP3''' est gapless, il n'y aucun gap lors de la lecture dans les lecteurs courants ('''WinAMP''', '''Foobar''', '''VLC'''...). Le '''Vorbis''' est également gapless par défaut.
Les principaux avantages que '''Fraunhofer''' met en avant son :
 
* Meilleure qualité que le '''MP3''' '''Fraunhofer'''  
* Multi-canal (jusqu'à 48)
* Absence de gap (micro-coupure entre pistes)
 
Mais il faut savoir que '''LAME''' de son côté a également fait évoluer son codec pour qu'il soit "gapless". Un album encodé avec '''LAME''' est donc tout autant gapless que le '''AAC'''.
 
==== Vorbis (OGG, OGA) ====
En 2002, '''xiph''' décide de créer un format et un codec totalement libre et open-source offrant :
 
# une meilleure qualité que le '''MP3''' et le '''AAC'''
# jusqu'à 255 canaux audios
# absence de gap
 
Ce codec ne s'est jamais vraiment imposé pour la musique bien que ce soit le codec utilisé par '''Spotify (application)''' et '''SteamOS''' pour le streaming'''.'''  
 
Il est également fortement utilisé par l'industrie du jeu vidéo et est le format de base pour les audios de la majorité des distributions '''Linux'''.
 
==== OPUS ====
L''''OPUS''' est un cas à part car il n'a pas du tout été créé pour la musique ou la vidéo.  


L''''OPUS''' est un cas à part car il n'a pas du tout été créé pour la musique ou la vidéo. Bien que sous licence libre, il est créé par un groupe de grosses entreprises voulant créer le meilleur codec pour la communication audio. Ils ont alors demandé à '''xiph'''...
Bien que sous licence libre, il est créé par un groupe de grosses entreprises voulant créer le meilleur codec pour la communication audio afin d'obtenir, au plus bas débit, la meilleure qualité possible pour la voix.  


C'est donc le codec utilisé par '''Facebook''' '''Messenger''', '''Google''' '''Meet''', '''What's App, Discord, Zoom'''...  
Ils ont alors demandé à '''xiph'''...


Mais en voulant absolument améliorer la qualité à très bas débit, ils ont créé le meilleur codec audio pour la musique à haut débit, tout en diminuant drastiquement la taille des fichiers. Et en plus de ça, ce codec est déjà présent partout vu qu'utilisé par les logiciels cités plus haut. N'importe quel navigateur internet actuel peut lire un fichier '''OPUS'''. De plus, ne cherchant pas à limiter l'utilisation, ce format est capable de gérer toute configuration jusqu'à 255 enceintes
C'est le codec utilisé par '''Facebook''' '''Messenger''', '''Google''' '''Meet''', '''What's App, Discord, Zoom'''...
 
Mais en voulant absolument améliorer la qualité à très bas débit, ils ont créé le meilleur codec audio pour la musique à haut débit, surpassant tous les autres formats, tout en diminuant drastiquement la taille des fichiers. Et en plus de ça, ce codec est déjà présent partout vu qu'utilisé par les logiciels cités plus haut. N'importe quel navigateur internet actuel peut lire un fichier '''OPUS'''.  


Depuis peu, '''YouTube Music''' passe par '''OPUS''' pour l'encodage de la musique.
Depuis peu, '''YouTube Music''' passe par '''OPUS''' pour l'encodage de la musique.


==== Formats non-destructifs ====
=== Tests ABX ===
Le '''FLAC''' est un format ouvert créé par '''xiph''', vu plus haut pour le '''Vorbis''' et le '''OPUS'''.
Ces comparatifs sont des tests réalisés à l'aveugle par des experts en partant de la méthode suivante :
 
* '''A''' : Version créée avec un certain codec
* '''B''' : Version créée avec un autre codec
* '''X''' : Une des des versions '''A''' ou '''B'''
 
On demande à plusieurs personnes de faire ce test, avec un très grand nombre d'échantillons.
 
Si après un grand nombe, les testeurs ont clairement reconnu à quelle version correspondait '''X''', c'est qu'il y a une différence de qualité. Sinon c'est qu'il n'y en a pas.
 
Il faut donc savoir que dans la plus haute qualité de chaque format, les tests '''ABX''' montrent qu'il ya très peu de différences et que plus de 99% des gens ne sont absolument pas capables de les entendre.
 
'''MP3''', '''AAC''', '''OGG''', '''OPUS'''... Tous à leur plus haute qualité ont une qualité quasi équivalente au '''FLAC''' et donc une qualité d'écoute équivalente.
 
Ce n'est pas forcément car un testeur a une "meilleure oreille" qu'il sera capable de discerner les différences entre deux formats. Cela vient aussi du fait que lorsque l'on sait comment fonctionne un codec, on sait à quels moments d'une piste il y a plus de "chances" de retrouver une différence.
 
Il existe des tests en ligne mais il faut les réaliser dans de bonnes conditions.  


Il a également existé le format '''APE''', dont le format de tag, compatible avec les '''MP3''' est toujours utilisé, créé spécialement pour le logiciel '''Monkey's Audio''', mais ce logiciel ne s'étant pas imposé, le format audio '''APE''' a totalement disparu.
==== Raison d'être de chaque format ====
La raison est le '''streaming'''.


'''FLAC''' est connu pour offrir une compression supérieure à celle du '''ZIP''', pris en général comme référence pour la compression sans perte, tout en permettant une décompression plus rapide que le temps de la piste compressée, quel que soit le niveau de compession.
Lorsque je stream ma musique depuis mon serveur, je peux le faire de deux manières :


Avant cela, les audiophiles utilisaient soit des formats non destructifs comme le '''WAV''' ou le '''PCM''', mais qui ne permettaient pas les tags, faisant que les lecteurs audios n'affichaient pas les informations, soit alors ils réalisaient un '''ISO,''' une copie conforme d'un CD, en un seul fichier, mais pris par les lecteurs comme un réel CD avec plusieurs pistes.
# Je lis directement le média : mais cela peut prendre beaucoup de bande passante si on lit des '''FLAC''' et est donc intéressant lorsque connecté à un wifi.
# Je convertis le média sur le serveur pendant la lecture : cela permet d'obtenir une version plus légère, par exemple en cas de trajets.


Ce format est toujours utilisé et maintenant que la plupart des gens ont un accès internet haut-débit, un site comme '''Qobuz''' propose une alternative à '''YouTube Music''' et '''Spotify''' en proposant une écoute en qualité '''FLAC''' ainsi que l'achat des albums en réelle qualité CD.
La conversion se fait en '''AAC''' (et bientôt en '''OPUS''') car ces formats ont un gros avantage sur le '''MP3''', que ce soit celui de '''Fraunhofer''' ou de '''LAME''' : ils sont de bien meilleure qualité à faible et très faible bitrate et sont présents dans presque tous les supports.


'''Apple''' a créé alors le format propriétaire '''ALAC''', offrant la même chose sans aucun avantage mais utilisé pour les offres haute qualité de '''Apple'''...
Si l'absence de gap est importante pour ces formats, ce n'est pas pour permettre la lecture d'un album sans micro-pauses entre les morceaux, c'est car le streaming l'impose de par sa méthode de foncionnement.


Bien que le '''FLAC''' soit sans perte, lors de l'encodage, il vous sera demandé 16 ou 24bits. Il peut sembler logique que 24 offre une meilleure qualité que 16 mais ce n'est pas le cas.
Ce que fait un serveur musical lorsque l'on demande la conversion, c'est diviser la musique que vous écoutez et allez écouter en blocs de x secondes, chacun converti en plusieurs bitrate et effacé après lecture.


La majorité des '''FLAC''' viennent de sources en 16bits car sont les seules existantes pour le grand public. Le 24bit n'est utilisé que dans les studios, même si les cartes son actuelles sont toutes 24bits et que si vous avez le matériel nécessaire ou réalisez certaines opérations, vous entendrez la différence, surtout à haut volume.  
Le serveur analyse la vitesse de votre connexion et enverra la qualité la plus à même de ne pas faire sauter le morceau si vous avez une perte de connexion ou une connexion très lente.


Il est possible de rencontrer du 24bit, par exemple lorsque '''Peter Gabriel''', pour le 25ème anniversaire de son album "So", donnait un lien dans chaque CD afin de pouvoir télécharger la version studio '''FLAC''' 24bits.  
Ainsi, si sur la route la connexion est catastrophique, la musique sera de moins bonne qualité mais ne s'arrêtera pas.


Ou alors lorsque vous utilisez des formats particuliers.
Ce qui compte donc n'est pas d'avoir le meilleur résultats aux tests ABX à haut bitrate mais à bas bitrate.
----
----


Ligne 107 : Ligne 668 :
C'est un format créé par les Demo-Makers, des développeurs cherchant toujours à faire au mieux avec le moins de place et de ressources possible.
C'est un format créé par les Demo-Makers, des développeurs cherchant toujours à faire au mieux avec le moins de place et de ressources possible.


Il y a eu à l'époque un nombe incroyables de musiciens ayant utilisés les modules mais dont beaucoup ont arrêtés et ces modules sont les seuls formats qu'il reste.
Il y a eu à l'époque un nombe incroyables de musiciens ayant utilisés les modules mais beaucoup ont arrêtés et ces modules sont les seuls formats qu'il reste.


Plusieurs formats se sont imposés et sont maintenant gérés par tous les logiciels : '''MOD''', '''XM''', '''S3M''', '''IT'''...
Plusieurs formats se sont imposés et sont maintenant gérés par tous les logiciels : '''MOD''', '''XM''', '''S3M''', '''IT'''...
Ligne 116 : Ligne 677 :


==== 16, 24 ou 32bits ? ====
==== 16, 24 ou 32bits ? ====
'''LMMS''' et '''OpentMPT''' vous proposeront chacun de pouvoir monter jusqu'à 32bits.
'''LMMS''' et '''OpentMPT''' vous proposeront chacun de pouvoir monter jusqu'à '''32bits'''.
 
Ne faites cela que si vous avez votre propre studio ou avez l'intention de jouer cette piste à Forest National.


Pour les deux, passez par du 24bits. Même si un module est composé de samples 8bits mal enregistrés il y a parfois 30 ans, ce que cela assure c'est la dynamique voulue par le morceau
Le fait de jouer des sons peut être considéré comme une modification audio, comme vu plus haut. Il faut donc sauver en '''FLAC 24bits'''.
----
----


=== La dynamique ? ===
=== CBR et VBR ===
 
Un fichier '''MP3''' est divisé en '''frames''' contenant chacune '''1152 échantillons sonores'''. Cela correspond à une durée de ± '''24ms''' si fréquence de 48Khz et '''± 26ms''' si fréquence de 44.1Khz.  
Il s'agit de l'écart en décibels entre les sons les plus bas et ceux les plus forts. Plus cet écart est grand, plus la dynamique est grande.
 
Ce que cherchent à faire les formats destructifs est diminuer cette dynamique là où cela est possible car c'est cette dynamique qui prend de la place.


Beaucoup de musiques modernes ont une dynamique faible, faisant que la compression donne un résultat assez proche de l'original.
Il existe deux moyens de coder la musique :


Le problème se pose avec les morceaux où la dynamique est plus élevée, en particulier, le rock, les lives et le classique.
# Le '''CBR''' : pour "'''C'''onstant '''B'''it'''R'''ate" qui modifie l'ensemble de la piste
# Le '''VBR''' : pour "'''V'''ariable '''B'''it'''R'''ate" qui modifie chaque frame


La réponse a été vite trouvée : l'utilisation  du "Variable Bitrate" ('''VBR''') au lieu du "Constant Bitrate" ('''CBR''').
Le '''CBR''' est très simple à calculer :
 
Le '''CBR''' est très simple à calculer :  
* <math>D = \text{Durée en secondes}</math>
* <math>D = \text{Durée en secondes}</math>
* <math>B = \text{Bitrate}</math>
* <math>B = \text{Bitrate en kbps}</math>
* <math>K = 8 \text{ : pour passer de Kb en Ko}</math>
* <math>K = 8 \text{ : pour passer de Kb en Ko}</math>
* <math>M = 1024 \text{ : pour passer de Ko en Mo}</math>
* <math>M = 1024 \text{ : pour passer de Ko en Mo}</math>
* <math>T = \text{Taille finale en Mo}</math>
* <math>T = \text{Taille finale en Mo}</math>
Donc : <math>\frac{D \times B}{K \times M} = T</math>
Donc : <math>T = \frac{D \times B}{K \times M}</math>


Donc : <math>\frac{T \times M \times K}{B} = D</math>  
Donc : <math>D = \frac{T \times M \times K}{B}</math>  


Par exemple, si vous avez un morceau de 4 minutes 27, avec bitrate de 320, sa taille sera de : <math> \frac{D = 267 \times B = 320}{K = 8 \times M = 1024} = T \approx 10,429 Mo</math>  
Par exemple, si vous avez un morceau de 4 minutes 27, avec bitrate de 320 et une fréquence de 44.1Khz, sa taille sera de : <math> \frac{D = 267 \times B = 320}{K = 8 \times M = 1024} = \frac{85440}{8192} = T \approx 10,429 Mo</math>  


Ce que feront la très gande majorité des lecteurs audios est très simple :  
Ce que feront les lecteurs audios est très simple :  


* <math>a = \text{Taille du fichier en bits}</math>
* <math>a = \text{Taille du fichier en Kb}</math>
* <math>b = \text{Bitrate donné par l'analyse du fichier}</math>
* <math>b = \text{Bitrate en Kbps indiqué au début du fichier}</math>
* <math>D = \text{Durée en secondes}</math>
* <math>D = \text{Durée en secondes}</math>


donnant alors : <math>\frac{a = 85440}{b = 320} = D = 267</math>, donc une piste de 267 secondes, soit 4 minutes 27.  
donnant alors : <math>\frac{a = 85440}{b = 320} = D = 267</math>, donc une piste de 267 secondes, soit 4 minutes 27.  


Mais le problème avec le '''VBR''' est qu'il donne une moyenne du bitrate faisant que ces lecteurs allaient alors faire le calcul suivant : <math>\frac{a = 85440}{b = 278} = D = 378</math> soit 6 minutes et 18 secondes.
Mais le problème avec le '''VBR''' est que chaque frame ayant son propre bitrate, en prenant le premier bitrate, ce ne sera que celui de la première frame. Si la première frame a un bitrate de, par exemple, 278, la durée suivante sera calculée : <math>\frac{a = 85440}{b = 278} = D = 378</math> soit 6 minutes et 18 secondes.


Bien que ce problème ait été réglé directement dans '''LAME''', et que tous les lecteurs maintenant affichent convenablement la durée d'un '''VBR''', le '''CBR''' est resté la référence pour le '''MP3''' car '''Fraunhofer''' n'a pas mis à jour son codec pour ce problème, faisant qu'il est toujours présent.
Le '''VBR''' n'ayant pas été créé par '''Fraunhofer''', bien que pouvant être implanté dans son format, tous les lecteurs utilisaient ce calcul de durée et affichaient une mauvaise durée.
 
Le '''VBR''' a été introduit par '''LAME''', les grandes marques ne "pouvaient" pas donc pas le gérer puisque passaient par un accord financier avec '''Fraunhofer''' pour offrir la lecture du '''MP3'''. Cela jusqu'à ce que '''Fraunhofer''' introduise son propre sysème de '''VBR''', différent de celui de '''LAME''', mais personne n'allait changer son matériel : tout le monde a continué à encoder en '''CBR,''' ce qui continue encore maintenant alors qu'il n'y a plus aucune raison sauf si vous avez un autoradio d'il y a 20 ans.
 
Les nouvelles versions ont modifié la méthode de calcul afin de ne plus passer par le bitrate :
 
* <math>f = \text{Nombre de frames}</math>
* <math>e = 1152</math>, soit le nombre d'échantillons par frame
* <math>q = \text{Fréquence en Hz}</math>
* <math>D = \text{Durée en secondes}</math>
 
Pour notre piste, nous avons donc : <math>f = 10222 \times \frac{e = 1152}{q = 44100} = D = 267,023\ldots \approx 267</math> soit 4 minutes 27 secondes...


Actuellement, un '''MP3''' en '''VBR''' dans sa plus haute qualité est très largement supérieur à un '''MP3''' '''CBR''' 320.
Actuellement, un '''MP3''' en '''VBR''' dans sa plus haute qualité est très largement supérieur à un '''MP3''' '''CBR''' 320.


Le '''FLAC''' est d'office en '''VBR''', mais les formats destructifs permettent tous le choix entre '''CBR''' et '''VBR''', bien que pour ceux-ci le '''VBR''' soit toujours la norme par défaut puisque tous les lecteurs gèrent le calcul de la durée.
Le '''FLAC''' est d'office en '''VBR''', mais les formats destructifs permettent tous le choix entre '''CBR''' et '''VBR''', bien que pour ceux-ci le '''VBR''' soit toujours la norme par défaut puisque tous les lecteurs gèrent le calcul de la durée de ces formats.
 
=== Vérifier la qualité ===
Il n'est pas rare de tomber sur des '''FLAC''' mal enregistrés, ce qui peut se voir grâce à une analyse spectrographique. Cela faisant qu'à choisir entre un '''FLAC''' mal enregistré et un '''MP3''' 320, il vaut mieux choisir le '''MP3'''.


==== Vérifier la dynamique ====
Je vais partir d'un '''FLAC''' que j'ai en '''24bits''' puisque j'ai l'original de l'album '''So''' de '''Peter Gabriel'''. '''Don't give up''' pèse 136,806 Mo pour une durée de 6 minutes 34.
Au vu de la qualité des codecs quant à la restitution de l'audio, il est rare de tomber sur un audio de mauvaise qualité, le vrai problème est la dynamique.


Il n'est pas rare de tomber sur des '''FLAC''' mal enregistrés, ce qui peut se voir grâce à une analyse spectrographique. Cela faisant quchoisir entre un '''FLAC''' mal enregistré et un '''MP3''' 320, il vaut mieux choisir le '''MP3'''.
Attention, les analyses suivantes sont là pour se donner une idée de ce que l'on est censé retrouver dans un '''MP3''' et de quelle manière se fait une coupure das un '''MP3'''.
 
Si vous croisez le spectrogramme d'un '''OPUS''' ou d'un '''AAC''', il sera fort différent et il faut donc comparer les spectrogrammes en fonction du format. Par exemple, le spectrogramme d'un '''AAC''' semble plus proche du '''FLAC''' mais ce format laisse passer plus de hautes fréquences, surtout à bas débit, pour les encoder avec peu de bits, ce qui donne artefacts, bruit et distortions là où sur un '''OPUS''' on verra une coupure aussi nette que sur un '''MP3''' sauf que le filtrage des données inutiles sera bien plus efficace.
{| class="wikitable"
|+
!Format
!Infos
!Poids
!Spectrogramme
|-
|FLAC
|24bits
|136Mo
|[[Fichier:FLAC 24bits spectrogram.png|centré|1284x1284px]]
|-
|FLAC
|16bits
|38,4Mo
|[[Fichier:FLAC 16bits spectrogram.png|centré]]
|-
|MP3
|CBR
320
|15,37Mo
|[[Fichier:MP3 CBR 320 spectrogram.png|centré]]
|-
|MP3
|VBR
Q10
|12,87Mo
|[[Fichier:MP3 VBR Q10 spectrogram.png|centré]]
|-
|MP3
|CBR
256
|12,3Mo
|[[Fichier:MP3 CBR 256 spectrogram.png|centré]]
|-
|MP3
|CBR
192
|9,227Mo
|[[Fichier:MP3 CBR 192 spectrogram.png|centré]]
|-
|MP3
|CBR
160
|7,689Mo
|[[Fichier:MP3 CBR 160 spectrogram.png|centré]]
|-
|MP3
|CBR
128
|6,152Mo
|[[Fichier:MP3 CBR 128 spectrogram.png|centré]]
|-
|OPUS
|Auto
|5,861Mo
|[[Fichier:OPUS auto 20ms VBR Audio FullBand spectrogram.png|centré]]
|-
|OPUS
|Max
|24,77Mo
|[[Fichier:OPUS Max spectrogram.png|centré]]
|-
|AAC
|CBR
320
|15,35Mo
|[[Fichier:AAC 320 spectrogram.png|centré]]
|}
 
== La dynamique ==
Il s'agit de l'écart en décibels entre les sons les plus bas et ceux les plus forts. Plus cet écart est grand, plus la dynamique est grande.
 
On peut réduire la dynamique sans diminuer la qualité (dans une certaine mesure) de l'audio.
 
Mais ce qu'apporte la dynamique est une "qualité d'écoute", indépendante de la qualité même de l'audio.
 
=== La "Guerre du Volume" (The Loudness War) ===
Je vous invite à lire l'article Wikipédia dédié à cette "guerre".
 
Pour résumer, des années 1980 à 2000, l'industrie de disques, les stations de radios et de télévision... ont eu tendance à réduire la dynamique d'une musique afin d'augmenter son volume et le "normaliser", jusqu'à ce qu'on mette le hola en imposant un volume maximal et, donc, une limite à la compression de la dynamique.
 
Les principales raisons sont :
 
# On ne peut dépasser les capacités du média
# Aucun artiste ne veut "sonner moins fort" que les autres
# De plus en plus de gens écoutent la musique pour couvrir le son ambiant ou sans réellement l'écouter
# Les appareils portables utilisés dans des environnements bruyants ne permettent pas d'apprécier une large dynamique
# L'informatique propose des méthodes pour le faire
 
Contrairement à ce que l'on pourrait croire, les nouvelles ré-éditions d'anciens albums ne sont pas forcément de meilleure qualité, c'est la dynamique qui a été diminuée afin de fournir une meilleure sensation de volume.
 
Voici l'analyse de l'évolution du morceau '''Something''' des '''Beatles''', réalisée par des audiophiles, au cours des quatre éditions CD effectuées pendant cette période :
{|
![[Fichier:1983.png|gauche]]
![[Fichier:1987.png|gauche|330x330px]]
![[Fichier:1993.png|gauche|330x330px]]
![[Fichier:2000.png|gauche|330x330px]]
|}
Ce problème de dynamique est également une des raisons pour lesquelles il faut, idéalement, éviter les compilations : c'est tout un tas de morceaux n'ayant rien à voir les uns avec les autres mais auxquels on aura appliqué le même traitement afin qu'ils aient un volume équivalent, au détriment de leur dynamique.
 
Le pire seront les compilations de musique classique mélangeant plusieurs compositeurs, chaque oeuvre ayant en principe besoin d'une grande dynamique à elle seule.
 
Par exemple, sur "'''Je n'aime pas le classique'''", si on prend le '''Carmina''' '''Burana''' ou un extrait du '''Requiem''' de '''Mozart''', ils ont tous les deux une dynamique de 7, ce qui est très bas. Si je les prends séparémment, chaque morceau sur l'album du compositeur, ils ont tous les deux une dynamique de 12, ce qui est beaucoup mieux. 
 
C'est la dynamique qui rend des labels comme '''Deutsche Grammophon''' célèbres car ils cherchent à proposer la meilleure qualité possible, sans jouer sur la dynamique, quitte à diviser une oeuvre pouvant tenir sur un seul CD en plusieurs si les différentes parties de l'oeuvre méritent un mastering différent.
 
Ce à quoi toute cette histoire de dynamique amène aussi est le fait qu'il y a un intérêt aux singles puisque, pour un morceau, même le plus "bête" des morceaux que l'on pourrait trouver sur n'importe quelle compil, le single aura toujours une meilleure dynamique que la version compil.
 
Les compils ne sont toujours que de bonnes playlists. Il vaut donc mieux, si vous voyez une bonne compil, en faire une bonne playlist à partir de bons enregistrements.
 
La dynamique est une des raisons qui fait que certains préféreront un vinyl, même usé, à un format numérique : la dynamique est beaucoup plus grande et reste, même à l'usure.
 
=== Vérifier la dynamique ===
Il existe plusieurs méthodes :
 
# '''MP3Gain ''': Le problème de ce logiciel est qu'il ne fonctionne qu'avec les '''MP3''', mais il indique s'il y a une distortion due à la réducation de la dynamique.
# '''Foobar + DR-Meter''' : Donne directement l'écart de manière chiffrée
# '''Audacity''' : Si la piste prend trop de place ou que plusieurs pics atteignent le sommet, c'est qu'il y a compression dynamique.
Comme l'exemple du dessus part de '''Something''' des '''Beatles''', je vais prendre trois versions de l'album '''Abbey''' '''Road ''':
 
# Version CD de 1983
# Version CD de 1987
# Version CD de 2019 qui, suite à la "fin de la guerre du volume" a le meme mastering qu'en 2000.
 
Voici la plage dynamique de l'album :
{| class="wikitable"
|+
!Nom de la piste
!1983
!1987
!2019
|-
|Come Together
|12
|9
|8
|-
|Something
|12
|9
|8
|-
|Maxwell's Silver Hammer
|13
|11
|10
|-
|Oh! Darling
|13
|10
|8
|-
|Octopus's Garden
|13
|11
|8
|-
|I Want You (She's So Heavy)
|12
|9
|7
|-
|Here Comes The Sun
|11
|9
|9
|-
|Because
|11
|10
|10
|-
|You Never Give Me Your Money
|11
|9
|11
|-
|Sun King
|11
|10
|10
|-
|Mean Mr. Mustard
|12
|10
|9
|-
|Polythene Pam
|11
|9
|8
|-
|She Came In Through The Bathroom Window
|11
|9
|8
|-
|Golden Slumbers
|12
|10
|9
|-
|Carry That Weight
|11
|9
|9
|-
|The End
|11
|9
|9
|-
|Her Majesty
|11
|11
|9
|}
Et comme pour le test réalisé plus haut, si on ouvre les trois versions du morceau Something dans Audacity :
{| class="wikitable"
|+
!Année
!Waveform
|-
|'''1983'''
|[[Fichier:1983 waveform.png|centré]]
|-
|'''1987'''
|[[Fichier:1987 waveform.png|centré]]
|-
|'''2019'''
|[[Fichier:2019 waveform.png|centré]]
|}
Je suis également tombé sur un rip du vinyl sorti en 2012. La dynamique était exactement la même que la version CD de 1983.
 
==== Analyse "visuelle" ====
Si on regarde l'évolution on peut "voir" comment la compression est effectuée.
 
Ici, cela se voit à la toute fin du morceau, surtout sur la piste "de droite" (celle du bas) de chaque version. Dans la version originale la courbe finale est convexe, dans sa dernière version elle est concave :
[[Fichier:Compresseuraudio.png|centré|1000x1000px]]Mais, en très gros, si vous voyez beaucoup de concave sur une piste : ça pue...
 
=== Musique moderne ===
Certains albums modernes sont connus pour avoir un mastering catastrophique et une dynamique surcompressée.
 
C'est par exemple le cas de '''AC/DC''' avec son album '''Black Ice''' : sur 15 pistes, 4 ont une plage dynamique de 5 et 11 de 6. 
 
On voit le problème simplement en ouvrant les pistes dans '''Audacity'''. Voici les trois premières :
{| class="wikitable"
|+
!Piste
!Waveform
|-
|1
|[[Fichier:01. AC-DC - Rock N Roll Train waveform.png|centré]]
|-
|2
|[[Fichier:02. AC-DC - Skies on Fire waveform.png|centré]]
|-
|3
|[[Fichier:03. AC-DC - Big Jack waveform.png|centré]]
|}
Dans de tels cas, la compression ressemblerait à ça : 
[[Fichier:Megacompression ACDC.png|centré]]
 
On peut voir aussi la surcompression sur le spectrogramme. Voici celui de la premièer piste :
[[Fichier:01. AC-DC - Rock N Roll Train spectrogram.png|centré]]
'''Back in Black''' est également un bon exemple de '''AC/DC''' montrant l'évolution exagérée de la dynamique :
{| class="wikitable"
|+
!Nom de la piste
!1980
!1994
!2003
|-
|Hells Bells
|13
|9
|8
|-
|Shoot To Thrill
|13
|9
|7
|-
|What Do You Do For Money Honey
|13
|9
|8
|-
|Givin The Dog A Bone
|14
|9
|8
|-
|Let Me Put My Love Into You
|13
|9
|7
|-
|Back In Black
|13
|9
|8
|-
|You Shook Me All Night Long
|13
|9
|8
|-
|Have A Drink On Me
|13
|9
|8
|-
|Shake A Leg
|13
|8
|7
|-
|Rock And Roll Ain't Noise Pollution
|14
|10
|8
|}
Evolution de Hells Bells :
{| class="wikitable"
|+
!Année
!Waveform
|-
|1980
|[[Fichier:AC+DC - Back in Black - 01 - Hells Bells waveform.png|lien=Fichier:AC_DC_-_Back_in_Black_-_01_-_Hells_Bells_waveform.png|gauche]]
|-
|1994
|[[Fichier:01-ac dc-hells bells waveform.png|gauche]]
|-
|2003
|[[Fichier:01. Hells Bells waveform.png]]
|}
 
=== Résoudre le problème des dynamiques différentes ===
Ces dynamiques différentes amènent à des variations de volume entre les morceaux.
 
Un logiciel a été créé, '''ReplayGain''', analysant l'audio et créant alors différents tags permettant aux logiciels la normalisation du volume sans détériorer la dynamique. Maintenant tous les logiciels utilisent ces tags :
 
# '''Track Gain''' : Modificateur à appliquer pour avoir une piste normalisée
# '''Album Gain''' : Facultatif. Si présent et qu'on lit en mode lecture d'album (non shuffle), c'est ce modificateur qui sera appliqué (utile pour classique)
# '''Track Peak''' : Doit, en principe se situer entre 0 et 1. Si supérieur, c'est que le mastering a forcé et qu'il y a légère distortion pour cette piste.
# '''Album Peak''' : Idem mais pour tout l'album.
 
Les deux premiers tags sont utilisés par les logiciels, les deux seconds sont à titre informatif mais permettent de directement indiquer dans le logiciel la présence d'une distortion.
 
De nouveaux algorithmes se sont créés afin de calculer plus fidèlement ces valeurs. Le meilleur est actuellement le "'''EBU R128'''", très rapide, auquel on peut faire appel via '''Foobar'''.
 
Si nous reprenons '''AC/DC''' avec '''Back in Black''' :
{| class="wikitable"
|+
!Version
!Album Gain
!Album Peak
|-
|'''1980'''
| -1.81 dB
|0.941061
|-
|'''1994'''
| -8.34 dB
|'''1.073083'''
|-
|'''2003'''
| -9.71 dB
|'''1.093027'''
|}
 
=== Les versions japonaises ===
Ces versions sont partuclières car les japonais accordent une grande importance à la qualité de la dynamique. Le mastering japonais sera donc en général de meilleure qualité que le mastering US ou EU.
 
'''Black Ice''' de '''AC/DC''' a une version japonaise. On passe à 2 pistes avec une plage dynamique de 5 et 13 de 6.  


Je vais partir d'un '''FLAC''' que j'ai en 24 bits puisque j'ai l'original de l'album '''So''' de '''Peter Gabriel'''. Il pèse 136,806 Mo pour une durée de 6 minutes 34.
Quoiqu'il arrive, si vous croisez une version officielle japonaise d'un album, il y a de plus grandes chances d'avoir une très bonne qualité.  


Voici le spctrogramme du '''FLAC''' en 24bits :
=== Les vinyls ===
[[Fichier:Imageflac24bits.png|centré|960x960px]]
Si on cherche à compresser le son sur un vinyl tel qu'il est possible de le faire en numérique, ça ne marche pas car cela fait sauter l'aiguille.


Je vais le convertir en 16 bits puisque tous les formats de ce comparatif sont 16 bits.
Dans un cas comme '''Black Ice''', la seule solution pour l'écouter convenablement est donc le vinyl, seule édition avec un '''AlbumPeak''' inférieur à 1 et une plage dynamique de 10 et 11...


Le spectrogramme est le suivant, pour un fichier de 42,989 Mo :  
Cela se voit également dans '''Audacity''' où j'ai ouvert les trois mêmes pistes que plus haut :  
[[Fichier:Spectroflac.png|bordure|centré|960x960px]]
{| class="wikitable"
Voici le spectrogamme du '''MP3''' 320, pour un résultat de 15,378 Mo :  
|+
[[Fichier:SpectroMP320.png|centré|960x960px]]
!Vinyl
Voici le spectrogamme du '''MP3''' 160, pour un résultat de 7,689 Mo :
|-
[[Fichier:Image.png|centré|960x960px]]
|[[Fichier:01-Rock'n'Roll Train waveform.png]]
|-
|[[Fichier:02-Skies On Fire waveform.png]]
|-
|[[Fichier:03-Big Jack waveform.png]]
|}
Si on regardre le spectrogramme de la première piste de la version vinyl, on voit que les pics sont plus propres :  
[[Fichier:01-Rock'n'Roll Train spectrogram.png|centré]]
Dans le cas de '''Black Ice''' ce n'est pas un problème puisque le vinyl est récent et a directement été rippé par un audiophile.  


Voici le spectrogramme du '''MP3''' 128, pour un résultat de 6,152 Mo :
C'est beaucoup plus embêtant pour des ré-éditions de vieux groupes pour lesquels il n'y a plus le choix qu'entre une version vinyl usée ou un format numérique compressé.
[[Fichier:Imagemp3128.png|centré|960x960px]]Voici le spectrogramme d'un '''OPUS''' en qualité AUTO, pour un résultat de 5,861 Mo :
[[Fichier:Imageopusauto.png|centré|960x960px]]
Voici le spectrograpmme d'un '''OPUS''' en qualité Max, pour un résultat de 24,769 Mo :
[[Fichier:Imageopusmax.png|centré|960x960px]]Voici le spectrogramme d'un '''OPUS''' en '''CBR''' 256, la meilleure qualité possible en CBR, pour un résultat de 12,453 Mo :
[[Fichier:Imageopuscbr256.png|centré|960x960px]]


== Les tags ==
== Les tags ==
Ligne 216 : Ligne 1 167 :
Mais attention, les choses sont beaucoup plus compliquées que ça...
Mais attention, les choses sont beaucoup plus compliquées que ça...


===== Le problème ID3 =====
===== Le "problème" ID3 =====
En fait, les tags '''ALBUM''', '''ARTIST''', '''YEAR''', etc... ne sont pas des tags, ce sont des noms attribués aux réels tags qui sont des codes de quatre caractères.
En fait, les tags '''ALBUM''', '''ARTIST''', '''YEAR''', etc... ne sont pas des tags, ce sont des noms attribués aux réels tags qui sont des codes de quatre caractères.


Ligne 224 : Ligne 1 175 :
* '''TIT2''' = '''%TITLE%'''
* '''TIT2''' = '''%TITLE%'''
* '''TPE1''' = '''%ARTIST%'''
* '''TPE1''' = '''%ARTIST%'''
* '''TYER''' = '''%YEAR%''' - Un des problèmes de ce tag est que n'étant plus limité à 4 chiffres, beaucoup l'utilisent pour indiquer la...
* '''TYER''' = '''%YEAR%'''
* '''TDAT''' = '''%DATE%''' - date de sortie...
* '''TDAT''' = '''%DATE%'''  
* '''TCON''' = '''%GENRE%'''
* '''TCON''' = '''%GENRE%'''
* '''COMM''' = '''%COMMENT%'''
* '''COMM''' = '''%COMMENT%'''
Ligne 233 : Ligne 1 184 :
Lorsqu'un nouveau tag, par exemple '''%GENRE2%''', est créé dans '''MP3tag''', ce qui est réellement créé dans le '''MP3''' est :   
Lorsqu'un nouveau tag, par exemple '''%GENRE2%''', est créé dans '''MP3tag''', ce qui est réellement créé dans le '''MP3''' est :   


* '''TXXX''':'''Tag'''='''Valeur'''
* '''TXXX''':'''Tag'''='''Valeur''' donc '''TXXX:GENRE2=Le genre'''


Donc, en réalité, nous nous retrouvons avers plusieurs entrées '''TXXX''', ayant chacune une description qui devient le tag et une valeur qui devient la valeur de ce tag.  
Donc, en réalité, nous nous retrouvons avers plusieurs entrées '''TXXX''', ayant chacune une description qui devient le tag et une valeur qui devient la valeur de ce tag.  
Ligne 245 : Ligne 1 196 :
* '''TIT2''' : Presto
* '''TIT2''' : Presto
* '''TIT3''' : Mouvement 2
* '''TIT3''' : Mouvement 2
J'imagine que son format de date préféré est mois/jour/année...
==== APE/Vorbis Comment ====
 
==== APE ====
Ce système de tag vient d'un format de fichier, propre à un lecteur audio, '''Monkey's Ape''', qui permettait d'obtenir une copie de ses CDs, au format '''APE''', qui était non destructif, comme le '''FLAC'''.
Ce système de tag vient d'un format de fichier, propre à un lecteur audio, '''Monkey's Ape''', qui permettait d'obtenir une copie de ses CDs, au format '''APE''', qui était non destructif, comme le '''FLAC'''.


Celui-ci se base sur le principe créé par '''xiph''' pour le '''OGG''' et le '''FLAC''', puis l''''OPUS''' : le '''Vorbis Comment'''.  
Celui-ci se base sur le principe créé par '''xiph''' pour le '''OGG''' et le '''FLAC''', puis l''''OPUS''' : le '''Vorbis Comment'''.  


C'est simple : il n'y a plus de code et le nom de la variable est la variable.  
C'est simple : il n'y a plus de code et le nom de la variable est la variable. La liberté absolue.  


Il est considéré comme plus intéressant et évolué que le '''ID3''', mais vu que la plupart des audiophiles sont également passés à d'autres formats, comme le '''FLAC''', il n'est pas le plus utilisé et le plus suivi par les différents logiciels et, surtout, n'est pas du tout compatible avec les anciens lecteurs et même Windows.  
Il est considéré comme plus intéressant et évolué que le '''ID3''', mais vu que la plupart des audiophiles sont également passés à d'autres formats, comme le '''FLAC''', il n'est pas le plus utilisé et le plus suivi par les différents logiciels et, surtout, n'est pas du tout compatible avec les anciens lecteurs et même Windows.  
Ligne 258 : Ligne 1 207 :
Néanmoins, le simple fait que ce soit un "meilleur système" fait qu'il est parfois conseillé alors que ne constitue pas du tout un standard.  
Néanmoins, le simple fait que ce soit un "meilleur système" fait qu'il est parfois conseillé alors que ne constitue pas du tout un standard.  


==== Quel format de tag choisir ? ====
==== Quel format de tag choisir pour les MP3 ? ====
Pour les '''MP3''', le mieux est le '''ID3v2.3''' (et non 2.4 car le 2.3 était encore compatible avec les vieux lecteurs, mais le 2.4 pose problème, raison pour laquelle MP3Tag garde la 2.3 par défaut)
Pour les '''MP3''', le mieux est le '''ID3.'''
----
 
Attention, un '''MP3''' peut avoir plusieurs types de tags en même temps et cela peut être très problématique car il est compliqué pour un logiciel de mélanger les deux. 
 
==== Avantages et désavantages du APE/Vorbis Comment par rapport au ID3 ====
Il est beaucoup plus facile pour un logiciel de lister les tags présents. Il est également beaucoup plus facile de gérer les tags ayant plusieurs valeurs.
 
En '''Vorbis Comment''', vous pouvez créer trois fois le tag '''ARTIST''' s'il y a trois artistes.
 
Mais cela amène aussi à un gros foutoir puisque cette absolue liberté amène à une totale anarchie. Beaucoup sont maîtres dans l'art d'encoder, mais certainement pas de documenter convenablement le résultat obtenu.
 
Par exemple, nous verrons plus bas des tags comme '''ORIGYEAR''' ou '''DISCNUMBER''' qui indiquent bien "ce qu'ils sont" et que l'on retrouve donc dans les '''FLAC'''.
 
Mais comme ces deux noms de tag n'étaient pas les réels mais ceux donnés par certains programmes, nous retrouverons aussi dans les '''FLAC : ORIGINALYEAR''' et '''PARTOFSET''' pour le '''DISCNUMBER.''' Mais aussi on voit apparaître un tag '''DISCTOTAL''', où l'on retrouve le nombre de CDs de l'album...
 
Le code '''USLT''', utilisé pour les paroles non synchronisées est maintenant parfois retrouvé tel quel. Mais parfois aussi '''UNSYNCEDLYRICS''' ou '''UNSYNCED''' '''LYRICS'''...Mais aussi parfois '''LYRICS'''...
 
La plupart des lecteurs se sont adaptés et analyseront les différents tags existants, connaissant la pluart et une analyse intelligente permettant de deviner de quelle donnée il s'agit. Mais cela amène à vite avoir énormément de tags à vérifier car contenant parfois une information intéressante..
 
=== Les tags courants et leur gestion ===
Il existe toute une série de tags utilisés par les logiciels car directement proposé par le '''ID3''' mais également quelques autres qui se sont imposés afin de fournir des informations plus complètes.
 
Enfin, la plupart des logiciels acceptent maintenant des valeurs multiples pour certains tags. Chaque valeur est séparée par un "caractère d'échappement", en général le point virtule ou \\ .
 
Le point virgule est plus facile à gérer, mais s'il y a un point virgule dans un nom, par exemple dans les artistes en Classique, cela peut poser problème.   
 
{| class="wikitable"
|- style="font-weight:bold; vertical-align:middle;"
! style="text-align:center;" | Tag ID3v2.3
! Tag MP3Tag
! Usage
! Informations
|-
| colspan="4" style="font-weight:bold; background-color:#96fffb;" | Pistes
|- style="vertical-align:middle; background-color:#96fffb;"
| style="text-align:center;" | TIT2
| style="font-weight:bold;" | TITLE
| rowspan="2" | Titre de la piste
| Titre affiché
|- style="vertical-align:middle; background-color:#96fffb;"
| style="text-align:center;" | XSOT
| style="font-weight:bold;" | TITLESORT
| Nom à utiliser pour trier la piste et pour les recherches<br />Certains artistes utilisent des caractéres spéciaux, comme '''Kate Bush''' avec '''π'''. Ici vous mettrez '''Pi''' et vous laisserez '''π''' dans '''TITLE'''.
C'est aussi le cas avec '''David Bowie''' et son morceau '''Black Star''' dont le nom officiel est ★ et non '''Black Star''' qui est le nom courant car faire une ★ au clavier, c'est difficile...
|- style="vertical-align:middle; background-color:#96fffb; border-color:inherit;"
| style="text-align:center;" | TIT3
| style="font-weight:bold;" | SETSUBTITLE
| Sous-titre de la piste
| Rarement utilisé, même dans les lecteurs modernes, c'est là que nous retrouvons, par exemple, Version Longue, Radio Edit, Club Mix, etc.
|- style="vertical-align:middle; background-color:#96fffb; border-color:inherit;"
| style="text-align:center;" | COMM
| style="font-weight:bold;" | COMMENT
| colspan="2" | Commentaire à propos de cette piste
|-
| colspan="4" style="font-weight:bold; background-color:#9aff99;" | Artistes
|- style="vertical-align:middle; background-color:#9aff99; border-color:inherit;"
| style="text-align:center;" | TPE1
| style="font-weight:bold;" | ARTIST
| rowspan="2" | Artiste de la piste
| Nom affiché
|- style="vertical-align:middle; background-color:#9aff99; border-color:inherit;"
| style="text-align:center;" | XSOA
| style="font-weight:bold;" | ARTISTSORT
| Nom utilisé pour les recherches et le tri. Par exemple pour faire apparaître 4 Non Blondes à lettre F, The Who à W, 3 à T...
|- style="background-color:#9aff99;"
| style="text-align:center;" | WOAR
| style="font-weight:bold;" | ARTISTURL
| Lien internet de l'artiste
| Utile pour les auto-productions
|- style="background-color:#9aff99;"
| style="text-align:center;" | TPE2
| style="font-weight:bold;" | ALBUMARTIST
| rowspan="2" style="vertical-align:middle;" | Artiste de l'album
| Nom affiché
|- style="background-color:#9aff99;"
| style="text-align:center;" | TSO2
| style="font-weight:bold;" | ALBUMARTISTSORT
| Nom utilisé pour les recherches et le tri.
|- style="vertical-align:middle; background-color:#9aff99;"
| style="text-align:center;" | TEXT
| style="font-weight:bold;" | LYRICIST
| rowspan="2" | Parolier
| Ici, sur "Que je t'aime", on mettra Gilles Thibaut
|- style="background-color:#9aff99;"
| style="text-align:center;" | TOLY
| style="font-weight:bold;" | ORIGLYRICIST
| Parolier d'origine en cas de reprise. Par exemple ici François Villon pour Ballade des dames du temps jadis de Brassens.
|- style="vertical-align:middle; background-color:#9aff99;"
| style="text-align:center;" | TCOM
| style="font-weight:bold;" | COMPOSER
| rowspan="2" | Compositeur
| Nom affiché
|- style="vertical-align:middle; background-color:#9aff99;"
| style="text-align:center;" | TSOC
| style="font-weight:bold;" | COMPOSERSORT
| Compositeur
|- style="vertical-align:middle; background-color:#9aff99;"
| style="text-align:center;" | TPE3
| style="font-weight:bold;" | CONDUCTOR
| colspan="2" | Chef d'orchestre
|- style="background-color:#9aff99;"
| style="text-align:center;" | TOPE
| style="font-weight:bold;" | ORIGINALARTIST
| Nom de l'artiste
| Indique l'artiste original en cas de reprise. Par exemple, ici viendra Leonard Cohen pour le Hallelujah de Jeff Beck.
|- style="font-weight:bold; vertical-align:middle; background-color:#9aff99;"
| colspan="2" style="text-align:center;" | ARTISTS
| style="font-weight:normal;" | Noms des artistes
| style="font-weight:normal;" | Vous indiquez ici le nom de tous les artistes que vous voulez voir relié à cette piste en les séparant par le caractère d'échappement.
|-
| colspan="4" style="font-weight:bold; background-color:#ffffc7;" | Album
|- style="vertical-align:middle; background-color:#ffffc7; border-color:inherit;"
| style="text-align:center;" | TALB
| style="font-weight:bold;" | ALBUM
| rowspan="2" | Nom de l'album
| Indique de quel album est tiré une piste lorsque sur une compilation
|- style="vertical-align:middle; background-color:#ffffc7; border-color:inherit;"
| style="text-align:center;" | TOAL
| style="font-weight:bold;" | ORIGINALALBUM
| Nom de l'album original sur une compilation.
|- style="vertical-align:middle; background-color:#ffffc7; border-color:inherit;"
| style="text-align:center;" | MVNM
| style="font-weight:bold;" | MOVEMENTNAME
| rowspan="2" | Mouvement
| Nom du mouvement
|- style="vertical-align:middle; background-color:#ffffc7; border-color:inherit;"
| style="text-align:center;" | MVIN
| style="font-weight:bold;" | MOVEMENTNUMBER
| n° du mouvement
|- style="vertical-align:middle; background-color:#ffffc7;"
| style="text-align:center;" | TRCK
| style="font-weight:bold;" | TRACK
| n° de la piste
| Il est conseillé d'utiliser le modèle "Piste/Nombre de pistes". Lorsque la source est une K7 audio, on voit en général A et B suivi d'un nombre.
|- style="vertical-align:middle; background-color:#ffffc7;"
| style="text-align:center;" | TPOS
| style="font-weight:bold;" | DISCNUMBER ou<br />PARTOFSET
| n° du disque
| Il est conseillé d'utiliser le modèle "Disque/Nombre de disques".
|- style="vertical-align:middle;"
| style="text-align:center; background-color:#ffffc7;" | TPUB
| style="font-weight:bold; background-color:#ffffc7;" | PUBLISHER
| colspan="2" style="background-color:#ffffc7;" | Producteur de la version
|-
| style="font-weight:bold; background-color:#ffce93;" | Dates
| colspan="3" style="background-color:#ffce93;" | Ces tags sont un des plus gros foutoirs que l'on peut retrouver dans les tags car tout le monde l'utilise d'une manière différente.
|- style="vertical-align:middle; background-color:#ffce93;"
| rowspan="3" style="text-align:center;" | TORY
| rowspan="3" style="font-weight:bold;" | ORIGYEAR
| 1. Pensé
| Année d'origine de l'enregistrement. Par exemple : 1977 pour la 9ème de Beethoven par Karajan
|-
| style="background-color:#ffcc67;" | 2. Musique Classique
| style="background-color:#ffcc67;" | Année de création de l'oeuvre : 1824
|-
| style="background-color:#ffcb2f;" | 3. Courant 1
| style="background-color:#ffcb2f;" | 1977
|- style="vertical-align:middle; background-color:#ffce93;"
| rowspan="3" style="text-align:center;" | TYER
| rowspan="3" style="font-weight:bold;" | YEAR
| 1. Pensé
| Année de sortie de l'édition. Par exemple : 2013 pour le remaster Deutsche Grammophon
|-
| style="background-color:#ffcc67;" | 2. Musique Classique
| style="background-color:#ffcc67;" | Année de l'enregistrement : 1977
|-
| style="background-color:#ffcb2f;" | 3. Courant 1
| style="background-color:#ffcb2f;" | 2013
|- style="vertical-align:middle; background-color:#ffce93;"
| rowspan="3" style="text-align:center;" | TDAT
| rowspan="3" style="font-weight:bold;" | DATE
| 1. Pensé
| mois/jour pour indiquer la date, sans l'année, de sortie. Par exemple le 8 mars, donc 03/08 (bien entendu, aucun francophone ne respecte le mois/jour)
|- style="border-color:inherit;"
| style="background-color:#ffcc67;" | 2. Musique Classique
| style="background-color:#ffcc67;" | Date de sortie : 2013/03/08 ou juste 2013
|-
| style="background-color:#ffcb2f;" | 3. Courant 1
| style="background-color:#ffcb2f;" | rien.
|-
| colspan="4" style="font-weight:bold; background-color:#ffccc9;" | Genre
|- style="vertical-align:middle; background-color:#ffccc9;"
| style="text-align:center;" | TCON
| style="font-weight:bold;" | GENRE
| Genres
| Vous pouvez indiquer un ou plusieurs genres en utilisant le caractère d'échappement. Il vaut mieux utiliser le point virgule puisque historiquement, c'est celui utilisé, même par WinAMP (basiquement).<br />Les lecteurs modernes permettant une recherche par genre utilisent les différents genres.<br />cf. chapitre dédié
|- style="border-color:inherit;"
| colspan="4" style="font-weight:bold; background-color:#96fffb;" | Paroles
|- style="vertical-align:middle; background-color:#96fffb;"
| style="text-align:center;" | USLT
| style="font-weight:bold;" | UNSYNCEDLYRICS
| rowspan="2" | Paroles
| Paroles non synchronisées, simple texte.
|- style="vertical-align:middle; background-color:#96fffb;"
| style="text-align:center;" | SYLT
| style="font-weight:bold; color:#fe0000;" | SYNLYRICS
| Paroles synchronisées. Ce tag utilise un format particulier. Pour les autres formats audios, cela passe par un fichier LRC à côté de l'audio.<br />Attention, le nom donné n'est disponible nulle part en dehors de l'analyseur d'exif : exiftool et n'est modifiable que via Kid3
|- style="border-color:inherit;"
| colspan="4" style="font-weight:bold; background-color:#9aff99;" | MusicBrainz
|- style="vertical-align:middle; background-color:#9aff99; border-color:inherit;"
| colspan="2" style="text-align:center; font-weight:bold;" | MUSICBRAINZ_...
| colspan="2" | MusicBrainz créé énormément de tags mais un lecteur moderne saura tous les utiliser. Elles contiennent en général des identifiants qui correspondent à des informations disponibles sur leur site.<br />Le but est, pour le lecteur audio, d'aller chercher facilement des informations complémentaires sur le net ne pouvant être contenues directement dans les fichiers.
|- style="background-color:#9aff99;"
| colspan="2" style="text-align:center; vertical-align:middle; font-weight:bold;" | ACOUSTID_...
| "Empreinte" du morceau
| Empreinte du morceau créée à partir de plusieurs critères, indépendants de la qualité.
|-
| colspan="4" style="font-weight:bold; background-color:#ffffc7;" | ReplayGain
|- style="vertical-align:middle; background-color:#ffffc7; border-color:inherit;"
| colspan="2" style="text-align:center; font-weight:bold;" | REPLAYGAIN_TRACK_GAIN
| rowspan="2" | Analyse dB par piste
| rowspan="4" | Les deux variables gain permettent aux lecteurs d'appliquer un modificateur de volume afin de le normaliser avec le reste de la liste de lecture.<br />Si la lecture est faite dans une playlist ou en mode shuffle, ce sera la TRACK qui sera utilisée, pour normaliser le volume avec les autres morceaux, mais vous lisez un album entier, ce sera le ALBUM qui sera utilisé pour respecter les volumes voulus par l'album.<br />Les Peaks sont des indicateurs permettant de voir s'il y a une distorsion effectuée lors du mastering de l'album.<br />Un peak doit être entre 0 et 1, s'il est supérieur à 1, c'est qu'il y a surcompression dynamique lors du mastering et qu'il vaut mieux chercher une version plus ancienne ou mieux masterisée.
|- style="vertical-align:middle; background-color:#ffffc7; border-color:inherit;"
| colspan="2" style="text-align:center; font-weight:bold;" | REPLAYGAIN_TRACK_PEAK
|- style="vertical-align:middle; background-color:#ffffc7; border-color:inherit;"
| colspan="2" style="text-align:center; font-weight:bold;" | REPLAYGAIN_ALBUM_GAIN
| rowspan="2" | Analyse dB par album
|- style="vertical-align:middle; background-color:#ffffc7; border-color:inherit;"
| colspan="2" style="text-align:center; font-weight:bold;" | REPLAYGAIN_ALBUM_PEAK
|- style="border-color:inherit;"
| colspan="4" style="font-weight:bold; background-color:#ffce93;" | Divers
|- style="background-color:#ffce93;"
| style="text-align:center;" | TBPM
| style="font-weight:bold;" | BPM
| Tempo
| rowspan="2" style="vertical-align:middle;" | Les deux sont très utiles pour les DJs ou pour créer une playlist harmonieuse. Les algos actuels pour le calcul du tempo permettent de donner une idée, même sur des pistes ayant un BPM variable.
|- style="background-color:#ffce93;"
| style="text-align:center;" | TKEY
| style="font-weight:bold;" | KEY
| Tonalité
|-
| colspan="4" style="font-weight:bold; background-color:#ffccc9;" | AccurateRip
|-
| colspan="2" style="text-align:center; vertical-align:middle; font-weight:bold; background-color:#ffccc9;" | ACCURATERIP...
| colspan="2" style="background-color:#ffccc9;" | Ces tags indiquent que la personne ayant encodé l'album a effectué une vérification de sa qualité en la comparant à des copies considérées comme parfaites car analysées par la communauté AccurateRIP.<br />Plusieurs logiciels de rip proposent l'analyse AccurateRip, comme dBPowerAmp ou Exact Audio Copy.<br />Attention, l'analyse s'effectue sur les données brutes rippées et ces tags n'ont un sens que dans des fichiers WAV ou FLAC.<br />C'est un truc d'audiophile hardcore, mais la présence de ces tags assure une très haute qualité quant au rip.
|}
 
=== Genres ===
Historiquement le '''MP3''' proposait une liste de genres parmis lesquels il fallait choisir car ce tag ne permettait que d'indiquer une valeur et non un mot. Ils ont été étendus grâce à '''WinAMP''' mais restaient assez limités et assez orienté USA... Sur 191 genres il y'en a quatre content le mot Christian et il y a un genre à part pour les "Native" :
{| class="wikitable"
|+
! colspan="18" |Liste des genres disponibles
|-
|<small>'''0'''</small>
|<small>Blues</small>
|<small>'''22'''</small>
|<small>Death Metal</small>
|<small>'''44'''</small>
|<small>Space</small>
|<small>'''66'''</small>
|<small>New Wave</small>
|<small>'''88'''</small>
|<small>Celtic</small>
|<small>'''110'''</small>
|<small>Satire</small>
|<small>'''132'''</small>
|<small>BritPop</small>
|<small>'''154'''</small>
|<small>Chillout</small>
|<small>'''176'''</small>
|<small>Post-Rock</small>
|-
|<small>'''1'''</small>
|<small>Classic Rock</small>
|<small>'''23'''</small>
|<small>Pranks</small>
|<small>'''45'''</small>
|<small>Meditative</small>
|<small>'''67'''</small>
|<small>Psychadelic</small>
|<small>'''89'''</small>
|<small>Bluegrass</small>
|<small>'''111'''</small>
|<small>Slow Jam</small>
|<small>'''133'''</small>
|<small>Negerpunk</small>
|<small>'''155'''</small>
|<small>Downtempo</small>
|<small>'''177'''</small>
|<small>Psytrance</small>
|-
|<small>'''2'''</small>
|<small>Country</small>
|<small>'''24'''</small>
|<small>Soundtrack</small>
|<small>'''46'''</small>
|<small>Instrumental Pop</small>
|<small>'''68'''</small>
|<small>Rave</small>
|<small>'''90'''</small>
|<small>Avantgarde</small>
|<small>'''112'''</small>
|<small>Club</small>
|<small>'''134'''</small>
|<small>Polsk Punk</small>
|<small>'''156'''</small>
|<small>Dub</small>
|<small>'''178'''</small>
|<small>Shoegaze</small>
|-
|<small>'''3'''</small>
|<small>Dance</small>
|<small>'''25'''</small>
|<small>Euro-Techno</small>
|<small>'''47'''</small>
|<small>Instrumental Rock</small>
|<small>'''69'''</small>
|<small>Showtunes</small>
|<small>'''91'''</small>
|<small>Gothic Rock</small>
|<small>'''113'''</small>
|<small>Tango</small>
|<small>'''135'''</small>
|<small>Beat</small>
|<small>'''157'''</small>
|<small>EBM</small>
|<small>'''179'''</small>
|<small>Space Rock</small>
|-
|<small>'''4'''</small>
|<small>Disco</small>
|<small>'''26'''</small>
|<small>Ambient</small>
|<small>'''48'''</small>
|<small>Ethnic</small>
|<small>'''70'''</small>
|<small>Trailer</small>
|<small>'''92'''</small>
|<small>Progressive Rock</small>
|<small>'''114'''</small>
|<small>Samba</small>
|<small>'''136'''</small>
|<small>Christian Gangsta Rap</small>
|<small>'''158'''</small>
|<small>Eclectic</small>
|<small>'''180'''</small>
|<small>Trop Rock</small>
|-
|<small>'''5'''</small>
|<small>Funk</small>
|<small>'''27'''</small>
|<small>Trip-Hop</small>
|<small>'''49'''</small>
|<small>Gothic</small>
|<small>'''71'''</small>
|<small>Lo-Fi</small>
|<small>'''93'''</small>
|<small>Psychedelic Rock</small>
|<small>'''115'''</small>
|<small>Folklore</small>
|<small>'''137'''</small>
|<small>Heavy Metal</small>
|<small>'''159'''</small>
|<small>Electro</small>
|<small>'''181'''</small>
|<small>World Music</small>
|-
|<small>'''6'''</small>
|<small>Grunge</small>
|<small>'''28'''</small>
|<small>Vocal</small>
|<small>'''50'''</small>
|<small>Darkwave</small>
|<small>'''72'''</small>
|<small>Tribal</small>
|<small>'''94'''</small>
|<small>Symphonic Rock</small>
|<small>'''116'''</small>
|<small>Ballad</small>
|<small>'''138'''</small>
|<small>Black Metal</small>
|<small>'''160'''</small>
|<small>Electroclash</small>
|<small>'''182'''</small>
|<small>Neoclassical</small>
|-
|<small>'''7'''</small>
|<small>Hip-Hop</small>
|<small>'''29'''</small>
|<small>Jazz & Funk</small>
|<small>'''51'''</small>
|<small>Techno-Industrial</small>
|<small>'''73'''</small>
|<small>Acid Punk</small>
|<small>'''95'''</small>
|<small>Slow Rock</small>
|<small>'''117'''</small>
|<small>Power Ballad</small>
|<small>'''139'''</small>
|<small>Crossover</small>
|<small>'''161'''</small>
|<small>Emo</small>
|<small>'''183'''</small>
|<small>Audiobook</small>
|-
|<small>'''8'''</small>
|<small>Jazz</small>
|<small>'''30'''</small>
|<small>Fusion</small>
|<small>'''52'''</small>
|<small>Electronic</small>
|<small>'''74'''</small>
|<small>Acid Jazz</small>
|<small>'''96'''</small>
|<small>Big Band</small>
|<small>'''118'''</small>
|<small>Rhythmic Soul</small>
|<small>'''140'''</small>
|<small>Contemporary Christian</small>
|<small>'''162'''</small>
|<small>Experimental</small>
|<small>'''184'''</small>
|<small>Audio Theatre</small>
|-
|<small>'''9'''</small>
|<small>Metal</small>
|<small>'''31'''</small>
|<small>Trance</small>
|<small>'''53'''</small>
|<small>Pop-Folk</small>
|<small>'''75'''</small>
|<small>Polka</small>
|<small>'''97'''</small>
|<small>Chorus</small>
|<small>'''119'''</small>
|<small>Freestyle</small>
|<small>'''141'''</small>
|<small>Christian Rock</small>
|<small>'''163'''</small>
|<small>Garage</small>
|<small>'''185'''</small>
|<small>Neue Deutsche Welle</small>
|-
|<small>'''10'''</small>
|<small>New Age</small>
|<small>'''32'''</small>
|<small>Classical</small>
|<small>'''54'''</small>
|<small>Eurodance</small>
|<small>'''76'''</small>
|<small>Retro</small>
|<small>'''98'''</small>
|<small>Easy Listening</small>
|<small>'''120'''</small>
|<small>Duet</small>
|<small>'''142'''</small>
|<small>Merengue</small>
|<small>'''164'''</small>
|<small>Global</small>
|<small>'''186'''</small>
|<small>Podcast</small>
|-
|<small>'''11'''</small>
|<small>Oldies</small>
|<small>'''33'''</small>
|<small>Instrumental</small>
|<small>'''55'''</small>
|<small>Dream</small>
|<small>'''77'''</small>
|<small>Musical</small>
|<small>'''99'''</small>
|<small>Acoustic</small>
|<small>'''121'''</small>
|<small>Punk Rock</small>
|<small>'''143'''</small>
|<small>Salsa</small>
|<small>'''165'''</small>
|<small>IDM</small>
|<small>'''187'''</small>
|<small>Indie Rock</small>
|-
|<small>'''12'''</small>
|<small>Other</small>
|<small>'''34'''</small>
|<small>Acid</small>
|<small>'''56'''</small>
|<small>Southern Rock</small>
|<small>'''78'''</small>
|<small>Rock 'n' Roll</small>
|<small>'''100'''</small>
|<small>Humour</small>
|<small>'''122'''</small>
|<small>Drum Solo</small>
|<small>'''144'''</small>
|<small>Thrash Metal</small>
|<small>'''166'''</small>
|<small>Illbient</small>
|<small>'''188'''</small>
|<small>G-Funk</small>
|-
|<small>'''13'''</small>
|<small>Pop</small>
|<small>'''35'''</small>
|<small>House</small>
|<small>'''57'''</small>
|<small>Comedy</small>
|<small>'''79'''</small>
|<small>Hard Rock</small>
|<small>'''101'''</small>
|<small>Speech</small>
|<small>'''123'''</small>
|<small>A capella</small>
|<small>'''145'''</small>
|<small>Anime</small>
|<small>'''167'''</small>
|<small>Industro-Goth</small>
|<small>'''189'''</small>
|<small>Dubstep</small>
|-
|<small>'''14'''</small>
|<small>R&B</small>
|<small>'''36'''</small>
|<small>Game</small>
|<small>'''58'''</small>
|<small>Cult</small>
|<small>'''80'''</small>
|<small>Folk</small>
|<small>'''102'''</small>
|<small>Chanson</small>
|<small>'''124'''</small>
|<small>Euro-House</small>
|<small>'''146'''</small>
|<small>Jpop</small>
|<small>'''168'''</small>
|<small>Jam Band</small>
|<small>'''190'''</small>
|<small>Garage Rock</small>
|-
|<small>'''15'''</small>
|<small>Rap</small>
|<small>'''37'''</small>
|<small>Sound Clip</small>
|<small>'''59'''</small>
|<small>Gangsta</small>
|<small>'''81'''</small>
|<small>Folk-Rock</small>
|<small>'''103'''</small>
|<small>Opera</small>
|<small>'''125'''</small>
|<small>Dance Hall</small>
|<small>'''147'''</small>
|<small>Synthpop</small>
|<small>'''169'''</small>
|<small>Krautrock</small>
|<small>'''191'''</small>
|<small>Psybient</small>
|-
|<small>'''16'''</small>
|<small>Reggae</small>
|<small>'''38'''</small>
|<small>Gospel</small>
|<small>'''60'''</small>
|<small>Top 40</small>
|<small>'''82'''</small>
|<small>National Folk</small>
|<small>'''104'''</small>
|<small>Chamber Music</small>
|<small>'''126'''</small>
|<small>Goa</small>
|<small>'''148'''</small>
|<small>Abstract</small>
|<small>'''170'''</small>
|<small>Leftfield</small>
| colspan="2" rowspan="6" |
|-
|<small>'''17'''</small>
|<small>Rock</small>
|<small>'''39'''</small>
|<small>Noise</small>
|<small>'''61'''</small>
|<small>Christian Rap</small>
|<small>'''83'''</small>
|<small>Swing</small>
|<small>'''105'''</small>
|<small>Sonata</small>
|<small>'''127'''</small>
|<small>Drum & Bass</small>
|<small>'''149'''</small>
|<small>Art Rock</small>
|<small>'''171'''</small>
|<small>Lounge</small>
|-
|<small>'''18'''</small>
|<small>Techno</small>
|<small>'''40'''</small>
|<small>Alternative Rock</small>
|<small>'''62'''</small>
|<small>Pop/Funk</small>
|<small>'''84'''</small>
|<small>Fast Fusion</small>
|<small>'''106'''</small>
|<small>Symphony</small>
|<small>'''128'''</small>
|<small>Club-House</small>
|<small>'''150'''</small>
|<small>Baroque</small>
|<small>'''172'''</small>
|<small>Math Rock</small>
|-
|<small>'''19'''</small>
|<small>Industrial</small>
|<small>'''41'''</small>
|<small>Bass</small>
|<small>'''63'''</small>
|<small>Jungle</small>
|<small>'''85'''</small>
|<small>Bebop</small>
|<small>'''107'''</small>
|<small>Booty Bass</small>
|<small>'''129'''</small>
|<small>Hardcore Techno</small>
|<small>'''151'''</small>
|<small>Bhangra</small>
|<small>'''173'''</small>
|<small>New Romantic</small>
|-
|<small>'''20'''</small>
|<small>Alternative</small>
|<small>'''42'''</small>
|<small>Soul</small>
|<small>'''64'''</small>
|<small>Native US</small>
|<small>'''86'''</small>
|<small>Latin</small>
|<small>'''108'''</small>
|<small>Primus</small>
|<small>'''130'''</small>
|<small>Terror</small>
|<small>'''152'''</small>
|<small>Big Beat</small>
|<small>'''174'''</small>
|<small>Nu-Breakz</small>
|-
|<small>'''21'''</small>
|<small>Ska</small>
|<small>'''43'''</small>
|<small>Punk</small>
|<small>'''65'''</small>
|<small>Cabaret</small>
|<small>'''87'''</small>
|<small>Revival</small>
|<small>'''109'''</small>
|<small>Porn Groove</small>
|<small>'''131'''</small>
|<small>Indie</small>
|<small>'''153'''</small>
|<small>Breakbeat</small>
|<small>'''175'''</small>
|<small>Post-Punk</small>
|}
Le principal problème était qu'il n'était pas possible d'assigner plusieurs genres ou d'en créer de nouveaux.
 
Mais ça avait l'avantage de pouvoir être affiché différement sur chaque lecteur. Si le genre est 32, on affiche Classical en anglais et Classique en français...Ou si le genre est 185, nous verrons en français "Nouvelle vague allemande"...
 
Maintenant que cette zone est un texte, chacun peut y mettre ce qu'il veut. Un francophone écrira Classique et un anglophone écrira Classical.
 
La gestion des genres est un enfer pour beaucoup de logiciels lorsque ceux-ci sont censés se baser sur ceux-ci pour gérer une médiathèque.
 
Afin de permettre le multi-genre, les lecteurs modernes utilisent l'échappement point-virgule pour séparer les genres.
 
Mais il suffit que deux genres soient écrits de manière différentes sur différents morceaux pour augmenter le nombre de genre.
 
===== Mon idéal =====
Selon moi, il faudrait passer par un système binaire, proche du système originel, avec des genres imposés, mais mieux pensés, beaucoup plus nombreux.
 
Si nous regardons la page Wikipedia sur la liste des genres, ils parlent de plus de 700 styles différents. Si nous allons voir la page en anglais, c'est encore plus.
 
Mais nous pouvons voir que la majorité sont des noms composés et qu'en général nous avons un préfixe ou suffixe et un genre.
 
Par exemple, simplement à la lettre A, nous retrouvons :
 
* Acid Blues
* Acid House
* Acid Jazz
* Acid Rock
* Acid Techno


=== Logiciels utilisés ===
Ce sont cinq genres bien distincts créés en plus de leurs version "non acid".
Afin de normaliser les choses, je passe par plusieurs logiciels :


# '''MusicBrainz Picard''' : Ce logiciel permet de relier son album ou ses pistes à quelque chose de déjà existant afin d'obtenir plus d'informations que ce que l'on. Il permet également, si l'on créé un compte MusicBrainz, de proposer de nouvelles choses si elles n'existent pas encore.  
C'est également le cas avec le "Hardcore" qui n'est pas un genre à part entière. Il peut y avoir du Punk Hardcore (D.O.A. en 81 avec Hardcore'81), du rap hardcore (rap politisé comme Ideal J avec Hardcore), de la techno Hardcore (Scooter avec Army of Hardcore), le Metal Hardcore, aussi appelé Metalcore.  
# '''MP3Tag ''': Permet de modifier tous les tags d'un audio (pas seulement MP3), via des scripts très poussés. Utile pour envoyer une nouvelle proposition à MusicBrainz.
# '''FooBar2000 ''':Ce logiciel utilise une nouvelle méthode de calcul du ReplayGain, beaucoup (beaucoup (beaucoup)) plus rapide et précise, que cela soit par piste ou par album
# '''Spek''' : Analyse un fichier afin d'en fournir le spectre, permettant de s'assurer de la qualité réelle de la piste.
----


== Problème de téléchargement ==
== Problème de téléchargement ==
=== Sites de streaming audio ===
Plusieurs sites, comme '''YouTube Music''' et '''Spotify''' proposent des albums complets.
Plusieurs sites, comme '''YouTube Music''' et '''Spotify''' proposent des albums complets.


Un très gros problème cependant est qu'ils génèrent leurs albums en fonction des pistes censées s'y trouver mais ne vérifient pas toujours que ce soit la bonne version de la piste pour cet album en particulier.
Plusieurs logiciels permettent de les télécharger, mais ces albums peuvent poser plusieurs problèmes, voici une liste de problèmes que j'ai rencontré alors que je n'en ai pas téléchargé beaucoup... :


Beaucoup d'albums auront alors parfois une version "Radio" à la place d'un morceau version longue car ils n'auront pas cette version.
* '''Les pistes ne sont pas les bonnes''' : Il arrive qu'un album ait une version longue sur l'album mais que ce soit la version radio courte que l'on retrouve.
* '''Albums incomplets ''': Ces platesformes doivent obtenir les droits pour diffuser, et il arrive qu'ils ne les aient pas. Mais parfois juste sur une piste et non un album entier. Donc l'album apparaîtra comme complet, avec une nouvelle numérotation, mais avec une piste manquante.
* '''Qualité ''': bien que l'on puisse charger en '''MP3''' 320 et que maintenant '''YouTube Music''' passe par '''OPUS''', quoi qu'il arrive, il y a une double compression. De plus, certains albums sont de simples vidéos '''YouTube''' mais dont on ne voit pas la vidéo et dont la qualité audio est encore moins bonne.
* '''Album complet composé de plusieurs sources''' : Le problème que cela amène est qu'une fois chargées, ces pistes n'ont pas le même gain, des dynamiques différentes et qu'il peut y avoir des écarts de volumes entre certaines pistes.
* '''Album mal composé''' : L'album est complet, il y a toutes les pistes, sauf une qui n'est pas la bonne. Immaginons un chanteur qui aura chanté "Je l'aime à mourir" sur un album et "Je l'aime à la folie" sur un autre, les deux seront intervertis.


== Workflow ==
== Workflow ==


=== Vérifier les audios ===
=== Logiciels ===
Même si vous encodez vous-même vos CDs, vous n'êtes pas à l'abri d'une version pirate basée sur des MP3s de mauvaise qualité.
Il n'existe pas de logiciel réalisant toutes les opérations en une fois et il faut donc passer par plusieurs, tout en ayant besoin d'une bonne compréhension de la technique.
 
Certains de ces logiciels sont en ligne de commande et ne sont pas les plus simples à utiliser, il y aura donc plusieurs pour lesquels il faut voir la qualité obtenue (Q) et la facilité d'utilisation (F) :
 
{| class="wikitable" style="text-align:center; background-color:#ffce93;"
|- style="font-weight:bold; text-align:left; background-color:#000000;"
! rowspan="2" style="text-align:center; vertical-align:middle; background-color:#000000;color:#ffffff;" | Logiciel
! colspan="2" style="text-align:center; vertical-align:middle; background-color:#6665cd; color:#000000;" | Spectrogramme
! colspan="2" style="text-align:center; vertical-align:middle; background-color:#68cbd0; color:#000000;" | Dynamique
! colspan="2" style="text-align:center; vertical-align:middle; background-color:#ffcc67; color:#000000;" | Waveform
! colspan="2" style="text-align:center; vertical-align:middle; background-color:#f8a102; color:#000000;" | Identification
! colspan="2" style="text-align:center; vertical-align:middle; background-color:#fe0000; color:#000000;" | Gestion Tags
! colspan="2" style="text-align:center; vertical-align:middle; background-color:#34cdf9; color:#000000;" | ReplayGain
! colspan="2" style="text-align:center; vertical-align:middle; background-color:#34ff34; color:#000000;" | BPM
! colspan="2" style="text-align:center; vertical-align:middle; background-color:#ffcc67; color:#000000;" | Tonalité
! colspan="2" style="text-align:center; vertical-align:middle; background-color:#f8a102; color:#000000;" | Paroles
! colspan="2" style="background-color:#6665cd; color:#000000;" | Paroles synchros
|- style="font-style:italic; font-weight:bold;"
| style="vertical-align:middle; background-color:#cbcefb;" | Q
| style="background-color:#9698ed;" | F
| style="background-color:#96fffb;" | Q
| style="background-color:#38fff8;" | F
| style="background-color:#ffffc7;" | Q
| style="background-color:#fcff2f;" | F
| Q
| style="background-color:#fe996b;" | F
| style="background-color:#ffccc9;" | Q
| style="background-color:#fd6864;" | F
| style="background-color:#ecf4ff;" | Q
| style="background-color:#dae8fc;" | F
| style="background-color:#9aff99;" | Q
| style="background-color:#67fd9a;" | F
| style="background-color:#fffc9e;" | Q
| style="background-color:#fffe65;" | F
| Q
| style="background-color:#fe996b;" | F
| style="background-color:#cbcefb;" | Q
| style="background-color:#9698ed;" | F
|-
| style="vertical-align:middle; font-weight:bold; background-color:#ffffff; color:#000000;" | ffmpeg
| style="vertical-align:middle; background-color:#cbcefb;" | 7
| style="background-color:#9698ed;" | 1
| style="background-color:#96fffb;" |
| style="background-color:#38fff8;" |
| style="vertical-align:middle; background-color:#ffffc7;" | 3
| style="background-color:#fcff2f;" | 3
|
| style="background-color:#fe996b;" |
| style="vertical-align:middle; background-color:#ffccc9;" |
| style="background-color:#fd6864;" |
| style="vertical-align:middle; background-color:#ecf4ff;" |
| style="background-color:#dae8fc;" |
| style="vertical-align:middle; background-color:#9aff99;" |
| style="background-color:#67fd9a;" |
| style="vertical-align:middle; background-color:#fffc9e;" |
| style="background-color:#fffe65;" |
| style="vertical-align:middle;" |
| style="background-color:#fe996b;" |
| style="background-color:#cbcefb;" |
| style="background-color:#9698ed;" |
|-
| style="vertical-align:middle; font-weight:bold; background-color:#ffffff; color:#000000;" | Spek
| style="vertical-align:middle; background-color:#cbcefb;" | 7
| style="background-color:#9698ed;" | 10
| style="background-color:#96fffb;" |
| style="background-color:#38fff8;" |
| style="vertical-align:middle; background-color:#ffffc7;" |
| style="background-color:#fcff2f;" |
| style="vertical-align:middle;" |
| style="background-color:#fe996b;" |
| style="vertical-align:middle; background-color:#ffccc9;" |
| style="background-color:#fd6864;" |
| style="vertical-align:middle; background-color:#ecf4ff;" |
| style="background-color:#dae8fc;" |
| style="vertical-align:middle; background-color:#9aff99;" |
| style="background-color:#67fd9a;" |
| style="vertical-align:middle; background-color:#fffc9e;" |
| style="background-color:#fffe65;" |
| style="vertical-align:middle;" |
| style="background-color:#fe996b;" |
| style="background-color:#cbcefb;" |
| style="background-color:#9698ed;" |
|-
| style="font-weight:bold; background-color:#ffffff; color:#000000;" | FooBar 2000
| style="background-color:#cbcefb;" |
| style="background-color:#9698ed;" |
| style="background-color:#96fffb;" | 10
| style="background-color:#38fff8;" | 10
| style="background-color:#ffffc7;" |
| style="background-color:#fcff2f;" |
|
| style="background-color:#fe996b;" |
| style="background-color:#ffccc9;" |
| style="background-color:#fd6864;" |
| style="background-color:#ecf4ff;" | 10
| style="background-color:#dae8fc;" | 10
| style="background-color:#9aff99;" | 5
| style="background-color:#67fd9a;" | 10
| style="background-color:#fffc9e; color:#000000;" |
| style="background-color:#fffe65;" |
|
| style="background-color:#fe996b;" |
| style="background-color:#cbcefb;" |
| style="background-color:#9698ed;" |
|-
| style="font-weight:bold; background-color:#ffffff; color:#000000;" | Audacity
| style="background-color:#cbcefb;" | 10
| style="background-color:#9698ed;" | 5
| style="background-color:#96fffb;" | 10
| style="background-color:#38fff8;" | 10
| style="background-color:#ffffc7;" | 8
| style="background-color:#fcff2f;" | 2
|
| style="background-color:#fe996b;" |
| style="background-color:#ffccc9;" |
| style="background-color:#fd6864;" |
| style="background-color:#ecf4ff;" |
| style="background-color:#dae8fc;" |
| style="background-color:#9aff99;" |
| style="background-color:#67fd9a;" |
| style="background-color:#fffc9e;" |
| style="background-color:#fffe65;" |
|
| style="background-color:#fe996b;" |
| style="background-color:#cbcefb;" |
| style="background-color:#9698ed;" |
|-
| style="font-weight:bold; background-color:#ffffff; color:#000000;" | MusicBrainz Picard
| style="background-color:#cbcefb;" |
| style="background-color:#9698ed;" |
| style="background-color:#96fffb;" |
| style="background-color:#38fff8;" |
| style="background-color:#ffffc7;" |
| style="background-color:#fcff2f;" |
| 10
| style="background-color:#fe996b;" | 5
| style="background-color:#ffccc9;" | 10
| style="background-color:#fd6864;" | 8
| style="background-color:#ecf4ff;" |
| style="background-color:#dae8fc;" |
| style="background-color:#9aff99;" |
| style="background-color:#67fd9a;" |
| style="background-color:#fffc9e;" |
| style="background-color:#fffe65;" |
|
| style="background-color:#fe996b;" |
| style="background-color:#cbcefb;" |
| style="background-color:#9698ed;" |
|-
| style="font-weight:bold; background-color:#ffffff; color:#000000;" | MP3Tag
| style="background-color:#cbcefb;" |
| style="background-color:#9698ed;" |
| style="background-color:#96fffb;" |
| style="background-color:#38fff8;" |
| style="background-color:#ffffc7;" |
| style="background-color:#fcff2f;" |
| 5
| style="background-color:#fe996b;" | 10
| style="background-color:#ffccc9;" | 9
| style="background-color:#fd6864;" | 10
| style="background-color:#ecf4ff;" |
| style="background-color:#dae8fc;" |
| style="background-color:#9aff99;" |
| style="background-color:#67fd9a;" |
| style="background-color:#fffc9e;" |
| style="background-color:#fffe65;" |
|
| style="background-color:#fe996b;" |
| style="background-color:#cbcefb;" |
| style="background-color:#9698ed;" |
|-
| style="font-weight:bold; background-color:#ffffff; color:#000000;" | Mixxx
| style="background-color:#cbcefb;" |
| style="background-color:#9698ed;" |
| style="background-color:#96fffb;" |
| style="background-color:#38fff8;" |
| style="background-color:#ffffc7;" |
| style="background-color:#fcff2f;" |
|
| style="background-color:#fe996b;" |
| style="background-color:#ffccc9;" |
| style="background-color:#fd6864;" |
| style="background-color:#ecf4ff;" |
| style="background-color:#dae8fc;" |
| style="background-color:#9aff99;" | 10
| style="background-color:#67fd9a;" | 3
| style="background-color:#fffc9e;" | 10
| style="background-color:#fffe65;" | 3
|
| style="background-color:#fe996b;" |
| style="background-color:#cbcefb;" |
| style="background-color:#9698ed;" |
|-
| style="font-weight:bold; background-color:#ffffff; color:#000000;" | MixMeister BPM Analyzer
| style="background-color:#cbcefb;" |
| style="background-color:#9698ed;" |
| style="background-color:#96fffb;" |
| style="background-color:#38fff8;" |
| style="background-color:#ffffc7;" |
| style="background-color:#fcff2f;" |
|
| style="background-color:#fe996b;" |
| style="background-color:#ffccc9;" |
| style="background-color:#fd6864;" |
| style="background-color:#ecf4ff;" |
| style="background-color:#dae8fc;" |
| style="background-color:#9aff99;" | 10
| style="background-color:#67fd9a;" | 10
| style="background-color:#fffc9e;" |
| style="background-color:#fffe65;" |
|
| style="background-color:#fe996b;" |
| style="background-color:#cbcefb;" |
| style="background-color:#9698ed;" |
|-
| style="font-weight:bold; background-color:#ffffff; color:#000000;" | Kid3
| style="background-color:#cbcefb;" |
| style="background-color:#9698ed;" |
| style="background-color:#96fffb;" |
| style="background-color:#38fff8;" |
| style="background-color:#ffffc7;" |
| style="background-color:#fcff2f;" |
|
| style="background-color:#fe996b;" |
| style="background-color:#ffccc9;" | 9
| style="background-color:#fd6864;" | 7
| style="background-color:#ecf4ff;" |
| style="background-color:#dae8fc;" |
| style="background-color:#9aff99;" |
| style="background-color:#67fd9a;" |
| style="background-color:#fffc9e;" |
| style="background-color:#fffe65;" |
|
| style="background-color:#fe996b;" |
| style="background-color:#cbcefb;" | 10
| style="background-color:#9698ed;" | 10
|-
| style="font-weight:bold; background-color:#ffffff; color:#000000;" | WinAMP
| style="background-color:#cbcefb;" |
| style="background-color:#9698ed;" |
| style="background-color:#96fffb;" |
| style="background-color:#38fff8;" |
| style="background-color:#ffffc7;" |
| style="background-color:#fcff2f;" |
|
| style="background-color:#fe996b;" |
| style="background-color:#ffccc9;" |
| style="background-color:#fd6864;" |
| style="background-color:#ecf4ff;" | 10
| style="background-color:#dae8fc;" | 5
| style="background-color:#9aff99;" |
| style="background-color:#67fd9a;" |
| style="background-color:#fffc9e;" |
| style="background-color:#fffe65;" |
| 10
| style="background-color:#fe996b;" | 5
| style="background-color:#cbcefb;" | 10
| style="background-color:#9698ed;" | 5
|-
| style="font-weight:bold; background-color:#ffffff; color:#000000;" | MusicPlayer
| style="background-color:#cbcefb;" |
| style="background-color:#9698ed;" |
| style="background-color:#96fffb;" |
| style="background-color:#38fff8;" |
| style="background-color:#ffffc7;" |
| style="background-color:#fcff2f;" |
|
| style="background-color:#fe996b;" |
| style="background-color:#ffccc9;" |
| style="background-color:#fd6864;" |
| style="background-color:#ecf4ff;" |
| style="background-color:#dae8fc;" |
| style="background-color:#9aff99;" |
| style="background-color:#67fd9a;" |
| style="background-color:#fffc9e;" |
| style="background-color:#fffe65;" |
| 10
| style="background-color:#fe996b;" | 8
| style="background-color:#cbcefb;" | 10
| style="background-color:#9698ed;" | 8
|-
| style="font-weight:bold; background-color:#ffffff; color:#000000;" | LRCget
| style="background-color:#cbcefb;" |
| style="background-color:#9698ed;" |
| style="background-color:#96fffb;" |
| style="background-color:#38fff8;" |
| style="background-color:#ffffc7;" |
| style="background-color:#fcff2f;" |
|
| style="background-color:#fe996b;" |
| style="background-color:#ffccc9;" |
| style="background-color:#fd6864;" |
| style="background-color:#ecf4ff;" |
| style="background-color:#dae8fc;" |
| style="background-color:#9aff99;" |
| style="background-color:#67fd9a;" |
| style="background-color:#fffc9e;" |
| style="background-color:#fffe65;" |
| 10
| style="background-color:#fe996b;" | 8
| style="background-color:#cbcefb;" | 10
| style="background-color:#9698ed;" | 8
|-
| style="font-weight:bold; background-color:#ffffff; color:#000000;" | Python
| style="background-color:#cbcefb;" | 10
| style="background-color:#9698ed;" | 1
| style="background-color:#96fffb;" |
| style="background-color:#38fff8;" |
| style="background-color:#ffffc7;" | 10
| style="background-color:#fcff2f;" | 1
|
| style="background-color:#fe996b;" |
| style="background-color:#ffccc9;" |
| style="background-color:#fd6864;" |
| style="background-color:#ecf4ff;" |
| style="background-color:#dae8fc;" |
| style="background-color:#9aff99;" |
| style="background-color:#67fd9a;" |
| style="background-color:#fffc9e;" |
| style="background-color:#fffe65;" |
|
| style="background-color:#fe996b;" |
| style="background-color:#cbcefb;" |
| style="background-color:#9698ed;" |
|}
 
=== Workflow ===
[[Fichier:Workflow.drawio.png|centré|1271x1271px]]
 
=== Première analyse ===
La toute première chose à faire est d'écouter la piste dans de bonnes conditions et continuer l'analyse uniquement si à l'écoute déjà la qualité est bonne.
 
Le plus facile est de passer par les logiciels '''Spek''' et '''Audacity''' pour analyser le spectrogramme et l'onde de la piste mais ces méthodes sont lentes.
 
Je vous conseille, si vous devez analyser beaucoup de fichiers de passer par les méthodes suivantes :
 
==== Spectrogramme ffmpeg ====
Cette méthode est beaucoup plus rapide que '''Spek''' tout en offrant un spectrogramme de bien meilleure qualité, mais il passe également par une ligne de commande et suppose que vous avez déjà installé '''ffmpeg'''.<syntaxhighlight lang="batch">ffmpeg -y -i piste.flac -lavfi showspectrumpic=s=1000x500 "piste_spectrogram.png"</syntaxhighlight>Voici la différence entre Spek et ffmpeg :
[[Fichier:Spek Analyse.png|centré]]
et ffmpeg :
[[Fichier:AC+DC - Back in Black - 01 - Hells Bells spectrogram.png|centré|1298x1298px|lien=Fichier:AC_DC_-_Back_in_Black_-_01_-_Hells_Bells_spectrogram.png]]
 
==== Waveform Python ====
Cette méthode a l'avantage d'être extrêmement rapide une fois mise en place et de pouvoir être facilement insérée dans un script pour un traitement par lot.
 
Avant tout, il faut installer les dépendances, nous partirons du fait que vous avez déjà installé '''Python''' et '''PIP'''.
 
Lancez la commande suivante pour installer les dépendances :  <syntaxhighlight lang="batch">
pip install numpy soundfile matplotlib
</syntaxhighlight>Créez un fichier '''wf.py''' dans lequel vous mettez le code suivant : <syntaxhighlight lang="python3">
#!/usr/bin/env python3
"""
wf.py - Génère une image PNG de waveform style Audacity
Usage: python wf.py input [output.png]
"""
 
import sys
import numpy as np
import soundfile as sf
import matplotlib
matplotlib.use('Agg')
import matplotlib.pyplot as plt
import matplotlib.patches as mpatches
from matplotlib.ticker import MultipleLocator
import os
 
# ── Couleurs Audacity ────────────────────────────────────────────────────────
BG_TRACK      = '#e8e8e8'  # fond gris clair de la piste
BG_APP        = '#c8c8c8'  # fond de l'appli (entre pistes)
WAVE_FILL    = '#6680cc'  # bleu Audacity (remplissage)
WAVE_EDGE    = '#3355aa'  # bleu foncé (bord de la forme d'onde)
CLIP_COLOR    = '#ff3300'  # rouge clipping
GRID_COLOR    = '#bbbbbb'  # lignes de grille
AXIS_COLOR    = '#555555'  # texte des axes
BORDER_COLOR  = '#888888'  # bordure de piste
LABEL_BG      = '#3a3a5c'  # fond du bandeau titre (bleu nuit comme Audacity)
LABEL_FG      = '#ffffff'  # texte du bandeau titre
ZERO_LINE    = '#aaaaaa'  # ligne centrale 0
 
# ── Paramètres ───────────────────────────────────────────────────────────────
WIDTH_PX      = 1000
TRACK_H_PX    = 125        # hauteur par canal (px)
DPI          = 100
LABEL_H_PX    = 32        # hauteur du bandeau titre
YAXIS_W      = 0.045      # fraction de largeur réservée à l'axe Y
DOWNSAMPLE    = 16384        # nombre de colonnes pour le rendu (performances)
 
 
def build_envelope(samples: np.ndarray, n_cols: int):
    """Calcule min/max par bloc pour l'affichage efficace de la waveform."""
    n = len(samples)
    block = max(1, n // n_cols)
    cols = n // block
    trimmed = samples[:cols * block].reshape(cols, block)
    return trimmed.min(axis=1), trimmed.max(axis=1)
 
 
def draw_channel(ax, samples: np.ndarray, title: str, show_title: bool,
                peak: float, channel_idx: int, n_channels: int):
    """Dessine un canal sur un axes matplotlib."""
 
    ax.set_facecolor(BG_TRACK)
 
    n_cols = DOWNSAMPLE
    env_min, env_max = build_envelope(samples, n_cols)
    x = np.linspace(0, 1, len(env_min))
 
    # ── Déterminer l'échelle Y ────────────────────────────────────────────
    # Comme Audacity : si peak <= 1.0 on fixe ylim à [-1, 1]
    #                  si peak >  1.0 on étend ylim au pic réel
    if peak <= 1.0:
        ylim = 1.0
        y_ticks = [1.0, 0.5, 0.0, -0.5, -1.0]
    else:
        ylim = np.ceil(peak * 10) / 10  # arrondi au dixième supérieur
        step = round(ylim / 2, 1)
        y_ticks = sorted(set([ylim, step, 0.0, -step, -ylim]))
 
    ax.set_xlim(0, 1)
    ax.set_ylim(-ylim, ylim)
 
    # ── Grille ───────────────────────────────────────────────────────────
    for y in y_ticks:
        ax.axhline(y, color=GRID_COLOR, linewidth=0.6, zorder=1)
 
    # ── Ligne zéro (plus visible) ─────────────────────────────────────────
    ax.axhline(0, color=ZERO_LINE, linewidth=0.9, zorder=2)
 
    # ── Lignes de clipping ±1.0 (si peak > 1) ────────────────────────────
    if peak > 1.0:
        ax.axhline( 1.0, color=CLIP_COLOR, linewidth=1.0, linestyle='--', zorder=3)
        ax.axhline(-1.0, color=CLIP_COLOR, linewidth=1.0, linestyle='--', zorder=3)
 
    # ── Waveform : zones clippées vs normales ─────────────────────────────
    clipped_mask = (env_max >= 1.0) | (env_min <= -1.0)
 
    # Remplissage global (bleu)
    ax.fill_between(x, env_min, env_max,
                    color=WAVE_FILL, linewidth=0, zorder=4, alpha=0.85)
 
    # Bord de la forme d'onde
    ax.plot(x, env_max, color=WAVE_EDGE, linewidth=0.4, zorder=5)
    ax.plot(x, env_min, color=WAVE_EDGE, linewidth=0.4, zorder=5)
 
    # Surcouche rouge sur les zones clippées
    if clipped_mask.any():
        ax.fill_between(x, env_min, env_max,
                        where=clipped_mask,
                        color=CLIP_COLOR, linewidth=0, zorder=6, alpha=0.75)
 
    # ── Axe Y ─────────────────────────────────────────────────────────────
    ax.set_yticks(y_ticks)
    ax.set_yticklabels(
        [f'{v:+.1f}' if v != 0 else '0,0' for v in y_ticks],
        fontsize=7, color=AXIS_COLOR, fontfamily='monospace'
    )
    ax.yaxis.set_tick_params(length=2, width=0.5, pad=2)
    ax.tick_params(axis='x', which='both', bottom=False, labelbottom=False)
 
    # Bordure de piste
    for spine in ax.spines.values():
        spine.set_edgecolor(BORDER_COLOR)
        spine.set_linewidth(0.8)
 
 
def render(input_path: str, output_path: str):
    print(f"Lecture : {input_path}")
    audio, sr = sf.read(input_path, dtype='float32', always_2d=True)
    n_samples, n_channels = audio.shape
    duration = n_samples / sr
    peak = float(np.abs(audio).max())
 
    filename = os.path.basename(input_path)
    title_text = os.path.splitext(filename)[0]
 
    print(f"  Durée    : {duration:.1f}s  |  Canaux : {n_channels}  |  Peak : {peak:.4f}")
 
    # ── Mise en page ──────────────────────────────────────────────────────
    fig_w = WIDTH_PX / DPI
    label_h_in = LABEL_H_PX / DPI
    ch_h_in = TRACK_H_PX / DPI
    fig_h = label_h_in + n_channels * ch_h_in
 
    fig = plt.figure(figsize=(fig_w, fig_h), dpi=DPI)
    fig.patch.set_facecolor(BG_APP)
 
    # Bandeau titre (comme Audacity, en haut de la piste)
    label_ax = fig.add_axes([0, 1 - label_h_in / fig_h, 1, label_h_in / fig_h])
    label_ax.set_facecolor(LABEL_BG)
    label_ax.set_xlim(0, 1)
    label_ax.set_ylim(0, 1)
    label_ax.axis('off')
    label_ax.text(0.008, 0.5, title_text,
                  color=LABEL_FG, fontsize=9, fontweight='bold',
                  va='center', ha='left', fontfamily='sans-serif')
 
 
    # Canaux
    ch_h_frac = ch_h_in / fig_h
    for i in range(n_channels):
        bottom = 1 - label_h_in / fig_h - (i + 1) * ch_h_frac
        ax = fig.add_axes([YAXIS_W, bottom, 1 - YAXIS_W, ch_h_frac])
        draw_channel(ax, audio[:, i], title_text,
                    show_title=(i == 0), peak=peak,
                    channel_idx=i, n_channels=n_channels)
 
    plt.savefig(output_path, dpi=DPI, bbox_inches='tight',
                facecolor=BG_APP, pad_inches=0)
    plt.close(fig)
    print(f"  Sauvegardé : {output_path}")
 
 
# ── Point d'entrée ────────────────────────────────────────────────────────────
if __name__ == '__main__':
    if len(sys.argv) < 2:
        print("Usage: python waveform_audacity.py input.flac [output.png]")
        sys.exit(1)
 
    inp = sys.argv[1]
    out = sys.argv[2] if len(sys.argv) >= 3 else \
          os.path.splitext(inp)[0] + '_waveform.png'
 
    render(inp, out)
</syntaxhighlight>Maintenant, lorsque vous lancerez la commande : <syntaxhighlight lang="batch">
python wf.py piste.flac
</syntaxhighlight>cela créera un fichier piste_waveform.png contenant l'image de l'onde sonore de la piste.
 
Afin d'utiliser facilement ces outils, rendeez-vous dans le dossier suivant :
[[Fichier:Sendto.png|centré]]
Vous pouvez y accéder facilement en mettant ceci dans la barre d'adresse : "'''shell:sendto'''".
 
Créez un fichier "Analyse Audio.bat" et mettez ceci à l'intérieur : <syntaxhighlight lang="batch">
@echo off
setlocal enabledelayedexpansion
if "%~1"=="" (
    echo Usage: audio_analyse.bat "fichier1" ["fichier2" ...]
    echo Ou glissez-deposez des fichiers audio sur ce script.
    pause
    exit /b
)
:loop
if "%~1"=="" goto end
set "input=%~1"
set "name=%~n1"
set "dir=%~dp1"
echo.
echo ========================================
echo Traitement de : %name%
echo ========================================
echo [1/2] Spectrogramme...
ffmpeg -y -i "%input%" -lavfi showspectrumpic=s=1000x500 "%dir%%name%_spectrogram.png"
echo [2/2] Waveform stereo...
python "C:\Logiciels\waveform\wf.py" "%input%" "%dir%%name%_waveform.png"
echo.
echo Termine : %name%
echo ----------------------------------------
shift
goto loop
:end
echo.
echo Tous les fichiers ont ete traites.
pause
</syntaxhighlight>Maintenant, où que vous soyez, si vous faites un click droit sur un ou plusieurs fichiers audio, vous pourrez utiliser le script en allant dans "Envoyer vers..." :
[[Fichier:Sendto2.png|centré]]
Une fois l'opération terminée, vous aurez deux fichiers images en plus par piste audio :
[[Fichier:Waveform et spectrogramme bat.png|centré]]
 
=== Identification ===
L'identification est le fait d'analyser les pistes afin de voir à quelle édition cette version de l'album correspond.
 
Pour cela, il existe d'immenses bases de données contenant, quasi, toutes les éditions parues de, quasi, tous les albums, singles, vinyls... et même K7 audios.
 
Les deux plus connues et utilisées sont '''MusicBrainz''' et '''Discogs'''. Il est possible d'interroger les deux depuis '''MP3Tag''', mais je déconseille fortement.
 
'''MusicBrainz Picard (MBP)''' est un logiciel qui n'interroge que la base de données '''MusicBrainz''' mais permet une identification beaucoup plus précise.
 
Ce qu'il fera une fois une piste ou un album identifié, c'est remplir tous les tags pour lesquels il y a des données puis déplacer les fichiers là où vous l'aurez décidé.
 
Si vous choissisez '''c:\music''', il sera alors créé '''c:\music\Artiste\Album'''...
 
Lorsque l'on envoie des fichiers à '''MBP''', il y a plusieurs possibilités :
 
==== 1. L'album contient déjà des informations MBP ====
Si l'extraction a été réalisée avec '''EAC''' ou '''CueRipper''', en principe les informations '''MBP''' sont déjà présentes. Le logiciel ne servira alors qu'à envoyer l'album au bon endroit.
 
==== 2. Analyse sur base des tags ====
Les tags permettent de facilement identifier la bonne version d'une piste. Par exemple, pour "La mauvaise réputation" de Brassens, si le nom de l'album est "Intégrale 20ème anniversaire" avec pour sous-titre d'album "La mauvaise réputation, il ne montrera pas les différentes version de l'album "La mauvaise réputation".
 
Si un ou des résultats sont trouvés, il est très important de vérifier la version proposée car pour un même album, il existe plusieurs versions. Cela permet aussi de détecter des versions pirates.
 
Il faut donc vérifier :
 
# Les durées
# Les noms pour s'assurer qu'il n'y ait pas inversion ou erreur
 
==== 3. Il ne trouve rien ou pas la bonne version ====
La première chose à faire est de vérifier les tags, particulièrement le nom d'album. Par exemple si pour un double album vous avez ajouté '''CD1''' et '''CD2''' au nom, '''MBP''' ne trouvera rien, il faut d'abord enlever le '''CD1''' ou '''CD2''' de la recherche.
 
Il est également possible d'effectuer une recherche directement sur le site de '''MusicBrainz''' et, si vous trouvez l'album que vous voulez, obtenir l'identifiant de l'album pour forcer '''MBP''' à l'utiliser.
 
En Europe, nous avons été innondé par les versions pirates russes. La plupart du temps ces CDs (et K7s à l'époque) pirates ne sont pas de moins bonne qualité mais, il manque parfois des morceaux ou alors, à l'inverse, vu qu'il y avait encore de la place sur le CD, ils ont ajouté des morceaux "bonus"... Ou alors on a l'album complet mais avec les pistes dans l'odre alphabétique... On peut retrouver ces versions dans '''MusicBrainz''' mais elles sont loin d'être toutes intégrées.
 
Lorsqu'un album est ajouté à '''MusicBrainz''' une zone est prévue pour indiquer le statut de l'album, donc si c'est officiel, pirate, bootleg...
 
==== 4. Empreinte AcousticID ====
Si rien ne marche, vous pouvez lancer l'analyse '''AcousticID''' qui calculera alors l'empreinte de la piste et vous proposera l'ensemble des albums où cette empreinte a été retrouvée.
 
Pour faire cela, il prend les deux premières minutes et analyse toutes les notes jouées.
 
En très gros, chaque piste a sa propre empreinte, quel que soit le format, le bitrate ou le volume.
 
Mais il y a des limites :
 
* Il ne reconnait pas vraiment le morceau, il reconnait une version du morceau. Si vous envoyez une version radio mais que MusicBrainz ne connait que la version longue il ne reconnaitra pas
* Il suffit que votre platine tourne à 33,2 tours par minute pour que l'analyse ne reconnaisse pas les notes
 
Par contre, vous pouvez être certain que si un morceau est reconnu grâce à son empreinte, c'est que ce morceau existe dans un des albums de MusicBrainz.
 
Cela peut aussi être utile pour les albums étrangers écrits dans une langue que l'on ne connait pas.
 
Par exemple si vous achetez un CD chinois au pif, ne sachant ce qu'est le nom de l'artiste ou le nom de l'album, vous n'aurez pas à inscrire le moindre tag. Vous n'aurez qu'à nommer votre fichier Trackxx.flac et demander à '''MBP''' de vous l'identifier...
 
==== 5. L'album existe sur Discogs ====
Lorsque vous ne trouvez rien du tout, avant de l'ajouter à '''MusicBrainz''', vous pouvez passer par '''MP3Tag''' et effectuer une recherche sur '''Discogs'''. Pour cela il faut créer un compte.
 
Le problème de '''MP3Tag''' est qu'il n'est pas possible d'effectuer les vérifications possibles sur '''MBP''', vous devez donc être certains de votre édition.
 
==== Les intégrales et albums à plusieurs CDs ====
Comme vu plus haut, '''MBP''' sauvera, par défaut, vos fichiers dans un dossier "'''.\Artiste\Album'''"
 
Si nous reprenons notre exemple de Brassens, nous avions d'une part l'intégrale et de l'autre les albums séparés.
 
Ce que ça change est :
 
* '''Intégrale''' : Toutes les pistes seront dans un seul dossier '''.\Brassens\Intégrale'''
* '''Album''' : Chaque album a son propre dossier
 
Les intégrales étant rares, '''MBP''' n'est pas configuré par défaut pour les gérer. Et mettre tous les CDs d'un album en comprenant plusieurs dans un même dossier est plus propre pour l'utilisation via serveur ou médiathèque.
 
Cela peut poser problème, par exemple, lorsqu'une intégrale contient deux versions d'un même album ayant la même numérotation et les même titres (version studio et live).
 
Par défaut, '''MBP''' renomme les fichiers en '''N° de piste - titre'''.
 
Si vous vous rendez dans les options, vous pouvez voir le script utilisé pour le nommage des fichiers. Par défaut c'est : <syntaxhighlight>
%albumartist%/
%album%/
%tracknumber%. %title%
</syntaxhighlight>Ce qui donnerait par exemple : <syntaxhighlight>
C:\Music\Georges Brassens\Intégrale\12. Tout est au Duc.FLAC
</syntaxhighlight>Pour la majorité des cas, je l'ai modifié en :<syntaxhighlight>$if2(%albumartist%,%artist%)/
$if2(%album%,Unknown Album)/
$if($gt(%totaldiscs%,1),$num(%discnumber%,2) - ,)
$if(%tracknumber%,$num(%tracknumber%,2) - ,)
$if(%_multiartist%,%artist% - ,)
%title%</syntaxhighlight>Ce n'est pas compliqué :
{| class="wikitable"
|+
!Ligne
!Explication
!Résultat
|-
|$if2(%albumartist%,%artist%)/
|Si %ALBUMARTIST% existe, créer un dossier à ce nom, sinon utiliser %ARTIST%
|.\Artiste\
|-
|$if2(%album%,Unknown Album)/
|S'il y a un nom d'album, alors créer un dossier à ce nom, sinon créer un dossier Unknown Album
|.\Artiste\Album\
|-
|$if($gt(%totaldiscs%,1),$num(%discnumber%,2) -,)
|S'il y a plus d'un disque, ajoute le n° de disque sur deux chiffres
|.\Artiste\Album\02 -
|-
|$if(%tracknumber%,$num(%tracknumber%,2) ,)
|S'il y a un n° de piste, ajoute ce n° sur deux chiffres
|.\Artiste\Album\02 - 08
|-
|$if(%_multiartist%,%artist% - ,)
|S'il y a plusieurs artistes pour un seul Album, on ajoute le nom de l'artiste
|.\Artiste\Album\02 - 08 Artiste -
|-
|%title%
|Ajoute le titre
|.\Artiste\Album\02 - 08 Artiste - Titre
|}
donnant alors : <syntaxhighlight>C:\Music\Georges Brassens\Intégrale\13 - 12 - Georges Brassens et Charles Trenet - Tout est au Duc.FLAC</syntaxhighlight>C'est très bien pour les albums ayant plusieurs CDs, mais pour les intégrales, je modifie ce code en : <syntaxhighlight>$if2(%albumartist%,%artist%)/
$if2(%album%,Unknown Album)/
$if2(%discsubtitle%,%discnumber%)/
$if(%tracknumber%,$num(%tracknumber%,2) - ,)
$if(%_multiartist%,%artist% - ,)
%title%</syntaxhighlight>donnant alors : <syntaxhighlight>C:\Music\Georges Brassens\Intégrale\Archives 1953-1980\12 - Georges Brassens et Charles Trenet - Tout est au Duc.FLAC</syntaxhighlight>S'il n'y avait pas de sous-titre au CD, cela donnerait alors :  <syntaxhighlight>C:\Music\Georges Brassens\Intégrale\13\12 - Georges Brassens et Charles Trenet - Tout est au Duc.FLAC</syntaxhighlight>Vous pouriez être tenté de modifier le code en ceci si vous avez  : <syntaxhighlight>$if2(%albumartist%,%artist%)/
$if2(%discsubtitle%,)/
$if(%tracknumber%,$num(%tracknumber%,2) - ,)
$if(%_multiartist%,%artist% - ,)
%title%</syntaxhighlight>donnant alors : <syntaxhighlight>C:\Music\Georges Brassens\Archives 1953-1980\12 - Georges Brassens et Charles Trenet - Tout est au Duc.FLAC</syntaxhighlight>mais je déconseille cet usage.
 
Dans les faits, l'idéal est d'éviter les intégrales et prendre séparément chaque album.
 
=== Uniformiser les tags ===
Comme vu plus haut, il y a de très très très nombreux tags. Avant tout, il faut configurer '''MP3tag'''. Dans mon cas, il ressemble à ça :
[[Fichier:Mp3tag.png|centré|1280x1280px]]
Il est possible d'importer et exporter des configurations, se trouvant dans le dossier '''C:\Users\Marc\AppData\Roaming\Mp3tag\data\panels'''
 
Pour avoir la même config que moi, vous devez créer un fichier '''marc.ini''' dans ce dossier<syntaxhighlight>[#0]
name=R\u00e9pertoire
value=_DIRECTORY
enabled=1
size=1
 
[#1]
name=Titre
value=TITLE
enabled=1
size=6
default=\u000b1
multiline=0
custom_values=
prefer_tag=1
version=1
 
[#2]
name=Titre (tri)
value=TITLESORT
size=6
enabled=1
default=\u000b1
multiline=0
custom_values=
prefer_tag=1
version=1
 
[#3]
name=Album
value=ALBUM
enabled=1
size=6
default=\u000b1
multiline=0
custom_values=
prefer_tag=1
version=1
 
[#4]
name=Album (tri)
value=ALBUMSORT
size=6
enabled=1
default=\u000b1
multiline=0
custom_values=
prefer_tag=1
version=1
 
[#5]
name=Sous-titre de l'album
value=DISCSUBTITLE
size=12
enabled=1
default=\u000b1
multiline=0
custom_values=
prefer_tag=1
version=1
 
[#6]
name=Artiste de la piste
value=ARTIST
enabled=1
size=6
default=\u000b1
multiline=0
custom_values=
prefer_tag=1
version=1
 
[#7]
name=Artiste (tri)
value=ARTISTSORT
size=6
enabled=1
default=\u000b1
multiline=0
custom_values=
prefer_tag=1
version=1
 
[#8]
name=Artiste de l'album
value=ALBUMARTIST
enabled=1
size=6
default=\u000b1
multiline=0
custom_values=
prefer_tag=1
version=1
 
[#9]
name=Artiste album (tri)
value=ALBUMARTISTSORT
size=6
enabled=1
default=\u000b1
multiline=0
custom_values=
prefer_tag=1
version=1
 
[#10]
name=Tous les artistes
value=ARTISTS
size=12
enabled=1
default=\u000b1
multiline=0
custom_values=
prefer_tag=1
version=1
rows=3
 
[#11]
name=Parolier
value=LYRICIST
size=4
enabled=1
default=\u000b1
multiline=0
custom_values=
prefer_tag=1
version=1
 
[#12]
name=Compositeur
value=COMPOSER
enabled=1
size=4
default=\u000b1
multiline=0
custom_values=
prefer_tag=1
version=1
 
[#13]
name=Chef d'orchestre
value=CONDUCTOR
size=4
enabled=1
default=\u000b1
multiline=0
custom_values=
prefer_tag=1
version=1
 
[#14]
name=Ann\u00e9e
value=YEAR
enabled=1
size=2
default=\u000b1
multiline=0
custom_values=
prefer_tag=1
version=1
 
[#15]
name=Ann\u00e9e d'origine
value=ORIGYEAR
size=2
enabled=1
default=\u000b1
multiline=0
custom_values=
prefer_tag=1
version=1
 
[#16]
name=Piste
value=TRACK
enabled=1
size=2
default=\u000b1
multiline=0
custom_values=
prefer_tag=1
version=1
 
[#17]
name=Num\u00e9ro de disque
value=DISCNUMBER
enabled=1
size=2
default=\u000b1
multiline=0
custom_values=
prefer_tag=1
version=1
 
[#18]
name=BPM
value=BPM
size=2
enabled=1
default=\u000b1
multiline=0
custom_values=
prefer_tag=1
version=1
 
[#19]
name=Key
value=INITIALKEY
size=2
enabled=1
default=\u000b1
multiline=0
custom_values=
prefer_tag=1
version=1
 
[#20]
name=Genres
value=GENRE
enabled=1
size=9
default=\u000b1
multiline=0
custom_values=
prefer_tag=1
version=1
 
[#21]
name=Genre 2
value=GENRE2
size=3
enabled=1
default=\u000b1
multiline=0
custom_values=
prefer_tag=1
version=1
 
[#22]
name=Editeur
value=PUBLISHER
size=6
enabled=1
default=\u000b1
multiline=0
custom_values=
prefer_tag=1
version=1
 
[#23]
name=Media
value=MEDIATYPE
size=6
enabled=1
default=\u000b1
multiline=0
custom_values=
prefer_tag=1
version=1
 
[#24]
name=Gain Track
value=REPLAYGAIN_TRACK_GAIN
size=6
enabled=1
default=\u000b1
multiline=0
custom_values=
prefer_tag=1
version=1
 
[#25]
name=Gain Album
value=REPLAYGAIN_ALBUM_GAIN
size=6
enabled=1
default=\u000b1
multiline=0
custom_values=
prefer_tag=1
version=1
 
[#26]
name=Commentaire
value=COMMENT
enabled=1
size=12
default=\u000b1
multiline=1
rows=2
custom_values=
prefer_tag=1
version=1
 
[#27]
name=Paroles
value=UNSYNCEDLYRICS
size=12
enabled=1
default=\u000b1
multiline=1
rows=2
custom_values=
prefer_tag=1
version=1</syntaxhighlight>
 
==== Les Artistes ====
 
# Si noms écrits de différentes manières, transformer en modèle Prénom Nom.
# Vérifier si cet artiste doit être trié autrement, auquel cas, modification de '''ARTISTSORT''' et '''ALBUMARTISTSORT'''.
# Si le tag '''ARTIST''' contient plusieurs noms, renvoyer chacun vers '''ARTISTS''', chacun séparé par un point-virgule
# Si un seul artiste, renvoyer quand même vers '''ARTISTS'''
# Si compositeur, chef d'orchestre, parolier, ajouter à '''ARTISTS'''.
 
=== Paroles ===
Dans les '''MP3''' il existe deux tags dédiés aux paroles :
 
# '''USLT''' : %UNSYNCEDLYRICS% : Paroles non synchronisées
# '''SYLT''' : Paroles synchronisées.
 
Un problème est que '''MP3Tag''' ne prend pas en charge '''SYLT'''. Cela vient du fait que ce tag a un format très particulier, le '''Lyrics3''', qui demande à lui seul une représentation particulière.
 
Vous pouvez voir s'il existe un '''SYLT''' en regardant la colonne '''Tag''' : si le tag '''Lyrics3''' est présent, c'est qu'il y a des paroles synchronisées. Celles-ci n'apparaitront pas non plus
 
Il existe un logiciel, '''Kid3''', qui est un éditeur de tags puissant, offrant plus de possibilités sur les tags que '''MP3Tag''' mais offrant beaucoup moins de possibilités d'automatisation et de traitement par lot.
 
Celui-ci permet l'édition des paroles synchronisées et des timestamps :
[[Fichier:Kid3 paroles.png|centré|OGG]]
Il y a également possibilité d'utiliser le logiciel en ligne de commande '''exiftool''' qui permet d'afficher tous les tags d'un fichier ainsi que le contenu de chacun :
[[Fichier:Exiftool Brassens.png|centré|979x979px]]
Voici la commande utilisée : <syntaxhighlight lang="batch">
C:\Logiciels\exiftool\exiftool.exe -v %1 > "%~n1.exif"
</syntaxhighlight>Cette commande créera un fichier ayant le même nom de fichier que votre piste, mais avec une extension exif contenant toutes les données.
 
Si vous ne désirez pas créer un fichier mais simplement voir les informations, utilisez la commande suivante : <syntaxhighlight lang="batch">
C:\Logiciels\exiftool\exiftool.exe -v %1
pause
</syntaxhighlight>Les autres formats ('''Vorbis''', '''FLAC''', '''OPUS'''...) utilisant le '''Vorbis Comments''' pour les tags, il n'est pas possible d'intégrer les paroles synchronisée dans le format utilisé par '''ID3'''.
 
Les logiciels effectuant la recherche de paroles n'ont été prévu que pour écrire dans des '''MP3''', mais ils proposeront alors de sauver les paroles synchronisées dans un fichier '''LRC''', ayant le même nom de fichier que la piste et qui est lu maintenant par tous les lecteurs modernes.
 
Néanmoins, deux tags sont également utilisés dans les autres formats :
 
# '''UNSYNCEDLYRICS :''' Dans lequel on met les paroles non synchronisées et dont le nom a été gardé car devenu le plus courant
# '''LYRICS''' : Dans lequel on met les paroles sous cette forme (ici Plâtre et ciment! de Aubert):
<syntaxhighlight>
[00:47.14] Encore un jour où ils vont m'faire
[00:49.00] Encore un jour où vont m'faire faire
[00:51.02] Encore un jour où ils vont s'faire
[00:53.74] Plâtre et ciment!
[01:03.18] Encore un matin en béton
</syntaxhighlight>Mais autant '''UNSYNCEDLYRICS''' est un tag standard dans tous les formats audio, autant '''LYRICS''' pas du tout.
 
Le seul standard existant pour les paroles synchronisées, utilisé par tous les lecteurs est l'utilisation d'un fichier LRC.
 
 
 
 
 
 
Nous retrouverons alors deux possibilités courantes :
 
Il faut passer par deux bases de données :
 
# MiniLyrics
# LRCLib
 
Mais en plus de ça, les paroles ne sont pas bien gérées par les logiciels traitrant les MP3.
 
'''MP3Tag''' n'est pas en mesure d'afficher et gérer les paroles synchronisées.
 
Pour le moment, j'ai vu deux tags utilisables dans MP3Tag : %LYRICS% et %UNSYNCEDLYRICS%.
 
Le premier est sensé être la variable où l'on retrouve des paroles synchronisées, formatées dans le même style que des sous-titres.
 
Le deuxième c'est juste un texte avec les paroles.
 
J'ai des MP3s avec ces deux tags remplis.
 
Mais j'ai également une grosse majorité de MP3s dont les paroles sont synchronisées dans le MP3 mais qu'il est impossible d'afficher dans '''MP3Tag'''.
 
Cela se voit grâce à l'out '''exiftool'''.
 
=== Calculer le BPM ===
Il existe plusieurs méthodes pour le calculer.
 
==== Automatique ====
Pour les tests, j'utile le morceau '''Heartbeat 67 bpm''' de '''Michael Rother''' puisqu'il a un BPM connu de très exactement 67bpm.
 
Si vous êtes DJ, en principe, votre logiciel devrait le faire de manière assez juste lorsque vous les intégrez à votre médiathèque.
 
Sinon, possibilités simples :
 
# '''MixMeister BPM Analyzer''' : Donne une très très bonne analyse, très proche de la réalité, de manière très rapide. Le problème est que c'est un logiciel ancien, tombé maintenant dans le domaine public et qu'il ne gère que le format '''MP3'''.  Il m'a donné un 133,87 BPM soit exactement le double, ce qui est courant dans ce genre de cas et raison pour laquelle la plupart des logiciels proposent de doubler ou diviser par 2 le BPM obtenu.
# '''Foobar + BPM Analyzer''' : Donne souvent de très mauvais résultats et doit être configuré. Mais il permet une analyse de tous les formats. Il m'a donné un 89 BPM...Je ne comprends pas comment cette extension peut être fournie avec une configuration par défaut pareille...
 
En configurant Foobar de la manière suivante, j'obtiens un bon '''67,16 BPM''' mais le calcul est nettement plus lent et après tests sur d'autres '''MP3''', même si cette configuration donne de meilleurs résultats, elle est loin d'être parfaite.
 
Sur la majorité des morceaux (90%) avec une basse bien marquée et de bonne qualité, le calcul sera juste, mais il peut arriver qu'il soit totalement à côté de la plaque :/
[[Fichier:Foobar BPM Analyzer.png|centré]]
Et possibilité plus complexe :
 
* '''Mixxx ''': Il s'agit d'un excellent logiciel open-source pour DJ, compatible avec une grande majorité des tables de mixages. Il utilise un algorithme extrèmement puissant pour le calcul du BPM donnant de très très bons résultats, mais son interface n'est vraiment pas des plus simples et on peut vite se retrouver perdu à ne pas savoir où sont passées nos musiques.  C'est vraiment la meilleure solution, mais il faudra passer un temps à apprivoiser le logiciel.
 
==== Manuelle ====
Foobar propose une méthode qui fonctionne vraiment très très bien... Vous lancez le morceau puis vous lancez une analyse "manuelle" du BPM.
 
Cela signifie c'est que dès qu'il y a une basse, vous appuyez sur le bouton de la souris...
 
Si vous êtes en mesure de tenir le rythme, c'est sans doute la méthode la plus fiable.
 
== Idées ==
Créer des tiers-lieux "Faites votre copie privée".
 
Les organisateurs amènent le matériel permettant la copie privée depuis plusieurs supports vers d'autres.
 
ils amènent aussi les supports légaux qu'ils ont.
 
Les participants viennent avec des supports qu'ils veulent partager ou des supports vierges (clef usb, hdd...)
 
Le but est que chacun prète son matériel ou ses supports afin de permettre à tous d'avoir une copie privée, ce qui est légal.
 
Chaque TL le ferait par genre.
 
C'est 100% légal
 
== Codes ==
 
=== Image vers FLAC ===
<syntaxhighlight lang="python3" line="1" start="1">
import argparse
import sys
from pathlib import Path
 
import numpy as np
from PIL import Image
import soundfile as sf  # pip install soundfile
 
# --- Argument ---
parser = argparse.ArgumentParser(description="Convertit une image en fichier FLAC spectral.")
parser.add_argument("image", help="Chemin vers l'image source")
args = parser.parse_args()
 
input_path = Path(args.image)
if not input_path.exists():
    print(f"Erreur : fichier introuvable : {input_path}")
    sys.exit(1)
 
output_path = input_path.with_suffix(".flac")
 
# 1. Charger et préparer l'image
img = Image.open(input_path).convert("L")
img = img.transpose(Image.FLIP_TOP_BOTTOM)
 
# Réduire la résolution pour des calculs raisonnables
img = img.resize((300, 300))
img_array = np.array(img) / 255.0
 
# 2. Paramètres audio — hautes fréquences
sample_rate = 192000    # 192kHz pour supporter jusqu'à 96kHz
duration = 10        # secondes
freq_min = 0            # Hz min
freq_max = 96000        # Hz max
 
height, width = img_array.shape
t = np.linspace(0, duration, int(sample_rate * duration))
audio = np.zeros(len(t))
 
# 3. Construire le signal colonne par colonne
for x in range(width):
    t_start = x / width * duration
    t_end = (x + 1) / width * duration
    mask = (t >= t_start) & (t < t_end)
    for y in range(height):
        amplitude = img_array[y, x]
        if amplitude > 0.1:
            freq = freq_min + (y / height) * (freq_max - freq_min)
            audio[mask] += amplitude * np.sin(2 * np.pi * freq * t[mask])
 
# 4. Normaliser très bas pour ne pas écraser la musique
audio = audio / np.max(np.abs(audio)) * 0.15  # 15% du volume max


Afin de le savoir rapidement sans devoir écouter la piste, il existe le logiciel Spek.
# 5. Exporter en FLAC 24-bit
sf.write(str(output_path), audio, sample_rate, subtype="PCM_24")
print(f"Fichier FLAC généré : {output_path}")
</syntaxhighlight>


En très très gros,
== Références ==

Dernière version du 30 mars 2026 à 00:47

Introduction

Il est de plus en plus difficile d'écouter de la musique dans de bonnes conditions.

Beaucoup de gens n'achètent plus de musique et passent par des solutions de streaming, comme YouTube Music ou Spotify, soit en acceptant des publicités si version gratuite, soit en payant un abonnement pour des qualités légèrement supérieures.

Pourtant, nous sommes beaucoup à avoir acheté les droits sur la musique, en achetant CDs, K7s, vinyls...

Droit à la copie privée

En Belgique, nous avons une loi qui dit : "Toute personne a le droit de réaliser une copie privée si la source est licite" qui est une extension au droit d'auteur puisqu'autorise la réalisation d'une copie sans devoir passer par une demande à l'auteur ou l'éditeur.

Celle-ci est disponible sur le site du SPF Economie[1].

Cela peut sembler contre-intuitif mais il n'est pas obligatoire d'être propriétaire de l'oeuvre pour posséder une copie privée si la copie a été réalisée par la personne elle-même, que c'est dans un cadre d'écoute personnelle et que la source est licite.

Le SPF le confirme :

Introduction " Sous certaines conditions, les copies effectuées à des fins privées peuvent toutefois être réalisées sans autorisation. C’est en vertu de cette exception au droit d’auteur et aux droits voisins qu’il est permis de faire des copies d’un CD (ou partie d’un CD), pour le mettre sur un lecteur MP3 ou sur sa tablette par exemple, ou d’un CD emprunté à la Médiathèque, ou d’un film qui passe à télévision afin de le visionner à un moment ultérieur. Il en est de même des photocopies d’un article ou d’une partie d’un livre effectuées à des fins strictement privées. Les photocopies d’un article ou d’une partie d’un livre réalisées par une personne dans le cadre de ses activités professionnelles sont également autorisées par la loi sur le droit d’auteur dans le cadre d’une autre exception, l’exception de reprographie. "
Usage privé " Les copies ne peuvent être réalisées que par une personne physique pour un usage privé. Cela signifie que la copie réalisée ne peut être utilisée à des fins commerciales. " Les fins commerciales concernent églament un service rendu gratuitement.

On ne peut faire quelque chose à la place de quelqu'un. On peut juste lui mettre les outils en place et le guider pour qu'il le fasse lui-même, de manière gratuite, tout cela étant un prêt.

P2P

et illégal

" Effectuer une copie privée à partir d’une source illicite, n’est pas autorisé. La Cour de Justice de l'Union européenne l’a clarifié dans un arrêt du 10 avril 2014. On entend par source illicite, la source à partir de laquelle il est porté atteinte aux droits des auteurs ou des titulaires de droits voisins. La copie d’une œuvre via un réseau P2P, même effectuée pour son usage personnel, constituera souvent une source illicite, et donc, n’est pas autorisée par la loi. "

Les autres sections ne concernent pas notre cas.

Les sources licites sont, par exemple :

  • Oeuvre achetée
  • Oeuvre louée à la médiathèque
  • Oeuvre empruntée à un ami
  • Enregistrer la radio
  • Enregistrer la télévision

Cette loi fait suite à la directive européenne 2001/29/CE du Parlement européen et du Conseil du 22 mai 2001 sur l'harmonisation de certains aspects du droit d'auteur et des droits voisins dans la société de l'information.[2]

Avant cela, il y avait une précédente loi, datant de 1994, basée sur une autre directive européenne, la 92/100/CEE[3] encadrant le prêt par des institutions officielles, telles que les médiathèque. Cette directive voit le prêt comme une substitution à l'achat et estime qu'il doit y avoir rémunération de l'auteur lorsqu'il y a prêt.

Toutes ces lois, arrêtés royaux, directives... sont nés de la démocratisation à l'époque des enregistreurs VHS et K7 audio ayant amené à une grosse baisse des ventes.

Bien que les directives européennes aillent à l'encontre du droit à la copie privée, la Belgique, et plusieurs autres pays peuvent l'autoriser de par l'application d'une taxe sur différents supports.

Taxe Auvibel

Chose peu connue : depuis 1994, en Belgique, beaucoup de supports numériques sont soumis à la taxe Auvibel[4], qui reverse une partie du prix du support[5] aux sociétés de droits d'auteur puisqu'il est offert le droit à tous de réaliser sa copie privée sans devoir forcément posséder l'original. Ils estiment donc que doit être appliquée une taxe à tout appareil permettant de :

  • Créer une copie privée
  • Contenir une copie privée
  • Lire une copie privée

Supports taxés actuellement (2022)

Support Montant HTVA
Carte mémoire 1,5 €
Clef USB 1,5 €
Baladeur audio 2,7 €
Smartphone 4,3 €
Tablette 4,3 €
HDD externe 5,4 €
Appareil de salon 6,4 €
IPTV officiel 4,3 €
Ordinateur grand public 4,3 €
Imprimantes jet d'encre 2,7 €
Liseuse 1,1 €
CD vierge (pièce) 0,1 €
DVD vierge (pièce) 0,2 €
Reconditionné 60%

Les supports taxés ont évolué au fil du temps, à l'époque il y avait les disquettes, les VHS et les K7 audio...

Toujours est-il que le cadre offert par cette loi vous permet d'avoir votre propre audiothèque, de bien meilleure qualité que les solutions de streaming, tout en restant dans la légalité.

Et ailleurs ?

Un pays comme la Grande-Bretagne se base principalement sur le copyright, qui a le même but que le droit d'auteur mais en a une vision différente. Contrairement au droit d'auteur, le copyright ne prévoit pas d'extension permettant la copie privée.

En Angleterre, la musique est au même prix, les supports vierges sont beaucoup moins chers MAIS il est totalement interdit de réaliser une copie d'une oeuvre sous copyright sans avoir une autorisation de l'auteur ou que cette oeuvre ne soit autorisée dans un cadre très clairement défini (éducation, médical, scientifique...). Les amendes en cas de non respect peuvent être énorme et si un avocat vous prend en grippe et veut faire un exemple, cela peut aller jusqu'à la prison.

En Grande-Bretagne, il est donc courant de trouver des albums "doubles" comprenant le CD ainsi qu'un lien vers une version MP3 légale à pouvoir mettre sur son balladeur. C'est aussi une des raisons pour laquelle iTunes de Apple a si bien marché, il a longtemps été la principale plateforme permettant d'acheter sa musique légalement pour l'écouter sur appareil mobile.

Conclusion

A l'heure actuelle, beaucoup de gens ne possèdent plus de musique et passent par le streaming ou simplement la radio.

Le problème de l'un comme de l'autre est que n'est disponible que ce que ces plates-formes proposent et que dès que l'on a l'habitude d'écouter des genres un peu alternatifs, il n'est pas rare de voir des artistes, des albums, certains morceaux disparaitre...

De plus, les "petits artistes" sont rarement présents ou disparaissent également si pas assez rentables.

En Belgique nous avons pourtant un droit qui semble aller "de soit", mais qui ne l'est pas.

Chacun, quels que soient ses moyens, peut se créer, s'il en prend le temps, un capital culturel et intellectuel dont il peut jouir comme il le désire...

Certes il est prestigieux d'avoir l'original du remaster 2013 Deutsche Grammophon de l'enregistrement de la 9ème de 1977, dirigée par Karajan. Mais ce n'est pas car quelqu'un n'a pas les moyens de se l'offrir qu'il n'a pas droit d'en réaliser une copie et de pouvoir l'écouter s'il le réalise dans le cadre de la loi. On ne l'oblige pas à acheter la version à 2€ tirée d'un MIDI foireux ou jouée par un orchestre de débutants... (c'est directement pour ça que de telles versions existent dans les pays ou la copie privée n'est pas autorisée...)

Le droit à la copie privée est ce qui vous permet, dès que vous croisez un album que vous aimez, que ce soit à la médiathèque ou chez un ami, d'en réaliser une copie légale.

C'est ce qui vous permet d'avoir votre propre audiothèque, pouvant comprendre des milliers d'albums, en ne gardant que les meilleures versions et qualités, tout en étant à l'abri de les voir disparaitre.

C'est un droit d'une importance capitale car il atténue la différence de classes en la réduisant directement par un accès égal à tous à la culture.

Buts de la page

🎵 Audiothèque Jellyfin

Le but ici est de vous permettre de :

  1. Gérer vos albums proprement
  2. Les rendre accessibles sur internet
  3. Sans que cela ne soit public...
    1. avec une ip changeante
    2. grâce à une gestion des utilisateurs.

Pour cela, il faut :

  1. Un ordinateur simple avec USB3 faisant office de serveur
  2. Un bon disque dur avec sa propre alimentation où héberger la musique
  3. Une connexion internet qui ne joue pas au yo-yo...
  4. Idéalement un onduleur gardant le serveur allumé en cas de panne de courant pas trop longue. Vous pouvez également par un bon Raspberry Pi, qui s'allume tout seul dès qu'il a du courant, mais il faut revoir tous les scripts qui viennent :)

Pour connaître l'IP à utiliser, je passe par un script qui se lance au démarrage de la machine et qui toutes les deux heures envoie mon IP sur mon Nextcloud. Si vous utilisez l'outil de synchronisation Google Drive, vous pouvez également l'envoyer là.

Voici le code du fichier SENDIP.BAT :

@echo off
:loop
for /f %%i in ('powershell -command "(Invoke-RestMethod -Uri https://api.ipify.org)"') do set ip=%%i
echo http:\\%ip%:8096 > C:\Moncloud\monip.txt
timeout /t 7200 /nobreak >nul
goto loop

C'est important car à la moindre coupure internet votre ip change. Ainsi, où que vous soyez, tant qu'il y a internet chez vous, ce fichier sera mis à jour sur votre cloud. Si depuis votre smartphone vous voyez que le fichier n'est plus mis à jour, vous savez qu'il y a une coupure d'internet chez vous.

Pour vous assurer que ce code se lance à chaque démarrage, ouvrez une fenêtre d'exploration de fichiers et mettez l'adresse "shell:startup". Tous les fichiers contenus dans ce dossier sont directement lancés au démarrage. Copiez y le fichier SENDIP.BAT.

Pour bien gérer son audiothèque et avoir quelque chose de propre, il ya plusieurs choses à savoir.

Types de formats

Il existe deux formats dans lesquels nous retrouvons, en général, la musique :

  1. MP3 : le format le plus courant, destructif mais compatible avec tout.
  2. FLAC : le format des audiophiles, non-destructif, diminuant la taille sans diminuer la qualité.

Parmis les premières choses à comprendre il y a donc :

Qu'est-ce qu'un format et qu'est-ce qu'un codec ?

De manière très simple :

  1. Format : c'est l'extension du fichier qui indique en général le format (MP3, FLAC, M4A ou MP4...)
  2. Codec : Un codec est un outil permettant de "co"mpresser et "déc"ompresser des données dans un certain format.

Analogie avec un texte

En général l'évolution d'un codec passe surtout par l'évolution de la partie compression.

Afin de mieux comprendre le principe du codec destructif, nous allons faire une analogie et partir de la phrase suivante, que ChatGPT m'a généré.

Attention, une analogie est forcément une simplification et vulgarisation... Il est évident que c'est plus compliqué que ça. Si vous avez compris, tant mieux, car ce sera toujours une meilleure compréhension que celle de la majorité des gens. Mais ne pensez pas avoir compris  :

À Noël, le vieux maître pêcheur goûta un exquis rôti de bœuf accompagné d’élégantes légumes où mûrît un zeste d’âme très gênée.

Nous allons partir du fait que trois formats, passant par plusieurs codecs ou évolutions, utiliseront la même décomposition de la phrase :

À No ë l, le vieux ma î tre p ê cheur go û ta un exquis r ô ti de b œ uf accompagn é d' é l é gantes l é gumes o ù m û r î t un zeste d' â me tr è s g ê n é e.

La compression maximale de ces trois formats donnera la même phrase sans aucun accent ou caractère spécial  :

A Noel, le vieux maitre pecheur gouta un exquis roti de boeuf accompagne d’elegantes legumes ou murit un zeste d’ame tres genee.

Nous allons partir du fait que nous utilisons toujours le même taux de compression, passant ici par l'utilisation de quatre caractères à modifier pour passer de notre phrase compressée à celle d'origine.

Format 1
Codec 1

Celui-ci gardera quatre caractères : é, ù, õ et ô.

A Noel, le vieux maitre pecheur gouta un exquis roti de boeuf accompagné d’élégantes légumes où murit un zeste d’ame tres genée.

Sur les quatre caractères ajoutés, deux sont inutiles.

Codec 2

On passe alors par un deuxième codec qui effectue la compression différement.

Ce nouveau compresseur, au lieu de garder 4 accents de base, analysera les accents les plus utilisés et ne gardera que ceux là, donc ici é, ù, ë et ê, nous avons donc, toujours avec le même taux de compression :

A Noël, le vieux maitre pêcheur gouta un exquis roti de boeuf accompagné d’élégantes légumes où murit un zeste d’ame tres gênée.
Format 2
Codec 1

Ce nouveau format va faire autrement, au lieu d'indiquer des caractères à utiliser, il vont indiquer les accents à garder.

Notre premier codec partira de la même décomposition et utiliser les quatre accents les plus utilisés : aigu ', grave `, circonflexe ^ et tilde ~.

À Noel, le vieux maître pêcheur goûta un exquis rôti de boeuf accompagné d’élégantes légumes où mûrît un zeste d’âme très gênée.
Codec 2

Puis l'évolution ou un autre codec décidera de partir sur les accents les plus utilisés, remplaçant le tilde par le tréma.

Nous avons avec ce format presque la réalité :

À Noël, le vieux maître pêcheur goûta un exquis rôti de boeuf accompagné d’élégantes légumes où mûrît un zeste d’âme très gênée.

Mais nous pouvons voir qu'aucun de ces deux formats ne tient compte de notre pauvre bœuf écrit boeuf car ils se concentrent sur le principal et que cette faute est une faute tolérée.

Format 3
Codec 1

Avec l'évolution des technologies, un nouveau format va proposer quelque chose qui demandait trop de ressources avant pour un encodage rapide.

Au lieu d'indiquer un accent à appliquer à tous les caractères, on indique ce qui doit être appliqué. Avec un même taux de compression, le compressuer indique alors quatre choses :

  1. tous les accents : aigus, graves, circonflexes, tilde, tréma
  2. toutes les déclinaisons du caractère C : pour avoir les cédilles
  3. ligature des O : pour bœuf
  4. ligature des A : pour curriculum vitæ

Ce troisième format nous donnera alors exactement le contenu original :

À Noël, le vieux maître pêcheur goûta un exquis rôti de bœuf accompagné d’élégantes légumes où mûrît un zeste d’âme très gênée.

et peut même aller plus loin puisque prend en compte des caractères que nous n'utilisons même pas.

Codec 2

Mais un autre codec ira plus loin :

  1. Tous les accents et les cédilles rentrent dans les accents
  2. Ligature sur tous les caractères
  3. Déclinaisons
  4. Emoji

Ce nouveau codec permettra alors d'encore plus compresser puisqu'on n'a plus besoin de 4 modifications de caractères mais seulement des deux premières.

Conclusion

Nous pouvons voir ici que, même si la phrase est toujours lisible, elle est plus ou moins agréable à lire en fonction du format et du codec utilisé.

Il en va de même pour l'audio. Ce que nous écouterons nous semblera parfaitement acceptable, mais cela passe par de petites erreurs qu'un puriste peur remarquer.

Formats non-destructifs

Le FLAC est un format ouvert créé par xiph en 2000 dans le cadre du projet "OGG". Par abus de langage on parle de OGG pour les audios compressés car c'est souvent cette extension là qu'aura le fichier, mais en réalité le OGG est un conteneur pouvant contenir plusieurs flux se basant sur les codecs qu'ils ont créé :

  • Vorbis : Audio avec perte, en principe au format OGA
  • Theora : Vidéo, en principe au format OGV
  • FLAC : Audio sans perte
  • OPUS : Audio avec perte.

Il a également existé le format APE, dont le format de tag, compatible avec les MP3 est toujours utilisé, créé spécialement pour le logiciel Monkey's Audio, mais ce logiciel ne s'étant pas imposé, le format audio APE a totalement disparu.

FLAC est connu pour offrir une compression supérieure à celle du ZIP, pris en général comme référence pour la compression sans perte, tout en permettant une décompression plus rapide que le temps de la piste compressée, quel que soit le niveau de compession.

Avant cela, les audiophiles utilisaient soit des formats non destructifs comme le WAV ou le PCM, mais qui ne permettaient pas les tags, faisant que les lecteurs audios n'affichaient pas les informations, soit alors ils réalisaient un ISO, une copie conforme d'un CD, en un seul fichier, mais pris par les lecteurs comme un réel CD avec plusieurs pistes.

Ce format est toujours utilisé et maintenant que la plupart des gens ont un accès internet haut-débit, un site comme Qobuz propose une alternative à YouTube Music et Spotify en proposant une écoute en qualité FLAC ainsi que l'achat des albums.

Depuis septembre 2025, Spotify propose une abonnement proposant le FLAC.

Apple a créé le format propriétaire ALAC, offrant la même chose sans aucun avantage mais utilisé pour les offres haute qualité de Apple...

Bien que le FLAC soit sans perte, lors de l'encodage, il vous sera demandé 16 ou 24bits.

16 ou 24bits ?

Il peut sembler logique que 24 offre une meilleure qualité que 16 mais ce n'est pas le cas.

La majorité des FLAC viennent de sources en 16bits car elles sont largement majoritaires. Si vous encodez un CD en 16bit, à la lecture vous aurez très exactement la même qualité que si vous l'aviez encodé en 24bit car les 8bits en plus ne seront remplis que de 0.

Le 24bit n'est utilisé que dans les studios et il faut donc que le studio soit directement la source.

Il est possible de rencontrer du 24bit, par exemple lorsque Peter Gabriel, pour le 25ème anniversaire de son album "So", donnait un lien dans chaque CD afin de pouvoir télécharger la version studio FLAC 24bits.

Les rips de vinyls sont, en principe, toujours en 24bits avec, en plus, une fréquence à 96Khz au lieu de 44.1Khz

Il existe une réelle différence de qualité entre 16 et 24, donc si votre source est 24bits, convertissez en 24bits...

Voici une liste des supports pouvant être rencontrés et la manière de les encoder :

Place Nom du support Qualité Convertir en
1 SACD
Super Audio CD
Magasins, internet La meilleure qualité possible pour le grand public, mais il faut un lecteur spécial (certains lecteurs BluRay sont hybrides mais il faut vérifier).
Ce format est presque exclusivement utilisé pour la musique classique.
Etant multi-canal, il est également utilisé pour certaines oeuvres enregistrées dans ce but (Pink Floyd, Dire Straits...)
Attention, certains SACD sont double couche, avec sur une la version SACD et l'autre la version CD, faisant que certains SACD peuvent être lus dans un lecteur CD normal, mais sans offrir la qualité SACD.
Enfin, il faut faire attention lors de la conversion car le SACD ayant un format spécial, il doit être encodé avec une fréquence particulière. La fréquence sera toujours de 44,1 multiplié par une puissance de 2.
FLAC bits et Khz en fonction de la piste d'origine.
2 Audio HiRes Qobuz, Tidal, Apple Lossless FLAC 24bits à une fréquence de 192Khz Laisser tel quel
3 BluRay Audio Magasins, internet Même qualité que l'Audio HiRes avec possibilité de multi-canal.
Nettement plus utilisé que le SACD pour tout ce qui est musique pop (Jimi Hendrix, Alan Parson, ...)
FLAC bits et Khz en fonction de la piste d'origine.
4 CD Audio Magasins, internet Equivalent à FLAC 16bits à une fréquence de 44.1Khz. Un CD audio ne peut avoir une autre qualité que celle là. FLAC 16bits
44.1Khz
5 Vinyls Magasins, internet 33T Le vinyl étant analogique, il n'y a pas de bits, fréquences, etc. L'avantage du vinyl est que ses limites physiques imposent un mastering plus propre et mieux réalisé.
Cela amène au fait que même si en cinquième position, il peut parfois se retrouver en première, surtout sur des éditions récentes (par exemple Black Ice de AC/DC)
FLAC 24bits
48Khz ou 96Khz
45T Le 45 tours allant beaucoup plus vite et étant masterisé pour une seule piste, la qualité est en général à la fois meilleure de par son mastering et de par sa vitesse de lecture.
6 Streaming Internet A ne prendre que si aucune autre source existe Ne pas convertir

Les logiciels audio, quelque soit le nombre de bits de l'audio, travaillent jusqu'en 32bits en fonction des retouches effectuées.

En très gros : 16bits signifie qu'un échantillon sonore est divisé en 65536. En travaillant en 32bits, le logiciel créé des étapes d'interpolation et au lieu de travailler sur des échantillons sonores divisés en 65536, chaque division est elle-même divisée en 65536, soit 4294967296 divisions par échantillon.

Bien qu'à une telle qualité, il sera difficile d'entendre la différence sans un excellent matériel, si vous effectuez une modification à l'audio et sauvez en FLAC 32, 24 et 16bits, il y aura une différence de qualité entre les trois.

Attention 2 : Encore une fois, même si le vinyl est en 5ème position, il faudra toujours analyser les autres sources et le mastering de celle-ci. Le vinyl, même si un support de moins bonne qualité restera celui sur lequel le mastering sera le meilleur par obligation.

La fréquence

L'oreille humaine peut en général entendre les sons allant d'une fréquence de 20Hz à une fréquence de 20KHz.

Les enceintes courantes peuvent produire des sons allant jusqu'à 20KHz.

Si la fréquence d'une piste est de 44.1KHz, c'est car il existe le "théorème d'échantillonnage" qui est on ne peut plus simple : la fréquence captée doit être échantillonée à, au moins, le double de cette fréquence.

Pour le CD, ils ont voulu reproduire fidèlement jusqu'à 20 kHz. Le théorème impose d'échantillonner à au moins le double, soit 40 kHz minimum. Ils ont choisi 44.1 kHz pour avoir une marge de sécurité technique pour les effets et filtres appliqués numériquement.

Alors, pourquoi monter jusqu'à 192KHz ?

Car ce que j'ai dit plus haut serait faux pour beaucoup de personnes. Il n'y a aucune preuve scientifique que ce qui suit est vrai mais cela vient d'un manque d'études et du fait que celles ayant été effectuées ont été contestées.

Un chercheur japonais, Tsutomu Oohashi, a réalisé une étude en faisant écouter à des sujets un type de musique particulier, contenant beaucoup de hautes fréquences, afin d'analyser leur activité cérébrale pendant l'écoute.

Il a remarqué une activité cérébrale lorsque les sons à haute fréquence étaient joués même si inaudibles consciemment. Il a appellé cela "l'effet hypersonique".

Mais il y a plusieurs problèmes, dont un amené directement par Oohashi, ce qui montre l'honnêteté intellectuelle de sa démarche :

  • Cet effet hypersonique disparait totalement si la musique est écoutée au casque plutôt que sur enceintes. Cela laisse donc supposer que ce n'est pas l'oreille qui "capte" les hautes fréquences mais d'autres partie du corps.

Le fait que le son puisse transmettre le son par conduction osseuse est un fait établi et connu depuis longtemps.

Beethoven, une fois devenu sourd, utilisait une latte en bois qu'il plaçait entre ses dents et reliée au piano afin de pouvoir faire parvenir le son à son cerveau grâce aux vibrations sur les os de sa machoire..

Mais d'autres problèmes ont été soulevé concernant son expérience :

  • Il n'a pas été possible de la reproduire par un laboratoire occidental en utilisant la même musique. Mais...
  • Biais culturel : la musique utilisée étant une musique asiatique, elle peut être perçue différement par des sujets asiatiques d'un côté et occidentaux de l'autre.
  • Echantillon : l'étude de Oohashi se base sur un échantillon de 30 sujets, ce qui est très faible.
  • Incertitude quant au matériel utilisé : certaines enceintes, lorsqu'elles produisent des hautes fréquences, peuvent avoir tendance à produire des artefacts dans les zones audibles.

Ses études ne sont donc pas réfutées, mais plusieurs biais méthodologiques ont été soulevés pouvant entrainer des conclusions fausées, ce qui est vrai aussi.

Toujours est-il que c'est au Japon qu'est né le label Hi-Res Audio qui impose à minima :

  • Que la piste soit encodée en WAV ou FLAC à 96kHz et 24 bits
  • Que le matériel d'écoute permette de décoder ces pistes.
  • Que les enceintes aillent jusqu'à minimum 40kHz.

Ce qui est défendu par les audiophiles voyant cette étude comme réaliste est le fait d'avoir une meilleure harmonique.

L'harmonique, en très très gros, ce sont toutes les fréquences utilisées par un instrument lorsque l'on joue une note.

Par exemple, si j'ai un instrument dont le Do est situé à 500Hz et que je joue cette note, elle sera appellée la "fondamentale" et ses harmoniques seront 1000, 1500, 2000, 2500... Hz

Si je fais un DO à l'octave supérieure, donc une fondamentale de 1000Hz, ses harmoniques seront 2000, 3000, 4000, 5000... Hz

Et si je passe encore à l'octave supérieure, avec une fondamentale à 2000Hz, les harmoniques seront de 4000, 6000, 8000, 10000... Hz

Certains instruments ont une harmonique très riche, comme le violon, la guitare, la guitare électrique ou les cymbales et d'autres n'en ont que très peu, comme la flûte. Ceux avec une harmonique riche produisent des harmoniques jusque dans les hautes fréquences là où les autres non.

Ces harmoniques en hautes fréquences font partie de la "texture" d'un son. Le fait de supprimer les harmoniques inaudibles amoindrirait la qualité de cette texture, ce qui pourrait être perçu inconsciemment.

Personnelement, j'ai tendance à penser que, en effet, il est mieux d'avoir une plus large fréquence et que certaines fréquences inaudibles peuvent être perçues. Néanmoins, je pense aussi que ces fréquences ne peuvent être perçues que si le cerveau est prêt à les accepter. Mon impression est que j'ai plus tendance à remarquer une différence de qualité sur une piste que j'aime que sur une piste que je n'aime pas. Cela m'amène aussi à, lorsque j'entends certaines musiques que je n'aime pas du tout, avoir une barrière car je ne suis plus en mesure de comparer la bonne ou la mauvaise qualité, elles deviennent toutes de "mauvaise qualité".

Certains artistes, tels que Aphex Twin avec leur titre bien connu ΔMi1=αn=1NDi[n][jC[i]Fji[n1]+Fexti[n1]] qui, étant le vrai titre, est en général appellé "Formula" ou "Equation", joue avec les fréquences.

Voici le spectrogramme de ce morceau :

Mais si dans Audacity on analyse pluis loin pour ne regarder que de petites sections :

Cacher un message dans la fréquence d'un audio est une manière courante de transmettre des messages et n'est pas très compliquée.

Donc oui, il y a moyen de transformer une image en son :

Et si je transforme cette image en son allant de 24Khz à 48Khz sur FLAC 24bits de 96khz, j'aurais ce FLAC totalement inaudible (dans le sens où l'on n'entend strictement rien) mais pourtant existant :

Et si maintenant je prends un aute FLAC 24 bits 44.1 Khz ou 48Khz je peux mixer les deux :

A l'écoute, il n'y a pas de différence entre chacune des pistes du bas.

Si je repars de notre image de Willy, on peut voir que que notre image n'est plus une image mais une onde à différentes fréquences donnant une "impression" d'image en noir et blanc si l'on regarde le spectrogramme.

Il est donc possible d'appliquer des effets sonores à cette "image". Je vais donc appliquer :

  • Fondu en ouverture : dégradé à gauche
  • Fondu en fermeture : dégradé à droite
  • Amplification : saturation du blanc
  • Echo : petit flou dégradant les couleurs pures
Onde de base Onde modifiée

Pour ceux ayant connu les télévisions en noir et blanc analogiques, cela rappelera sans doute quelque chose puisque les effets que j'ai appliqué sont, en gros, les distortions appliquées à l'onde par les téléviseurs de l'époque.

Vous venez de comprendre la télévision analogique de nos grands-parents : une seule onde mais les fréquences basses servaient à transmettre l'audio et les fréquences hautes servaient à transmettre la vidéo. Mais comme tout était onde, toute distortion à l'audio se répercutait sur la vidéo et vice versa...

Ici plus haut, j'ai "étalé" mon image sur "10 secondes de largeur", maiis si si dans un audio de très haute qualité je met une image toute les 1/24 de seconde, vous aurez une vidéo directement dans votre audio...

Pour la télévision analogique couleur, c'est le même principe mais en un peu plus compliqué.

Afin d'assurer la compatibilité avec les téléviseurs noir et blanc, majoritaires, rien n'a été changé à l'onde perçue par ceux-ci. La couleur venait d'une seconde onde, modifiant la pemière, pour restituer les couleurs.

Mais une télévision transformait alors ce flux en trois ondes distinctes correspondant aux trois couleurs primaires :

Rouge Vert Bleu

qui une fois réunies donnent :

Donc, ce que vous voyez là, c'est à l'origine une image de Willy en 300x240px puis qui est passée par :

  1. Python : On divise l'image couleur en trois images noir et blanc différentes en fonction des trois couleurs primaires : rouge, vert et bleu.
  2. Python : Chacune de ces trois images est transformée en audio
  3. audacity : On applique des effets à ces audios
  4. ffmpeg : On génère le spectrogramme de chaque audio
  5. Python : On recompose une image en attribuant chacune des trois images à un canal de couleur

Mais si vous paramétrez mieux et augmentez les qualités, il est tout à fait possible d'avoir, de cette manière, un résultat bluffant :

Image d'origine
Décomposition Rouge Vert Bleu
Onde générée
Recomposition

Formats destructifs

Ce que fait un format destructif est de supprimer l'inutile en fonction de ce que ce format considérera comme inutile ou inutile selon la manière dont vous l'aurez configuré.

Le premier format destructif utilisé massivement a été le MP3 mais a amené à une multiplication des codecs pour le même format.

L'origine de plusieurs codecs pour un même format est principalement le problème du droit d'auteur.

MP3

Lorsque Fraunhofer a créé le MP3, il s'agissait d'un format propriétaire et il fallait payer une licence pour obtenir les outils pour lire et encoder en MP3.

Un groupe de développeur a alors créé son propre codec, LAME, toujours maintenu et offrant une bien meilleure qualité. Mais une très grosse entreprise ne peut pas utiliser un codec libre et open source car celui est fourni sans garantie. Donc on paye Fraunhofer.

C'est ce qu'a fait Microsoft pour son Windows Media Player. Il était possible d'encoder en WMA et en MP3. Une piste encodée en WMA donnait mieux qu'en MP3, mais c'est car Microsoft avait demandé une version modifiée à Fraunhofer afin de rendre ses outils un peu plus rapide au détriment de la qualité. Ils cherchaient ainsi à imposer leur format WMA via des partenariats qui n'ont pas duré longtemps.

Nous pouvons donc avoir le même MP3, faisant exactement la même taille, au même bitrate, mais avec trois qualités différentes.

En gros, il est considéré que si l'on encode avec Windows Media Player avec un bitrate de 128, cela équivaut à un encodage Fraunhofer avec un bitrate de 96. Là où un encodage LAME 128 équivaut à un Fraunhofer 160.

L'avantage du MP3 est son universalité. Même si un autoradio récent peut lire des formats plus récents, il lira le quand même le MP3.

Fraunhofer et LAME n'ont pas fait évoluer leurs encodeurs de la même façon. Fraunhofer s'est concentré sur les possibilittés, en ajoutant par exemple la possibilité de réaliser un MP3 5.1 (via une extension payante), là où LAME s'est concentré sur la qualité d'écoute et ne permet que le mono ou la stéréo.

WMA

Microsoft a décidé de créer son propre format audio afin de proposer une chose que le MP3 n'avait pas prévu : les DRM, ou la gestion des droits d'auteurs, permettant à l'éditeur d'interdire la copie ou encore de mettre une date d'échéance après laquelle le fichier ne pouvait être lu.

Ces DRM n'ont pas tenu longtemps car ont posé de très nombreux problèmes :

Tout album rippé en WMA avait des DRM liés à la machine utilisée pour le rip, sans qu'on ne le sache et une simple mise à jour Windows pouvait parfois rendre les fichiers illisibles, imposant un nouveau rip...

De plus, Windows Media Player, dès que l'on voulait synchroniser ses audios sur un lecteur portable, convertissait d'abord la piste en WMA pour lui ajouter des DRM... Si vous changiez de lecteur portable et y mettiez votre carte mémoire, aucune piste ne pouvait être lue...

Il y a eu un nombre incroyable de problèmes qui ont amené Microsoft à faire marche arrière, totalement supprimer l'application de DRM et proposer un outil permettant de supprimer les DRM des fichiers WMA protégés...

Enfin, cette manière de fonctionner enfreint les lois de certains pays, comme celle vue plus haut : le droit à la copie privée.

AAC (MP4, M4A)

Le AAC est également une création de Fraunhofer, démarrée très tôt (1997), commandée par un conglomérat d'entreprises, et est donc un format propriétaire vu comme l'évolution du MP3, utilisé par YouTube Music et Spotify (interface Web) ainsi que par Apple.

Bien que Fraunhofer annonce une amélioration de qualité par rapport au MP3, elle n'est vraie qu'avec le codec Fraunhofer du MP3. Pas avec LAME qui, à bitrate égal, offre une meilleure qualité.

Néanmoins, Fraunhofer s'orientant vers une utilisation vidéo et non audio de par le multi-canal, c'est devenu un standard utilisé par Netflix, Disney et la majorité des plates formes de streaming videos. Celles-ci proposent toujours des systèmes beaucoup plus évolués, tel que le Dolby 5.1, le Dolby TrueHD ou encore le Dolby Atmos, mais pour ça, il faut un matériel que la très très grande majorité des gens n'a pas et si on ne l'a pas, ce sera du AAC.

Toujours est-il que si l'on a la possibilité d'encoder en MP3 avec LAME, cela vaut mieux que du AAC et, pour la vidéo, si l'on a la possibilité de passer par Vorbis, qui a aussi continué à évoluer, cela vaut mieux également.

Les principaux avantages que Fraunhofer met en avant son :

  • Meilleure qualité que le MP3 Fraunhofer
  • Multi-canal (jusqu'à 48)
  • Absence de gap (micro-coupure entre pistes)

Mais il faut savoir que LAME de son côté a également fait évoluer son codec pour qu'il soit "gapless". Un album encodé avec LAME est donc tout autant gapless que le AAC.

Vorbis (OGG, OGA)

En 2002, xiph décide de créer un format et un codec totalement libre et open-source offrant :

  1. une meilleure qualité que le MP3 et le AAC
  2. jusqu'à 255 canaux audios
  3. absence de gap

Ce codec ne s'est jamais vraiment imposé pour la musique bien que ce soit le codec utilisé par Spotify (application) et SteamOS pour le streaming.

Il est également fortement utilisé par l'industrie du jeu vidéo et est le format de base pour les audios de la majorité des distributions Linux.

OPUS

L'OPUS est un cas à part car il n'a pas du tout été créé pour la musique ou la vidéo.

Bien que sous licence libre, il est créé par un groupe de grosses entreprises voulant créer le meilleur codec pour la communication audio afin d'obtenir, au plus bas débit, la meilleure qualité possible pour la voix.

Ils ont alors demandé à xiph...

C'est le codec utilisé par Facebook Messenger, Google Meet, What's App, Discord, Zoom...

Mais en voulant absolument améliorer la qualité à très bas débit, ils ont créé le meilleur codec audio pour la musique à haut débit, surpassant tous les autres formats, tout en diminuant drastiquement la taille des fichiers. Et en plus de ça, ce codec est déjà présent partout vu qu'utilisé par les logiciels cités plus haut. N'importe quel navigateur internet actuel peut lire un fichier OPUS.

Depuis peu, YouTube Music passe par OPUS pour l'encodage de la musique.

Tests ABX

Ces comparatifs sont des tests réalisés à l'aveugle par des experts en partant de la méthode suivante :

  • A : Version créée avec un certain codec
  • B : Version créée avec un autre codec
  • X : Une des des versions A ou B

On demande à plusieurs personnes de faire ce test, avec un très grand nombre d'échantillons.

Si après un grand nombe, les testeurs ont clairement reconnu à quelle version correspondait X, c'est qu'il y a une différence de qualité. Sinon c'est qu'il n'y en a pas.

Il faut donc savoir que dans la plus haute qualité de chaque format, les tests ABX montrent qu'il ya très peu de différences et que plus de 99% des gens ne sont absolument pas capables de les entendre.

MP3, AAC, OGG, OPUS... Tous à leur plus haute qualité ont une qualité quasi équivalente au FLAC et donc une qualité d'écoute équivalente.

Ce n'est pas forcément car un testeur a une "meilleure oreille" qu'il sera capable de discerner les différences entre deux formats. Cela vient aussi du fait que lorsque l'on sait comment fonctionne un codec, on sait à quels moments d'une piste il y a plus de "chances" de retrouver une différence.

Il existe des tests en ligne mais il faut les réaliser dans de bonnes conditions.

Raison d'être de chaque format

La raison est le streaming.

Lorsque je stream ma musique depuis mon serveur, je peux le faire de deux manières :

  1. Je lis directement le média : mais cela peut prendre beaucoup de bande passante si on lit des FLAC et est donc intéressant lorsque connecté à un wifi.
  2. Je convertis le média sur le serveur pendant la lecture : cela permet d'obtenir une version plus légère, par exemple en cas de trajets.

La conversion se fait en AAC (et bientôt en OPUS) car ces formats ont un gros avantage sur le MP3, que ce soit celui de Fraunhofer ou de LAME : ils sont de bien meilleure qualité à faible et très faible bitrate et sont présents dans presque tous les supports.

Si l'absence de gap est importante pour ces formats, ce n'est pas pour permettre la lecture d'un album sans micro-pauses entre les morceaux, c'est car le streaming l'impose de par sa méthode de foncionnement.

Ce que fait un serveur musical lorsque l'on demande la conversion, c'est diviser la musique que vous écoutez et allez écouter en blocs de x secondes, chacun converti en plusieurs bitrate et effacé après lecture.

Le serveur analyse la vitesse de votre connexion et enverra la qualité la plus à même de ne pas faire sauter le morceau si vous avez une perte de connexion ou une connexion très lente.

Ainsi, si sur la route la connexion est catastrophique, la musique sera de moins bonne qualité mais ne s'arrêtera pas.

Ce qui compte donc n'est pas d'avoir le meilleur résultats aux tests ABX à haut bitrate mais à bas bitrate.


Formats particuliers

Il existe deux formats très particuliers :

  1. Le MIDI : qui avant d'être un format audio est un protocole de communication entre instruments éléctroniques permettant de dire quelle note doit être utilisée, avec quelle vélocité et avec quel instrument.
  2. Le Module : un format insérant des petits échantillons audio mais fortement modifiables afin de créer une musique. Principalement utilisé pour la techno et la dance dans les années 90.

MIDI

Le format MIDI n'est pas utilisable dans une audiothèque car ce format ne contient que des notes, des informations sur les notes (vélocité, longueur...) et un code indiquant à quel instrument ces notes sont attribuées.

Sur ordinateur, les cartes sonores font qu'une synthèse FM est attribuée à chaque instrument et il est donc possible de lire un MIDI avec des instruments simulés mais la qualité ne sera pas au rendez-vous.

Cette simplicité permet néanmoins à ce format d'être utilisé, entre autres, sur les "pianos automatiques", de vrais pianos qui, quand ils ne sont pas utilisés, permettent d'utiliser un MIDI pour jouer les notes automatiquement.

Mais elle permet aussi, dans un logiciel ou sur un synthétiseur, d'attribuer des SoundFont à un MIDI qui se chargera alors d'attribuer des échantillons sonores à chaque instrument.

La SoundFont (format de fichier SF2) est un ensemble de fichiers, en général de très haute qualité dans un format audio brut sans compression (WAV ou PCM), attribués aux différentes notes.

Une même note peut avoir plusieurs échantillons en fonction de la vélocité, ce qui est particulièrement utilisé pour les instruments claviers comme le piano, le clavecin, l'orgue...

Si vous devez transformer un MIDI en format audio, il faut donc voir quels instruments sont présents dans la composition.

Par exemple, pour une oeuvre au piano, il vaudra mieux choisir une SoundFont de 100Mo avec uniquement le piano présent, qu'une SoundFont plus connue, avec tous les instruments, de 600Mo.

Les SF2 sont très nombreux, il y a des passionnés qui passent leur temps à créer des SoundFont juste pour un piano qui, selon eux, rend bien.

Lors de la conversion en audio, il est également possible de créer une variable aléatoire modifiant la vélocité et le moment où la note est frappée afin de rendre le résultat plus "humain".

La SoundFont est à choisir en fonction du cas. Par exemple, si vous voulez avoir une copie haute qualité de la bande son de Doom, tel que dans vos souvenirs de joueurs sur une carte son Sound Blaster, il y a une SoundFont "Creative.sf2".

Transformer un MIDI en format audio n'est pas l'opération la plus simple qui soit.

Le plus simple est de passer par LMMS (Linux Multi Media Studio), disponible sur toutes les plates-formes, charger une SoundFont, facilement trouvables sur Google, et créer son audio.

LMMS propose un export en WAV, qu'il faudra alors retransformer en FLAC, par exemple avec Audacity ou Handbrake.

Attention : Les logiciels musicaux gérant le MIDI n'utilisent pas les échantillons de la SoundFont lorsque vous jouez votre morceau en cours d'édition. Ils utilisent des versions simplifiées et le résultat entendu ne sera donc pas le résultat final, qui doit être entièrement calculé. C'est le même principe que pour les images de synthèses proposant une prévisualisation simplifiée mais imposent un rendu très long pour obtenir le résultat final, de bonne qualité.

Modules

Les modules sont un type de fichier, né dans les années 90, cherchant à mélanger le MIDI avec ce qu'allaient proposer les SoundFont.

C'est un format créé par les Demo-Makers, des développeurs cherchant toujours à faire au mieux avec le moins de place et de ressources possible.

Il y a eu à l'époque un nombe incroyables de musiciens ayant utilisés les modules mais beaucoup ont arrêtés et ces modules sont les seuls formats qu'il reste.

Plusieurs formats se sont imposés et sont maintenant gérés par tous les logiciels : MOD, XM, S3M, IT...

Le logiciel de référence pour gérer ces formats et les transformer en audio est OpenMPT.

Celui-ci permet un export en WAV et en FLAC.

16, 24 ou 32bits ?

LMMS et OpentMPT vous proposeront chacun de pouvoir monter jusqu'à 32bits.

Le fait de jouer des sons peut être considéré comme une modification audio, comme vu plus haut. Il faut donc sauver en FLAC 24bits.


CBR et VBR

Un fichier MP3 est divisé en frames contenant chacune 1152 échantillons sonores. Cela correspond à une durée de ± 24ms si fréquence de 48Khz et ± 26ms si fréquence de 44.1Khz.

Il existe deux moyens de coder la musique :

  1. Le CBR : pour "Constant BitRate" qui modifie l'ensemble de la piste
  2. Le VBR : pour "Variable BitRate" qui modifie chaque frame

Le CBR est très simple à calculer :

  • D=Durée en secondes
  • B=Bitrate en kbps
  • K=8 : pour passer de Kb en Ko
  • M=1024 : pour passer de Ko en Mo
  • T=Taille finale en Mo

Donc : T=D×BK×M

Donc : D=T×M×KB

Par exemple, si vous avez un morceau de 4 minutes 27, avec bitrate de 320 et une fréquence de 44.1Khz, sa taille sera de : D=267×B=320K=8×M=1024=854408192=T10,429Mo

Ce que feront les lecteurs audios est très simple :

  • a=Taille du fichier en Kb
  • b=Bitrate en Kbps indiqué au début du fichier
  • D=Durée en secondes

donnant alors : a=85440b=320=D=267, donc une piste de 267 secondes, soit 4 minutes 27.

Mais le problème avec le VBR est que chaque frame ayant son propre bitrate, en prenant le premier bitrate, ce ne sera que celui de la première frame. Si la première frame a un bitrate de, par exemple, 278, la durée suivante sera calculée : a=85440b=278=D=378 soit 6 minutes et 18 secondes.

Le VBR n'ayant pas été créé par Fraunhofer, bien que pouvant être implanté dans son format, tous les lecteurs utilisaient ce calcul de durée et affichaient une mauvaise durée.

Le VBR a été introduit par LAME, les grandes marques ne "pouvaient" pas donc pas le gérer puisque passaient par un accord financier avec Fraunhofer pour offrir la lecture du MP3. Cela jusqu'à ce que Fraunhofer introduise son propre sysème de VBR, différent de celui de LAME, mais personne n'allait changer son matériel : tout le monde a continué à encoder en CBR, ce qui continue encore maintenant alors qu'il n'y a plus aucune raison sauf si vous avez un autoradio d'il y a 20 ans.

Les nouvelles versions ont modifié la méthode de calcul afin de ne plus passer par le bitrate :

  • f=Nombre de frames
  • e=1152, soit le nombre d'échantillons par frame
  • q=Fréquence en Hz
  • D=Durée en secondes

Pour notre piste, nous avons donc : f=10222×e=1152q=44100=D=267,023267 soit 4 minutes 27 secondes...

Actuellement, un MP3 en VBR dans sa plus haute qualité est très largement supérieur à un MP3 CBR 320.

Le FLAC est d'office en VBR, mais les formats destructifs permettent tous le choix entre CBR et VBR, bien que pour ceux-ci le VBR soit toujours la norme par défaut puisque tous les lecteurs gèrent le calcul de la durée de ces formats.

Vérifier la qualité

Il n'est pas rare de tomber sur des FLAC mal enregistrés, ce qui peut se voir grâce à une analyse spectrographique. Cela faisant qu'à choisir entre un FLAC mal enregistré et un MP3 320, il vaut mieux choisir le MP3.

Je vais partir d'un FLAC que j'ai en 24bits puisque j'ai l'original de l'album So de Peter Gabriel. Don't give up pèse 136,806 Mo pour une durée de 6 minutes 34.

Attention, les analyses suivantes sont là pour se donner une idée de ce que l'on est censé retrouver dans un MP3 et de quelle manière se fait une coupure das un MP3.

Si vous croisez le spectrogramme d'un OPUS ou d'un AAC, il sera fort différent et il faut donc comparer les spectrogrammes en fonction du format. Par exemple, le spectrogramme d'un AAC semble plus proche du FLAC mais ce format laisse passer plus de hautes fréquences, surtout à bas débit, pour les encoder avec peu de bits, ce qui donne artefacts, bruit et distortions là où sur un OPUS on verra une coupure aussi nette que sur un MP3 sauf que le filtrage des données inutiles sera bien plus efficace.

Format Infos Poids Spectrogramme
FLAC 24bits 136Mo
FLAC 16bits 38,4Mo
MP3 CBR

320

15,37Mo
MP3 VBR

Q10

12,87Mo
MP3 CBR

256

12,3Mo
MP3 CBR

192

9,227Mo
MP3 CBR

160

7,689Mo
MP3 CBR

128

6,152Mo
OPUS Auto 5,861Mo
OPUS Max 24,77Mo
AAC CBR

320

15,35Mo

La dynamique

Il s'agit de l'écart en décibels entre les sons les plus bas et ceux les plus forts. Plus cet écart est grand, plus la dynamique est grande.

On peut réduire la dynamique sans diminuer la qualité (dans une certaine mesure) de l'audio.

Mais ce qu'apporte la dynamique est une "qualité d'écoute", indépendante de la qualité même de l'audio.

La "Guerre du Volume" (The Loudness War)

Je vous invite à lire l'article Wikipédia dédié à cette "guerre".

Pour résumer, des années 1980 à 2000, l'industrie de disques, les stations de radios et de télévision... ont eu tendance à réduire la dynamique d'une musique afin d'augmenter son volume et le "normaliser", jusqu'à ce qu'on mette le hola en imposant un volume maximal et, donc, une limite à la compression de la dynamique.

Les principales raisons sont :

  1. On ne peut dépasser les capacités du média
  2. Aucun artiste ne veut "sonner moins fort" que les autres
  3. De plus en plus de gens écoutent la musique pour couvrir le son ambiant ou sans réellement l'écouter
  4. Les appareils portables utilisés dans des environnements bruyants ne permettent pas d'apprécier une large dynamique
  5. L'informatique propose des méthodes pour le faire

Contrairement à ce que l'on pourrait croire, les nouvelles ré-éditions d'anciens albums ne sont pas forcément de meilleure qualité, c'est la dynamique qui a été diminuée afin de fournir une meilleure sensation de volume.

Voici l'analyse de l'évolution du morceau Something des Beatles, réalisée par des audiophiles, au cours des quatre éditions CD effectuées pendant cette période :

Ce problème de dynamique est également une des raisons pour lesquelles il faut, idéalement, éviter les compilations : c'est tout un tas de morceaux n'ayant rien à voir les uns avec les autres mais auxquels on aura appliqué le même traitement afin qu'ils aient un volume équivalent, au détriment de leur dynamique.

Le pire seront les compilations de musique classique mélangeant plusieurs compositeurs, chaque oeuvre ayant en principe besoin d'une grande dynamique à elle seule.

Par exemple, sur "Je n'aime pas le classique", si on prend le Carmina Burana ou un extrait du Requiem de Mozart, ils ont tous les deux une dynamique de 7, ce qui est très bas. Si je les prends séparémment, chaque morceau sur l'album du compositeur, ils ont tous les deux une dynamique de 12, ce qui est beaucoup mieux.

C'est la dynamique qui rend des labels comme Deutsche Grammophon célèbres car ils cherchent à proposer la meilleure qualité possible, sans jouer sur la dynamique, quitte à diviser une oeuvre pouvant tenir sur un seul CD en plusieurs si les différentes parties de l'oeuvre méritent un mastering différent.

Ce à quoi toute cette histoire de dynamique amène aussi est le fait qu'il y a un intérêt aux singles puisque, pour un morceau, même le plus "bête" des morceaux que l'on pourrait trouver sur n'importe quelle compil, le single aura toujours une meilleure dynamique que la version compil.

Les compils ne sont toujours que de bonnes playlists. Il vaut donc mieux, si vous voyez une bonne compil, en faire une bonne playlist à partir de bons enregistrements.

La dynamique est une des raisons qui fait que certains préféreront un vinyl, même usé, à un format numérique : la dynamique est beaucoup plus grande et reste, même à l'usure.

Vérifier la dynamique

Il existe plusieurs méthodes :

  1. MP3Gain : Le problème de ce logiciel est qu'il ne fonctionne qu'avec les MP3, mais il indique s'il y a une distortion due à la réducation de la dynamique.
  2. Foobar + DR-Meter : Donne directement l'écart de manière chiffrée
  3. Audacity : Si la piste prend trop de place ou que plusieurs pics atteignent le sommet, c'est qu'il y a compression dynamique.

Comme l'exemple du dessus part de Something des Beatles, je vais prendre trois versions de l'album Abbey Road :

  1. Version CD de 1983
  2. Version CD de 1987
  3. Version CD de 2019 qui, suite à la "fin de la guerre du volume" a le meme mastering qu'en 2000.

Voici la plage dynamique de l'album :

Nom de la piste 1983 1987 2019
Come Together 12 9 8
Something 12 9 8
Maxwell's Silver Hammer 13 11 10
Oh! Darling 13 10 8
Octopus's Garden 13 11 8
I Want You (She's So Heavy) 12 9 7
Here Comes The Sun 11 9 9
Because 11 10 10
You Never Give Me Your Money 11 9 11
Sun King 11 10 10
Mean Mr. Mustard 12 10 9
Polythene Pam 11 9 8
She Came In Through The Bathroom Window 11 9 8
Golden Slumbers 12 10 9
Carry That Weight 11 9 9
The End 11 9 9
Her Majesty 11 11 9

Et comme pour le test réalisé plus haut, si on ouvre les trois versions du morceau Something dans Audacity :

Année Waveform
1983
1987
2019

Je suis également tombé sur un rip du vinyl sorti en 2012. La dynamique était exactement la même que la version CD de 1983.

Analyse "visuelle"

Si on regarde l'évolution on peut "voir" comment la compression est effectuée.

Ici, cela se voit à la toute fin du morceau, surtout sur la piste "de droite" (celle du bas) de chaque version. Dans la version originale la courbe finale est convexe, dans sa dernière version elle est concave :

Mais, en très gros, si vous voyez beaucoup de concave sur une piste : ça pue...

Musique moderne

Certains albums modernes sont connus pour avoir un mastering catastrophique et une dynamique surcompressée.

C'est par exemple le cas de AC/DC avec son album Black Ice : sur 15 pistes, 4 ont une plage dynamique de 5 et 11 de 6.

On voit le problème simplement en ouvrant les pistes dans Audacity. Voici les trois premières :

Piste Waveform
1
2
3

Dans de tels cas, la compression ressemblerait à ça :

On peut voir aussi la surcompression sur le spectrogramme. Voici celui de la premièer piste :

Back in Black est également un bon exemple de AC/DC montrant l'évolution exagérée de la dynamique :

Nom de la piste 1980 1994 2003
Hells Bells 13 9 8
Shoot To Thrill 13 9 7
What Do You Do For Money Honey 13 9 8
Givin The Dog A Bone 14 9 8
Let Me Put My Love Into You 13 9 7
Back In Black 13 9 8
You Shook Me All Night Long 13 9 8
Have A Drink On Me 13 9 8
Shake A Leg 13 8 7
Rock And Roll Ain't Noise Pollution 14 10 8

Evolution de Hells Bells :

Année Waveform
1980
1994
2003

Résoudre le problème des dynamiques différentes

Ces dynamiques différentes amènent à des variations de volume entre les morceaux.

Un logiciel a été créé, ReplayGain, analysant l'audio et créant alors différents tags permettant aux logiciels la normalisation du volume sans détériorer la dynamique. Maintenant tous les logiciels utilisent ces tags :

  1. Track Gain : Modificateur à appliquer pour avoir une piste normalisée
  2. Album Gain : Facultatif. Si présent et qu'on lit en mode lecture d'album (non shuffle), c'est ce modificateur qui sera appliqué (utile pour classique)
  3. Track Peak : Doit, en principe se situer entre 0 et 1. Si supérieur, c'est que le mastering a forcé et qu'il y a légère distortion pour cette piste.
  4. Album Peak : Idem mais pour tout l'album.

Les deux premiers tags sont utilisés par les logiciels, les deux seconds sont à titre informatif mais permettent de directement indiquer dans le logiciel la présence d'une distortion.

De nouveaux algorithmes se sont créés afin de calculer plus fidèlement ces valeurs. Le meilleur est actuellement le "EBU R128", très rapide, auquel on peut faire appel via Foobar.

Si nous reprenons AC/DC avec Back in Black :

Version Album Gain Album Peak
1980 -1.81 dB 0.941061
1994 -8.34 dB 1.073083
2003 -9.71 dB 1.093027

Les versions japonaises

Ces versions sont partuclières car les japonais accordent une grande importance à la qualité de la dynamique. Le mastering japonais sera donc en général de meilleure qualité que le mastering US ou EU.

Black Ice de AC/DC a une version japonaise. On passe à 2 pistes avec une plage dynamique de 5 et 13 de 6.

Quoiqu'il arrive, si vous croisez une version officielle japonaise d'un album, il y a de plus grandes chances d'avoir une très bonne qualité.

Les vinyls

Si on cherche à compresser le son sur un vinyl tel qu'il est possible de le faire en numérique, ça ne marche pas car cela fait sauter l'aiguille.

Dans un cas comme Black Ice, la seule solution pour l'écouter convenablement est donc le vinyl, seule édition avec un AlbumPeak inférieur à 1 et une plage dynamique de 10 et 11...

Cela se voit également dans Audacity où j'ai ouvert les trois mêmes pistes que plus haut :

Vinyl

Si on regardre le spectrogramme de la première piste de la version vinyl, on voit que les pics sont plus propres :

Dans le cas de Black Ice ce n'est pas un problème puisque le vinyl est récent et a directement été rippé par un audiophile.

C'est beaucoup plus embêtant pour des ré-éditions de vieux groupes pour lesquels il n'y a plus le choix qu'entre une version vinyl usée ou un format numérique compressé.

Les tags

Une des choses qui a rendu le MP3 populaire est l'utilisation de tags.

Les tags sont des informations textuelles ou numériques, incluses à chaque fichier MP3. Celles-ci permettent au logiciel que vous utilisez de vous présenter vos fichiers en ne devant pas uniquement se baser sur le nom de fichier.

  • ALBUM : Nom de l'album
  • TITLE : Titre de la piste
  • ARTIST : Artiste de la piste
  • COMMENT : Commentaires sur la piste
  • YEAR : Année de parution
  • GENRE : Genre musical.

Ceux-ci ne sont pas une création officielle mais une sorte de "hack" créé par Eric Kemp qui voulait voir ces données affichées et qui a remarqué qu'il était possible de modifier les MP3 pour les y intégrer.


Les formats de tags

ID3

Kemp a établi ces tags de base sous le format ID3.

Dans sa première version, le nombre de caractères était limité pour chaque zone et il n'était pas possible d'utiliser des caractères spéciaux ou accentués.

Il y a eu une version ID3v1.1, mais celle-ci n'a apporté que la possibilité d'indiquer un numéro de piste car la majorité des lecteurs lisaient les fichiers dans l'ordre alphabétique.

La vraie évolution a été la création du ID3v2, toujours utilisé aujourd'hui dans sa version ID3v2.3, qui permet des tags à longueur variable, étend le nombre de tags par défaut de manière inimaginable, absurdre et pensée avec les pieds et permet d'insérer tout type de données, y compris des images ou des paroles synchronisées.

Mais attention, les choses sont beaucoup plus compliquées que ça...

Le "problème" ID3

En fait, les tags ALBUM, ARTIST, YEAR, etc... ne sont pas des tags, ce sont des noms attribués aux réels tags qui sont des codes de quatre caractères.

Tous les logiciels se sont plus ou moins accordés pour donner le même nom aux différents tags, donc :

  • TALB = %ALBUM%
  • TIT2 = %TITLE%
  • TPE1 = %ARTIST%
  • TYER = %YEAR%
  • TDAT = %DATE%
  • TCON = %GENRE%
  • COMM = %COMMENT%
  • TBPM = %BPM%
  • USLT = %LYRICS% ou %UNSYNCEDLYRICS%

Lorsqu'un nouveau tag, par exemple %GENRE2%, est créé dans MP3tag, ce qui est réellement créé dans le MP3 est :

  • TXXX:Tag=Valeur donc TXXX:GENRE2=Le genre

Donc, en réalité, nous nous retrouvons avers plusieurs entrées TXXX, ayant chacune une description qui devient le tag et une valeur qui devient la valeur de ce tag.

Mais un problème est que Kemp a créé énormément de tags, donnant parfois peu de libertés pour sortir du modèle imposé.

Par exemple, si le titre de la piste est TIT2 et non TIT1, c'est car Kemp avait prévu les choses comme ça (exemple) pour une piste :

  • TALB : Le meilleur de Beethoven
  • TIT1 : Symphonie n°9
  • TIT2 : Presto
  • TIT3 : Mouvement 2

APE/Vorbis Comment

Ce système de tag vient d'un format de fichier, propre à un lecteur audio, Monkey's Ape, qui permettait d'obtenir une copie de ses CDs, au format APE, qui était non destructif, comme le FLAC.

Celui-ci se base sur le principe créé par xiph pour le OGG et le FLAC, puis l'OPUS : le Vorbis Comment.

C'est simple : il n'y a plus de code et le nom de la variable est la variable. La liberté absolue.

Il est considéré comme plus intéressant et évolué que le ID3, mais vu que la plupart des audiophiles sont également passés à d'autres formats, comme le FLAC, il n'est pas le plus utilisé et le plus suivi par les différents logiciels et, surtout, n'est pas du tout compatible avec les anciens lecteurs et même Windows.

Néanmoins, le simple fait que ce soit un "meilleur système" fait qu'il est parfois conseillé alors que ne constitue pas du tout un standard.

Quel format de tag choisir pour les MP3 ?

Pour les MP3, le mieux est le ID3.

Attention, un MP3 peut avoir plusieurs types de tags en même temps et cela peut être très problématique car il est compliqué pour un logiciel de mélanger les deux.

Avantages et désavantages du APE/Vorbis Comment par rapport au ID3

Il est beaucoup plus facile pour un logiciel de lister les tags présents. Il est également beaucoup plus facile de gérer les tags ayant plusieurs valeurs.

En Vorbis Comment, vous pouvez créer trois fois le tag ARTIST s'il y a trois artistes.

Mais cela amène aussi à un gros foutoir puisque cette absolue liberté amène à une totale anarchie. Beaucoup sont maîtres dans l'art d'encoder, mais certainement pas de documenter convenablement le résultat obtenu.

Par exemple, nous verrons plus bas des tags comme ORIGYEAR ou DISCNUMBER qui indiquent bien "ce qu'ils sont" et que l'on retrouve donc dans les FLAC.

Mais comme ces deux noms de tag n'étaient pas les réels mais ceux donnés par certains programmes, nous retrouverons aussi dans les FLAC : ORIGINALYEAR et PARTOFSET pour le DISCNUMBER. Mais aussi on voit apparaître un tag DISCTOTAL, où l'on retrouve le nombre de CDs de l'album...

Le code USLT, utilisé pour les paroles non synchronisées est maintenant parfois retrouvé tel quel. Mais parfois aussi UNSYNCEDLYRICS ou UNSYNCED LYRICS...Mais aussi parfois LYRICS...

La plupart des lecteurs se sont adaptés et analyseront les différents tags existants, connaissant la pluart et une analyse intelligente permettant de deviner de quelle donnée il s'agit. Mais cela amène à vite avoir énormément de tags à vérifier car contenant parfois une information intéressante..

Les tags courants et leur gestion

Il existe toute une série de tags utilisés par les logiciels car directement proposé par le ID3 mais également quelques autres qui se sont imposés afin de fournir des informations plus complètes.

Enfin, la plupart des logiciels acceptent maintenant des valeurs multiples pour certains tags. Chaque valeur est séparée par un "caractère d'échappement", en général le point virtule ou \\ .

Le point virgule est plus facile à gérer, mais s'il y a un point virgule dans un nom, par exemple dans les artistes en Classique, cela peut poser problème.

Tag ID3v2.3 Tag MP3Tag Usage Informations
Pistes
TIT2 TITLE Titre de la piste Titre affiché
XSOT TITLESORT Nom à utiliser pour trier la piste et pour les recherches
Certains artistes utilisent des caractéres spéciaux, comme Kate Bush avec π. Ici vous mettrez Pi et vous laisserez π dans TITLE.

C'est aussi le cas avec David Bowie et son morceau Black Star dont le nom officiel est ★ et non Black Star qui est le nom courant car faire une ★ au clavier, c'est difficile...

TIT3 SETSUBTITLE Sous-titre de la piste Rarement utilisé, même dans les lecteurs modernes, c'est là que nous retrouvons, par exemple, Version Longue, Radio Edit, Club Mix, etc.
COMM COMMENT Commentaire à propos de cette piste
Artistes
TPE1 ARTIST Artiste de la piste Nom affiché
XSOA ARTISTSORT Nom utilisé pour les recherches et le tri. Par exemple pour faire apparaître 4 Non Blondes à lettre F, The Who à W, 3 à T...
WOAR ARTISTURL Lien internet de l'artiste Utile pour les auto-productions
TPE2 ALBUMARTIST Artiste de l'album Nom affiché
TSO2 ALBUMARTISTSORT Nom utilisé pour les recherches et le tri.
TEXT LYRICIST Parolier Ici, sur "Que je t'aime", on mettra Gilles Thibaut
TOLY ORIGLYRICIST Parolier d'origine en cas de reprise. Par exemple ici François Villon pour Ballade des dames du temps jadis de Brassens.
TCOM COMPOSER Compositeur Nom affiché
TSOC COMPOSERSORT Compositeur
TPE3 CONDUCTOR Chef d'orchestre
TOPE ORIGINALARTIST Nom de l'artiste Indique l'artiste original en cas de reprise. Par exemple, ici viendra Leonard Cohen pour le Hallelujah de Jeff Beck.
ARTISTS Noms des artistes Vous indiquez ici le nom de tous les artistes que vous voulez voir relié à cette piste en les séparant par le caractère d'échappement.
Album
TALB ALBUM Nom de l'album Indique de quel album est tiré une piste lorsque sur une compilation
TOAL ORIGINALALBUM Nom de l'album original sur une compilation.
MVNM MOVEMENTNAME Mouvement Nom du mouvement
MVIN MOVEMENTNUMBER n° du mouvement
TRCK TRACK n° de la piste Il est conseillé d'utiliser le modèle "Piste/Nombre de pistes". Lorsque la source est une K7 audio, on voit en général A et B suivi d'un nombre.
TPOS DISCNUMBER ou
PARTOFSET
n° du disque Il est conseillé d'utiliser le modèle "Disque/Nombre de disques".
TPUB PUBLISHER Producteur de la version
Dates Ces tags sont un des plus gros foutoirs que l'on peut retrouver dans les tags car tout le monde l'utilise d'une manière différente.
TORY ORIGYEAR 1. Pensé Année d'origine de l'enregistrement. Par exemple : 1977 pour la 9ème de Beethoven par Karajan
2. Musique Classique Année de création de l'oeuvre : 1824
3. Courant 1 1977
TYER YEAR 1. Pensé Année de sortie de l'édition. Par exemple : 2013 pour le remaster Deutsche Grammophon
2. Musique Classique Année de l'enregistrement : 1977
3. Courant 1 2013
TDAT DATE 1. Pensé mois/jour pour indiquer la date, sans l'année, de sortie. Par exemple le 8 mars, donc 03/08 (bien entendu, aucun francophone ne respecte le mois/jour)
2. Musique Classique Date de sortie : 2013/03/08 ou juste 2013
3. Courant 1 rien.
Genre
TCON GENRE Genres Vous pouvez indiquer un ou plusieurs genres en utilisant le caractère d'échappement. Il vaut mieux utiliser le point virgule puisque historiquement, c'est celui utilisé, même par WinAMP (basiquement).
Les lecteurs modernes permettant une recherche par genre utilisent les différents genres.
cf. chapitre dédié
Paroles
USLT UNSYNCEDLYRICS Paroles Paroles non synchronisées, simple texte.
SYLT SYNLYRICS Paroles synchronisées. Ce tag utilise un format particulier. Pour les autres formats audios, cela passe par un fichier LRC à côté de l'audio.
Attention, le nom donné n'est disponible nulle part en dehors de l'analyseur d'exif : exiftool et n'est modifiable que via Kid3
MusicBrainz
MUSICBRAINZ_... MusicBrainz créé énormément de tags mais un lecteur moderne saura tous les utiliser. Elles contiennent en général des identifiants qui correspondent à des informations disponibles sur leur site.
Le but est, pour le lecteur audio, d'aller chercher facilement des informations complémentaires sur le net ne pouvant être contenues directement dans les fichiers.
ACOUSTID_... "Empreinte" du morceau Empreinte du morceau créée à partir de plusieurs critères, indépendants de la qualité.
ReplayGain
REPLAYGAIN_TRACK_GAIN Analyse dB par piste Les deux variables gain permettent aux lecteurs d'appliquer un modificateur de volume afin de le normaliser avec le reste de la liste de lecture.
Si la lecture est faite dans une playlist ou en mode shuffle, ce sera la TRACK qui sera utilisée, pour normaliser le volume avec les autres morceaux, mais vous lisez un album entier, ce sera le ALBUM qui sera utilisé pour respecter les volumes voulus par l'album.
Les Peaks sont des indicateurs permettant de voir s'il y a une distorsion effectuée lors du mastering de l'album.
Un peak doit être entre 0 et 1, s'il est supérieur à 1, c'est qu'il y a surcompression dynamique lors du mastering et qu'il vaut mieux chercher une version plus ancienne ou mieux masterisée.
REPLAYGAIN_TRACK_PEAK
REPLAYGAIN_ALBUM_GAIN Analyse dB par album
REPLAYGAIN_ALBUM_PEAK
Divers
TBPM BPM Tempo Les deux sont très utiles pour les DJs ou pour créer une playlist harmonieuse. Les algos actuels pour le calcul du tempo permettent de donner une idée, même sur des pistes ayant un BPM variable.
TKEY KEY Tonalité
AccurateRip
ACCURATERIP... Ces tags indiquent que la personne ayant encodé l'album a effectué une vérification de sa qualité en la comparant à des copies considérées comme parfaites car analysées par la communauté AccurateRIP.
Plusieurs logiciels de rip proposent l'analyse AccurateRip, comme dBPowerAmp ou Exact Audio Copy.
Attention, l'analyse s'effectue sur les données brutes rippées et ces tags n'ont un sens que dans des fichiers WAV ou FLAC.
C'est un truc d'audiophile hardcore, mais la présence de ces tags assure une très haute qualité quant au rip.

Genres

Historiquement le MP3 proposait une liste de genres parmis lesquels il fallait choisir car ce tag ne permettait que d'indiquer une valeur et non un mot. Ils ont été étendus grâce à WinAMP mais restaient assez limités et assez orienté USA... Sur 191 genres il y'en a quatre content le mot Christian et il y a un genre à part pour les "Native" :

Liste des genres disponibles
0 Blues 22 Death Metal 44 Space 66 New Wave 88 Celtic 110 Satire 132 BritPop 154 Chillout 176 Post-Rock
1 Classic Rock 23 Pranks 45 Meditative 67 Psychadelic 89 Bluegrass 111 Slow Jam 133 Negerpunk 155 Downtempo 177 Psytrance
2 Country 24 Soundtrack 46 Instrumental Pop 68 Rave 90 Avantgarde 112 Club 134 Polsk Punk 156 Dub 178 Shoegaze
3 Dance 25 Euro-Techno 47 Instrumental Rock 69 Showtunes 91 Gothic Rock 113 Tango 135 Beat 157 EBM 179 Space Rock
4 Disco 26 Ambient 48 Ethnic 70 Trailer 92 Progressive Rock 114 Samba 136 Christian Gangsta Rap 158 Eclectic 180 Trop Rock
5 Funk 27 Trip-Hop 49 Gothic 71 Lo-Fi 93 Psychedelic Rock 115 Folklore 137 Heavy Metal 159 Electro 181 World Music
6 Grunge 28 Vocal 50 Darkwave 72 Tribal 94 Symphonic Rock 116 Ballad 138 Black Metal 160 Electroclash 182 Neoclassical
7 Hip-Hop 29 Jazz & Funk 51 Techno-Industrial 73 Acid Punk 95 Slow Rock 117 Power Ballad 139 Crossover 161 Emo 183 Audiobook
8 Jazz 30 Fusion 52 Electronic 74 Acid Jazz 96 Big Band 118 Rhythmic Soul 140 Contemporary Christian 162 Experimental 184 Audio Theatre
9 Metal 31 Trance 53 Pop-Folk 75 Polka 97 Chorus 119 Freestyle 141 Christian Rock 163 Garage 185 Neue Deutsche Welle
10 New Age 32 Classical 54 Eurodance 76 Retro 98 Easy Listening 120 Duet 142 Merengue 164 Global 186 Podcast
11 Oldies 33 Instrumental 55 Dream 77 Musical 99 Acoustic 121 Punk Rock 143 Salsa 165 IDM 187 Indie Rock
12 Other 34 Acid 56 Southern Rock 78 Rock 'n' Roll 100 Humour 122 Drum Solo 144 Thrash Metal 166 Illbient 188 G-Funk
13 Pop 35 House 57 Comedy 79 Hard Rock 101 Speech 123 A capella 145 Anime 167 Industro-Goth 189 Dubstep
14 R&B 36 Game 58 Cult 80 Folk 102 Chanson 124 Euro-House 146 Jpop 168 Jam Band 190 Garage Rock
15 Rap 37 Sound Clip 59 Gangsta 81 Folk-Rock 103 Opera 125 Dance Hall 147 Synthpop 169 Krautrock 191 Psybient
16 Reggae 38 Gospel 60 Top 40 82 National Folk 104 Chamber Music 126 Goa 148 Abstract 170 Leftfield
17 Rock 39 Noise 61 Christian Rap 83 Swing 105 Sonata 127 Drum & Bass 149 Art Rock 171 Lounge
18 Techno 40 Alternative Rock 62 Pop/Funk 84 Fast Fusion 106 Symphony 128 Club-House 150 Baroque 172 Math Rock
19 Industrial 41 Bass 63 Jungle 85 Bebop 107 Booty Bass 129 Hardcore Techno 151 Bhangra 173 New Romantic
20 Alternative 42 Soul 64 Native US 86 Latin 108 Primus 130 Terror 152 Big Beat 174 Nu-Breakz
21 Ska 43 Punk 65 Cabaret 87 Revival 109 Porn Groove 131 Indie 153 Breakbeat 175 Post-Punk

Le principal problème était qu'il n'était pas possible d'assigner plusieurs genres ou d'en créer de nouveaux.

Mais ça avait l'avantage de pouvoir être affiché différement sur chaque lecteur. Si le genre est 32, on affiche Classical en anglais et Classique en français...Ou si le genre est 185, nous verrons en français "Nouvelle vague allemande"...

Maintenant que cette zone est un texte, chacun peut y mettre ce qu'il veut. Un francophone écrira Classique et un anglophone écrira Classical.

La gestion des genres est un enfer pour beaucoup de logiciels lorsque ceux-ci sont censés se baser sur ceux-ci pour gérer une médiathèque.

Afin de permettre le multi-genre, les lecteurs modernes utilisent l'échappement point-virgule pour séparer les genres.

Mais il suffit que deux genres soient écrits de manière différentes sur différents morceaux pour augmenter le nombre de genre.

Mon idéal

Selon moi, il faudrait passer par un système binaire, proche du système originel, avec des genres imposés, mais mieux pensés, beaucoup plus nombreux.

Si nous regardons la page Wikipedia sur la liste des genres, ils parlent de plus de 700 styles différents. Si nous allons voir la page en anglais, c'est encore plus.

Mais nous pouvons voir que la majorité sont des noms composés et qu'en général nous avons un préfixe ou suffixe et un genre.

Par exemple, simplement à la lettre A, nous retrouvons :

  • Acid Blues
  • Acid House
  • Acid Jazz
  • Acid Rock
  • Acid Techno

Ce sont cinq genres bien distincts créés en plus de leurs version "non acid".

C'est également le cas avec le "Hardcore" qui n'est pas un genre à part entière. Il peut y avoir du Punk Hardcore (D.O.A. en 81 avec Hardcore'81), du rap hardcore (rap politisé comme Ideal J avec Hardcore), de la techno Hardcore (Scooter avec Army of Hardcore), le Metal Hardcore, aussi appelé Metalcore.

Problème de téléchargement

Sites de streaming audio

Plusieurs sites, comme YouTube Music et Spotify proposent des albums complets.

Plusieurs logiciels permettent de les télécharger, mais ces albums peuvent poser plusieurs problèmes, voici une liste de problèmes que j'ai rencontré alors que je n'en ai pas téléchargé beaucoup... :

  • Les pistes ne sont pas les bonnes : Il arrive qu'un album ait une version longue sur l'album mais que ce soit la version radio courte que l'on retrouve.
  • Albums incomplets : Ces platesformes doivent obtenir les droits pour diffuser, et il arrive qu'ils ne les aient pas. Mais parfois juste sur une piste et non un album entier. Donc l'album apparaîtra comme complet, avec une nouvelle numérotation, mais avec une piste manquante.
  • Qualité : bien que l'on puisse charger en MP3 320 et que maintenant YouTube Music passe par OPUS, quoi qu'il arrive, il y a une double compression. De plus, certains albums sont de simples vidéos YouTube mais dont on ne voit pas la vidéo et dont la qualité audio est encore moins bonne.
  • Album complet composé de plusieurs sources : Le problème que cela amène est qu'une fois chargées, ces pistes n'ont pas le même gain, des dynamiques différentes et qu'il peut y avoir des écarts de volumes entre certaines pistes.
  • Album mal composé : L'album est complet, il y a toutes les pistes, sauf une qui n'est pas la bonne. Immaginons un chanteur qui aura chanté "Je l'aime à mourir" sur un album et "Je l'aime à la folie" sur un autre, les deux seront intervertis.

Workflow

Logiciels

Il n'existe pas de logiciel réalisant toutes les opérations en une fois et il faut donc passer par plusieurs, tout en ayant besoin d'une bonne compréhension de la technique.

Certains de ces logiciels sont en ligne de commande et ne sont pas les plus simples à utiliser, il y aura donc plusieurs pour lesquels il faut voir la qualité obtenue (Q) et la facilité d'utilisation (F) :

Logiciel Spectrogramme Dynamique Waveform Identification Gestion Tags ReplayGain BPM Tonalité Paroles Paroles synchros
Q F Q F Q F Q F Q F Q F Q F Q F Q F Q F
ffmpeg 7 1 3 3
Spek 7 10
FooBar 2000 10 10 10 10 5 10
Audacity 10 5 10 10 8 2
MusicBrainz Picard 10 5 10 8
MP3Tag 5 10 9 10
Mixxx 10 3 10 3
MixMeister BPM Analyzer 10 10
Kid3 9 7 10 10
WinAMP 10 5 10 5 10 5
MusicPlayer 10 8 10 8
LRCget 10 8 10 8
Python 10 1 10 1

Workflow

Première analyse

La toute première chose à faire est d'écouter la piste dans de bonnes conditions et continuer l'analyse uniquement si à l'écoute déjà la qualité est bonne.

Le plus facile est de passer par les logiciels Spek et Audacity pour analyser le spectrogramme et l'onde de la piste mais ces méthodes sont lentes.

Je vous conseille, si vous devez analyser beaucoup de fichiers de passer par les méthodes suivantes :

Spectrogramme ffmpeg

Cette méthode est beaucoup plus rapide que Spek tout en offrant un spectrogramme de bien meilleure qualité, mais il passe également par une ligne de commande et suppose que vous avez déjà installé ffmpeg.

ffmpeg -y -i piste.flac -lavfi showspectrumpic=s=1000x500 "piste_spectrogram.png"

Voici la différence entre Spek et ffmpeg :

et ffmpeg :

Waveform Python

Cette méthode a l'avantage d'être extrêmement rapide une fois mise en place et de pouvoir être facilement insérée dans un script pour un traitement par lot.

Avant tout, il faut installer les dépendances, nous partirons du fait que vous avez déjà installé Python et PIP.

Lancez la commande suivante pour installer les dépendances :

pip install numpy soundfile matplotlib

Créez un fichier wf.py dans lequel vous mettez le code suivant :

#!/usr/bin/env python3
"""
wf.py - Génère une image PNG de waveform style Audacity
Usage: python wf.py input [output.png]
"""

import sys
import numpy as np
import soundfile as sf
import matplotlib
matplotlib.use('Agg')
import matplotlib.pyplot as plt
import matplotlib.patches as mpatches
from matplotlib.ticker import MultipleLocator
import os

# ── Couleurs Audacity ────────────────────────────────────────────────────────
BG_TRACK      = '#e8e8e8'   # fond gris clair de la piste
BG_APP        = '#c8c8c8'   # fond de l'appli (entre pistes)
WAVE_FILL     = '#6680cc'   # bleu Audacity (remplissage)
WAVE_EDGE     = '#3355aa'   # bleu foncé (bord de la forme d'onde)
CLIP_COLOR    = '#ff3300'   # rouge clipping
GRID_COLOR    = '#bbbbbb'   # lignes de grille
AXIS_COLOR    = '#555555'   # texte des axes
BORDER_COLOR  = '#888888'   # bordure de piste
LABEL_BG      = '#3a3a5c'   # fond du bandeau titre (bleu nuit comme Audacity)
LABEL_FG      = '#ffffff'   # texte du bandeau titre
ZERO_LINE     = '#aaaaaa'   # ligne centrale 0

# ── Paramètres ───────────────────────────────────────────────────────────────
WIDTH_PX      = 1000
TRACK_H_PX    = 125        # hauteur par canal (px)
DPI           = 100
LABEL_H_PX    = 32         # hauteur du bandeau titre
YAXIS_W       = 0.045      # fraction de largeur réservée à l'axe Y
DOWNSAMPLE    = 16384        # nombre de colonnes pour le rendu (performances)


def build_envelope(samples: np.ndarray, n_cols: int):
    """Calcule min/max par bloc pour l'affichage efficace de la waveform."""
    n = len(samples)
    block = max(1, n // n_cols)
    cols = n // block
    trimmed = samples[:cols * block].reshape(cols, block)
    return trimmed.min(axis=1), trimmed.max(axis=1)


def draw_channel(ax, samples: np.ndarray, title: str, show_title: bool,
                 peak: float, channel_idx: int, n_channels: int):
    """Dessine un canal sur un axes matplotlib."""

    ax.set_facecolor(BG_TRACK)

    n_cols = DOWNSAMPLE
    env_min, env_max = build_envelope(samples, n_cols)
    x = np.linspace(0, 1, len(env_min))

    # ── Déterminer l'échelle Y ────────────────────────────────────────────
    # Comme Audacity : si peak <= 1.0 on fixe ylim à [-1, 1]
    #                  si peak >  1.0 on étend ylim au pic réel
    if peak <= 1.0:
        ylim = 1.0
        y_ticks = [1.0, 0.5, 0.0, -0.5, -1.0]
    else:
        ylim = np.ceil(peak * 10) / 10   # arrondi au dixième supérieur
        step = round(ylim / 2, 1)
        y_ticks = sorted(set([ylim, step, 0.0, -step, -ylim]))

    ax.set_xlim(0, 1)
    ax.set_ylim(-ylim, ylim)

    # ── Grille ───────────────────────────────────────────────────────────
    for y in y_ticks:
        ax.axhline(y, color=GRID_COLOR, linewidth=0.6, zorder=1)

    # ── Ligne zéro (plus visible) ─────────────────────────────────────────
    ax.axhline(0, color=ZERO_LINE, linewidth=0.9, zorder=2)

    # ── Lignes de clipping ±1.0 (si peak > 1) ────────────────────────────
    if peak > 1.0:
        ax.axhline( 1.0, color=CLIP_COLOR, linewidth=1.0, linestyle='--', zorder=3)
        ax.axhline(-1.0, color=CLIP_COLOR, linewidth=1.0, linestyle='--', zorder=3)

    # ── Waveform : zones clippées vs normales ─────────────────────────────
    clipped_mask = (env_max >= 1.0) | (env_min <= -1.0)

    # Remplissage global (bleu)
    ax.fill_between(x, env_min, env_max,
                    color=WAVE_FILL, linewidth=0, zorder=4, alpha=0.85)

    # Bord de la forme d'onde
    ax.plot(x, env_max, color=WAVE_EDGE, linewidth=0.4, zorder=5)
    ax.plot(x, env_min, color=WAVE_EDGE, linewidth=0.4, zorder=5)

    # Surcouche rouge sur les zones clippées
    if clipped_mask.any():
        ax.fill_between(x, env_min, env_max,
                        where=clipped_mask,
                        color=CLIP_COLOR, linewidth=0, zorder=6, alpha=0.75)

    # ── Axe Y ─────────────────────────────────────────────────────────────
    ax.set_yticks(y_ticks)
    ax.set_yticklabels(
        [f'{v:+.1f}' if v != 0 else '0,0' for v in y_ticks],
        fontsize=7, color=AXIS_COLOR, fontfamily='monospace'
    )
    ax.yaxis.set_tick_params(length=2, width=0.5, pad=2)
    ax.tick_params(axis='x', which='both', bottom=False, labelbottom=False)

    # Bordure de piste
    for spine in ax.spines.values():
        spine.set_edgecolor(BORDER_COLOR)
        spine.set_linewidth(0.8)


def render(input_path: str, output_path: str):
    print(f"Lecture : {input_path}")
    audio, sr = sf.read(input_path, dtype='float32', always_2d=True)
    n_samples, n_channels = audio.shape
    duration = n_samples / sr
    peak = float(np.abs(audio).max())

    filename = os.path.basename(input_path)
    title_text = os.path.splitext(filename)[0]

    print(f"  Durée    : {duration:.1f}s  |  Canaux : {n_channels}  |  Peak : {peak:.4f}")

    # ── Mise en page ──────────────────────────────────────────────────────
    fig_w = WIDTH_PX / DPI
    label_h_in = LABEL_H_PX / DPI
    ch_h_in = TRACK_H_PX / DPI
    fig_h = label_h_in + n_channels * ch_h_in

    fig = plt.figure(figsize=(fig_w, fig_h), dpi=DPI)
    fig.patch.set_facecolor(BG_APP)

    # Bandeau titre (comme Audacity, en haut de la piste)
    label_ax = fig.add_axes([0, 1 - label_h_in / fig_h, 1, label_h_in / fig_h])
    label_ax.set_facecolor(LABEL_BG)
    label_ax.set_xlim(0, 1)
    label_ax.set_ylim(0, 1)
    label_ax.axis('off')
    label_ax.text(0.008, 0.5, title_text,
                  color=LABEL_FG, fontsize=9, fontweight='bold',
                  va='center', ha='left', fontfamily='sans-serif')


    # Canaux
    ch_h_frac = ch_h_in / fig_h
    for i in range(n_channels):
        bottom = 1 - label_h_in / fig_h - (i + 1) * ch_h_frac
        ax = fig.add_axes([YAXIS_W, bottom, 1 - YAXIS_W, ch_h_frac])
        draw_channel(ax, audio[:, i], title_text,
                     show_title=(i == 0), peak=peak,
                     channel_idx=i, n_channels=n_channels)

    plt.savefig(output_path, dpi=DPI, bbox_inches='tight',
                facecolor=BG_APP, pad_inches=0)
    plt.close(fig)
    print(f"  Sauvegardé : {output_path}")


# ── Point d'entrée ────────────────────────────────────────────────────────────
if __name__ == '__main__':
    if len(sys.argv) < 2:
        print("Usage: python waveform_audacity.py input.flac [output.png]")
        sys.exit(1)

    inp = sys.argv[1]
    out = sys.argv[2] if len(sys.argv) >= 3 else \
          os.path.splitext(inp)[0] + '_waveform.png'

    render(inp, out)

Maintenant, lorsque vous lancerez la commande :

python wf.py piste.flac

cela créera un fichier piste_waveform.png contenant l'image de l'onde sonore de la piste.

Afin d'utiliser facilement ces outils, rendeez-vous dans le dossier suivant :

Vous pouvez y accéder facilement en mettant ceci dans la barre d'adresse : "shell:sendto".

Créez un fichier "Analyse Audio.bat" et mettez ceci à l'intérieur :

@echo off
setlocal enabledelayedexpansion
if "%~1"=="" (
    echo Usage: audio_analyse.bat "fichier1" ["fichier2" ...]
    echo Ou glissez-deposez des fichiers audio sur ce script.
    pause
    exit /b
)
:loop
if "%~1"=="" goto end
set "input=%~1"
set "name=%~n1"
set "dir=%~dp1"
echo.
echo ========================================
echo Traitement de : %name%
echo ========================================
echo [1/2] Spectrogramme...
ffmpeg -y -i "%input%" -lavfi showspectrumpic=s=1000x500 "%dir%%name%_spectrogram.png" 
echo [2/2] Waveform stereo...
python "C:\Logiciels\waveform\wf.py" "%input%" "%dir%%name%_waveform.png" 
echo.
echo Termine : %name%
echo ----------------------------------------
shift
goto loop
:end
echo.
echo Tous les fichiers ont ete traites.
pause

Maintenant, où que vous soyez, si vous faites un click droit sur un ou plusieurs fichiers audio, vous pourrez utiliser le script en allant dans "Envoyer vers..." :

Une fois l'opération terminée, vous aurez deux fichiers images en plus par piste audio :

Identification

L'identification est le fait d'analyser les pistes afin de voir à quelle édition cette version de l'album correspond.

Pour cela, il existe d'immenses bases de données contenant, quasi, toutes les éditions parues de, quasi, tous les albums, singles, vinyls... et même K7 audios.

Les deux plus connues et utilisées sont MusicBrainz et Discogs. Il est possible d'interroger les deux depuis MP3Tag, mais je déconseille fortement.

MusicBrainz Picard (MBP) est un logiciel qui n'interroge que la base de données MusicBrainz mais permet une identification beaucoup plus précise.

Ce qu'il fera une fois une piste ou un album identifié, c'est remplir tous les tags pour lesquels il y a des données puis déplacer les fichiers là où vous l'aurez décidé.

Si vous choissisez c:\music, il sera alors créé c:\music\Artiste\Album...

Lorsque l'on envoie des fichiers à MBP, il y a plusieurs possibilités :

1. L'album contient déjà des informations MBP

Si l'extraction a été réalisée avec EAC ou CueRipper, en principe les informations MBP sont déjà présentes. Le logiciel ne servira alors qu'à envoyer l'album au bon endroit.

2. Analyse sur base des tags

Les tags permettent de facilement identifier la bonne version d'une piste. Par exemple, pour "La mauvaise réputation" de Brassens, si le nom de l'album est "Intégrale 20ème anniversaire" avec pour sous-titre d'album "La mauvaise réputation, il ne montrera pas les différentes version de l'album "La mauvaise réputation".

Si un ou des résultats sont trouvés, il est très important de vérifier la version proposée car pour un même album, il existe plusieurs versions. Cela permet aussi de détecter des versions pirates.

Il faut donc vérifier :

  1. Les durées
  2. Les noms pour s'assurer qu'il n'y ait pas inversion ou erreur

3. Il ne trouve rien ou pas la bonne version

La première chose à faire est de vérifier les tags, particulièrement le nom d'album. Par exemple si pour un double album vous avez ajouté CD1 et CD2 au nom, MBP ne trouvera rien, il faut d'abord enlever le CD1 ou CD2 de la recherche.

Il est également possible d'effectuer une recherche directement sur le site de MusicBrainz et, si vous trouvez l'album que vous voulez, obtenir l'identifiant de l'album pour forcer MBP à l'utiliser.

En Europe, nous avons été innondé par les versions pirates russes. La plupart du temps ces CDs (et K7s à l'époque) pirates ne sont pas de moins bonne qualité mais, il manque parfois des morceaux ou alors, à l'inverse, vu qu'il y avait encore de la place sur le CD, ils ont ajouté des morceaux "bonus"... Ou alors on a l'album complet mais avec les pistes dans l'odre alphabétique... On peut retrouver ces versions dans MusicBrainz mais elles sont loin d'être toutes intégrées.

Lorsqu'un album est ajouté à MusicBrainz une zone est prévue pour indiquer le statut de l'album, donc si c'est officiel, pirate, bootleg...

4. Empreinte AcousticID

Si rien ne marche, vous pouvez lancer l'analyse AcousticID qui calculera alors l'empreinte de la piste et vous proposera l'ensemble des albums où cette empreinte a été retrouvée.

Pour faire cela, il prend les deux premières minutes et analyse toutes les notes jouées.

En très gros, chaque piste a sa propre empreinte, quel que soit le format, le bitrate ou le volume.

Mais il y a des limites :

  • Il ne reconnait pas vraiment le morceau, il reconnait une version du morceau. Si vous envoyez une version radio mais que MusicBrainz ne connait que la version longue il ne reconnaitra pas
  • Il suffit que votre platine tourne à 33,2 tours par minute pour que l'analyse ne reconnaisse pas les notes

Par contre, vous pouvez être certain que si un morceau est reconnu grâce à son empreinte, c'est que ce morceau existe dans un des albums de MusicBrainz.

Cela peut aussi être utile pour les albums étrangers écrits dans une langue que l'on ne connait pas.

Par exemple si vous achetez un CD chinois au pif, ne sachant ce qu'est le nom de l'artiste ou le nom de l'album, vous n'aurez pas à inscrire le moindre tag. Vous n'aurez qu'à nommer votre fichier Trackxx.flac et demander à MBP de vous l'identifier...

5. L'album existe sur Discogs

Lorsque vous ne trouvez rien du tout, avant de l'ajouter à MusicBrainz, vous pouvez passer par MP3Tag et effectuer une recherche sur Discogs. Pour cela il faut créer un compte.

Le problème de MP3Tag est qu'il n'est pas possible d'effectuer les vérifications possibles sur MBP, vous devez donc être certains de votre édition.

Les intégrales et albums à plusieurs CDs

Comme vu plus haut, MBP sauvera, par défaut, vos fichiers dans un dossier ".\Artiste\Album"

Si nous reprenons notre exemple de Brassens, nous avions d'une part l'intégrale et de l'autre les albums séparés.

Ce que ça change est :

  • Intégrale : Toutes les pistes seront dans un seul dossier .\Brassens\Intégrale
  • Album : Chaque album a son propre dossier

Les intégrales étant rares, MBP n'est pas configuré par défaut pour les gérer. Et mettre tous les CDs d'un album en comprenant plusieurs dans un même dossier est plus propre pour l'utilisation via serveur ou médiathèque.

Cela peut poser problème, par exemple, lorsqu'une intégrale contient deux versions d'un même album ayant la même numérotation et les même titres (version studio et live).

Par défaut, MBP renomme les fichiers en N° de piste - titre.

Si vous vous rendez dans les options, vous pouvez voir le script utilisé pour le nommage des fichiers. Par défaut c'est :

%albumartist%/
%album%/
%tracknumber%. %title%

Ce qui donnerait par exemple :

C:\Music\Georges Brassens\Intégrale\12. Tout est au Duc.FLAC

Pour la majorité des cas, je l'ai modifié en :

$if2(%albumartist%,%artist%)/
$if2(%album%,Unknown Album)/
$if($gt(%totaldiscs%,1),$num(%discnumber%,2) - ,)
$if(%tracknumber%,$num(%tracknumber%,2) - ,)
$if(%_multiartist%,%artist% - ,)
%title%

Ce n'est pas compliqué :

Ligne Explication Résultat
$if2(%albumartist%,%artist%)/ Si %ALBUMARTIST% existe, créer un dossier à ce nom, sinon utiliser %ARTIST% .\Artiste\
$if2(%album%,Unknown Album)/ S'il y a un nom d'album, alors créer un dossier à ce nom, sinon créer un dossier Unknown Album .\Artiste\Album\
$if($gt(%totaldiscs%,1),$num(%discnumber%,2) -,) S'il y a plus d'un disque, ajoute le n° de disque sur deux chiffres .\Artiste\Album\02 -
$if(%tracknumber%,$num(%tracknumber%,2) ,) S'il y a un n° de piste, ajoute ce n° sur deux chiffres .\Artiste\Album\02 - 08
$if(%_multiartist%,%artist% - ,) S'il y a plusieurs artistes pour un seul Album, on ajoute le nom de l'artiste .\Artiste\Album\02 - 08 Artiste -
%title% Ajoute le titre .\Artiste\Album\02 - 08 Artiste - Titre

donnant alors :

C:\Music\Georges Brassens\Intégrale\13 - 12 - Georges Brassens et Charles Trenet - Tout est au Duc.FLAC

C'est très bien pour les albums ayant plusieurs CDs, mais pour les intégrales, je modifie ce code en :

$if2(%albumartist%,%artist%)/
$if2(%album%,Unknown Album)/
$if2(%discsubtitle%,%discnumber%)/
$if(%tracknumber%,$num(%tracknumber%,2) - ,)
$if(%_multiartist%,%artist% - ,)
%title%

donnant alors :

C:\Music\Georges Brassens\Intégrale\Archives 1953-1980\12 - Georges Brassens et Charles Trenet - Tout est au Duc.FLAC

S'il n'y avait pas de sous-titre au CD, cela donnerait alors :

C:\Music\Georges Brassens\Intégrale\13\12 - Georges Brassens et Charles Trenet - Tout est au Duc.FLAC

Vous pouriez être tenté de modifier le code en ceci si vous avez  :

$if2(%albumartist%,%artist%)/
$if2(%discsubtitle%,)/
$if(%tracknumber%,$num(%tracknumber%,2) - ,)
$if(%_multiartist%,%artist% - ,)
%title%

donnant alors :

C:\Music\Georges Brassens\Archives 1953-1980\12 - Georges Brassens et Charles Trenet - Tout est au Duc.FLAC

mais je déconseille cet usage.

Dans les faits, l'idéal est d'éviter les intégrales et prendre séparément chaque album.

Uniformiser les tags

Comme vu plus haut, il y a de très très très nombreux tags. Avant tout, il faut configurer MP3tag. Dans mon cas, il ressemble à ça :

Il est possible d'importer et exporter des configurations, se trouvant dans le dossier C:\Users\Marc\AppData\Roaming\Mp3tag\data\panels

Pour avoir la même config que moi, vous devez créer un fichier marc.ini dans ce dossier

[#0]
name=R\u00e9pertoire
value=_DIRECTORY
enabled=1
size=1

[#1]
name=Titre
value=TITLE
enabled=1
size=6
default=\u000b1
multiline=0
custom_values=
prefer_tag=1
version=1

[#2]
name=Titre (tri)
value=TITLESORT
size=6
enabled=1
default=\u000b1
multiline=0
custom_values=
prefer_tag=1
version=1

[#3]
name=Album
value=ALBUM
enabled=1
size=6
default=\u000b1
multiline=0
custom_values=
prefer_tag=1
version=1

[#4]
name=Album (tri)
value=ALBUMSORT
size=6
enabled=1
default=\u000b1
multiline=0
custom_values=
prefer_tag=1
version=1

[#5]
name=Sous-titre de l'album
value=DISCSUBTITLE
size=12
enabled=1
default=\u000b1
multiline=0
custom_values=
prefer_tag=1
version=1

[#6]
name=Artiste de la piste
value=ARTIST
enabled=1
size=6
default=\u000b1
multiline=0
custom_values=
prefer_tag=1
version=1

[#7]
name=Artiste (tri)
value=ARTISTSORT
size=6
enabled=1
default=\u000b1
multiline=0
custom_values=
prefer_tag=1
version=1

[#8]
name=Artiste de l'album
value=ALBUMARTIST
enabled=1
size=6
default=\u000b1
multiline=0
custom_values=
prefer_tag=1
version=1

[#9]
name=Artiste album (tri)
value=ALBUMARTISTSORT
size=6
enabled=1
default=\u000b1
multiline=0
custom_values=
prefer_tag=1
version=1

[#10]
name=Tous les artistes
value=ARTISTS
size=12
enabled=1
default=\u000b1
multiline=0
custom_values=
prefer_tag=1
version=1
rows=3

[#11]
name=Parolier
value=LYRICIST
size=4
enabled=1
default=\u000b1
multiline=0
custom_values=
prefer_tag=1
version=1

[#12]
name=Compositeur
value=COMPOSER
enabled=1
size=4
default=\u000b1
multiline=0
custom_values=
prefer_tag=1
version=1

[#13]
name=Chef d'orchestre
value=CONDUCTOR
size=4
enabled=1
default=\u000b1
multiline=0
custom_values=
prefer_tag=1
version=1

[#14]
name=Ann\u00e9e
value=YEAR
enabled=1
size=2
default=\u000b1
multiline=0
custom_values=
prefer_tag=1
version=1

[#15]
name=Ann\u00e9e d'origine
value=ORIGYEAR
size=2
enabled=1
default=\u000b1
multiline=0
custom_values=
prefer_tag=1
version=1

[#16]
name=Piste
value=TRACK
enabled=1
size=2
default=\u000b1
multiline=0
custom_values=
prefer_tag=1
version=1

[#17]
name=Num\u00e9ro de disque
value=DISCNUMBER
enabled=1
size=2
default=\u000b1
multiline=0
custom_values=
prefer_tag=1
version=1

[#18]
name=BPM
value=BPM
size=2
enabled=1
default=\u000b1
multiline=0
custom_values=
prefer_tag=1
version=1

[#19]
name=Key
value=INITIALKEY
size=2
enabled=1
default=\u000b1
multiline=0
custom_values=
prefer_tag=1
version=1

[#20]
name=Genres
value=GENRE
enabled=1
size=9
default=\u000b1
multiline=0
custom_values=
prefer_tag=1
version=1

[#21]
name=Genre 2
value=GENRE2
size=3
enabled=1
default=\u000b1
multiline=0
custom_values=
prefer_tag=1
version=1

[#22]
name=Editeur
value=PUBLISHER
size=6
enabled=1
default=\u000b1
multiline=0
custom_values=
prefer_tag=1
version=1

[#23]
name=Media
value=MEDIATYPE
size=6
enabled=1
default=\u000b1
multiline=0
custom_values=
prefer_tag=1
version=1

[#24]
name=Gain Track
value=REPLAYGAIN_TRACK_GAIN
size=6
enabled=1
default=\u000b1
multiline=0
custom_values=
prefer_tag=1
version=1

[#25]
name=Gain Album
value=REPLAYGAIN_ALBUM_GAIN
size=6
enabled=1
default=\u000b1
multiline=0
custom_values=
prefer_tag=1
version=1

[#26]
name=Commentaire
value=COMMENT
enabled=1
size=12
default=\u000b1
multiline=1
rows=2
custom_values=
prefer_tag=1
version=1

[#27]
name=Paroles
value=UNSYNCEDLYRICS
size=12
enabled=1
default=\u000b1
multiline=1
rows=2
custom_values=
prefer_tag=1
version=1

Les Artistes

  1. Si noms écrits de différentes manières, transformer en modèle Prénom Nom.
  2. Vérifier si cet artiste doit être trié autrement, auquel cas, modification de ARTISTSORT et ALBUMARTISTSORT.
  3. Si le tag ARTIST contient plusieurs noms, renvoyer chacun vers ARTISTS, chacun séparé par un point-virgule
  4. Si un seul artiste, renvoyer quand même vers ARTISTS
  5. Si compositeur, chef d'orchestre, parolier, ajouter à ARTISTS.

Paroles

Dans les MP3 il existe deux tags dédiés aux paroles :

  1. USLT : %UNSYNCEDLYRICS% : Paroles non synchronisées
  2. SYLT : Paroles synchronisées.

Un problème est que MP3Tag ne prend pas en charge SYLT. Cela vient du fait que ce tag a un format très particulier, le Lyrics3, qui demande à lui seul une représentation particulière.

Vous pouvez voir s'il existe un SYLT en regardant la colonne Tag : si le tag Lyrics3 est présent, c'est qu'il y a des paroles synchronisées. Celles-ci n'apparaitront pas non plus

Il existe un logiciel, Kid3, qui est un éditeur de tags puissant, offrant plus de possibilités sur les tags que MP3Tag mais offrant beaucoup moins de possibilités d'automatisation et de traitement par lot.

Celui-ci permet l'édition des paroles synchronisées et des timestamps :

OGG
OGG

Il y a également possibilité d'utiliser le logiciel en ligne de commande exiftool qui permet d'afficher tous les tags d'un fichier ainsi que le contenu de chacun :

Voici la commande utilisée :

C:\Logiciels\exiftool\exiftool.exe -v %1 > "%~n1.exif"

Cette commande créera un fichier ayant le même nom de fichier que votre piste, mais avec une extension exif contenant toutes les données. Si vous ne désirez pas créer un fichier mais simplement voir les informations, utilisez la commande suivante :

C:\Logiciels\exiftool\exiftool.exe -v %1
pause

Les autres formats (Vorbis, FLAC, OPUS...) utilisant le Vorbis Comments pour les tags, il n'est pas possible d'intégrer les paroles synchronisée dans le format utilisé par ID3.

Les logiciels effectuant la recherche de paroles n'ont été prévu que pour écrire dans des MP3, mais ils proposeront alors de sauver les paroles synchronisées dans un fichier LRC, ayant le même nom de fichier que la piste et qui est lu maintenant par tous les lecteurs modernes.

Néanmoins, deux tags sont également utilisés dans les autres formats :

  1. UNSYNCEDLYRICS : Dans lequel on met les paroles non synchronisées et dont le nom a été gardé car devenu le plus courant
  2. LYRICS : Dans lequel on met les paroles sous cette forme (ici Plâtre et ciment! de Aubert):
[00:47.14] Encore un jour où ils vont m'faire
[00:49.00] Encore un jour où vont m'faire faire
[00:51.02] Encore un jour où ils vont s'faire
[00:53.74] Plâtre et ciment!
[01:03.18] Encore un matin en béton

Mais autant UNSYNCEDLYRICS est un tag standard dans tous les formats audio, autant LYRICS pas du tout.

Le seul standard existant pour les paroles synchronisées, utilisé par tous les lecteurs est l'utilisation d'un fichier LRC.




Nous retrouverons alors deux possibilités courantes :

Il faut passer par deux bases de données :

  1. MiniLyrics
  2. LRCLib

Mais en plus de ça, les paroles ne sont pas bien gérées par les logiciels traitrant les MP3.

MP3Tag n'est pas en mesure d'afficher et gérer les paroles synchronisées.

Pour le moment, j'ai vu deux tags utilisables dans MP3Tag : %LYRICS% et %UNSYNCEDLYRICS%.

Le premier est sensé être la variable où l'on retrouve des paroles synchronisées, formatées dans le même style que des sous-titres.

Le deuxième c'est juste un texte avec les paroles.

J'ai des MP3s avec ces deux tags remplis.

Mais j'ai également une grosse majorité de MP3s dont les paroles sont synchronisées dans le MP3 mais qu'il est impossible d'afficher dans MP3Tag.

Cela se voit grâce à l'out exiftool.

Calculer le BPM

Il existe plusieurs méthodes pour le calculer.

Automatique

Pour les tests, j'utile le morceau Heartbeat 67 bpm de Michael Rother puisqu'il a un BPM connu de très exactement 67bpm.

Si vous êtes DJ, en principe, votre logiciel devrait le faire de manière assez juste lorsque vous les intégrez à votre médiathèque.

Sinon, possibilités simples :

  1. MixMeister BPM Analyzer : Donne une très très bonne analyse, très proche de la réalité, de manière très rapide. Le problème est que c'est un logiciel ancien, tombé maintenant dans le domaine public et qu'il ne gère que le format MP3. Il m'a donné un 133,87 BPM soit exactement le double, ce qui est courant dans ce genre de cas et raison pour laquelle la plupart des logiciels proposent de doubler ou diviser par 2 le BPM obtenu.
  2. Foobar + BPM Analyzer : Donne souvent de très mauvais résultats et doit être configuré. Mais il permet une analyse de tous les formats. Il m'a donné un 89 BPM...Je ne comprends pas comment cette extension peut être fournie avec une configuration par défaut pareille...

En configurant Foobar de la manière suivante, j'obtiens un bon 67,16 BPM mais le calcul est nettement plus lent et après tests sur d'autres MP3, même si cette configuration donne de meilleurs résultats, elle est loin d'être parfaite.

Sur la majorité des morceaux (90%) avec une basse bien marquée et de bonne qualité, le calcul sera juste, mais il peut arriver qu'il soit totalement à côté de la plaque :/

Et possibilité plus complexe :

  • Mixxx : Il s'agit d'un excellent logiciel open-source pour DJ, compatible avec une grande majorité des tables de mixages. Il utilise un algorithme extrèmement puissant pour le calcul du BPM donnant de très très bons résultats, mais son interface n'est vraiment pas des plus simples et on peut vite se retrouver perdu à ne pas savoir où sont passées nos musiques. C'est vraiment la meilleure solution, mais il faudra passer un temps à apprivoiser le logiciel.

Manuelle

Foobar propose une méthode qui fonctionne vraiment très très bien... Vous lancez le morceau puis vous lancez une analyse "manuelle" du BPM.

Cela signifie c'est que dès qu'il y a une basse, vous appuyez sur le bouton de la souris...

Si vous êtes en mesure de tenir le rythme, c'est sans doute la méthode la plus fiable.

Idées

Créer des tiers-lieux "Faites votre copie privée".

Les organisateurs amènent le matériel permettant la copie privée depuis plusieurs supports vers d'autres.

ils amènent aussi les supports légaux qu'ils ont.

Les participants viennent avec des supports qu'ils veulent partager ou des supports vierges (clef usb, hdd...)

Le but est que chacun prète son matériel ou ses supports afin de permettre à tous d'avoir une copie privée, ce qui est légal.

Chaque TL le ferait par genre.

C'est 100% légal

Codes

Image vers FLAC

import argparse
import sys
from pathlib import Path

import numpy as np
from PIL import Image
import soundfile as sf  # pip install soundfile

# --- Argument ---
parser = argparse.ArgumentParser(description="Convertit une image en fichier FLAC spectral.")
parser.add_argument("image", help="Chemin vers l'image source")
args = parser.parse_args()

input_path = Path(args.image)
if not input_path.exists():
    print(f"Erreur : fichier introuvable : {input_path}")
    sys.exit(1)

output_path = input_path.with_suffix(".flac")

# 1. Charger et préparer l'image
img = Image.open(input_path).convert("L")
img = img.transpose(Image.FLIP_TOP_BOTTOM)

# Réduire la résolution pour des calculs raisonnables
img = img.resize((300, 300))
img_array = np.array(img) / 255.0

# 2. Paramètres audio — hautes fréquences
sample_rate = 192000    # 192kHz pour supporter jusqu'à 96kHz
duration = 10        # secondes
freq_min = 0            # Hz min
freq_max = 96000        # Hz max

height, width = img_array.shape
t = np.linspace(0, duration, int(sample_rate * duration))
audio = np.zeros(len(t))

# 3. Construire le signal colonne par colonne
for x in range(width):
    t_start = x / width * duration
    t_end = (x + 1) / width * duration
    mask = (t >= t_start) & (t < t_end)
    for y in range(height):
        amplitude = img_array[y, x]
        if amplitude > 0.1:
            freq = freq_min + (y / height) * (freq_max - freq_min)
            audio[mask] += amplitude * np.sin(2 * np.pi * freq * t[mask])

# 4. Normaliser très bas pour ne pas écraser la musique
audio = audio / np.max(np.abs(audio)) * 0.15  # 15% du volume max

# 5. Exporter en FLAC 24-bit
sf.write(str(output_path), audio, sample_rate, subtype="PCM_24")
print(f"Fichier FLAC généré : {output_path}")

Références