ReplayGain, et ce qu'il te coûte
Pourquoi un album est deux fois plus fort que le suivant, ce que la solution fait réellement à ton audio, et pourquoi tu ne peux pas l'avoir en même temps que la lecture bit-perfect.
Le problème qu'il résout
Les disques ne sont pas masterisés à une intensité commune. Un CD de 1985 et un remaster du même album de 2005 peuvent différer de dix décibels ou plus, et c'est la différence entre écouter confortablement et garder la main sur le volume. Mets en lecture aléatoire une bibliothèque couvrant quatre décennies et tu règles le volume une piste sur trois.
ReplayGain corrige cela sans toucher à ton audio. Une passe d'analyse mesure de combien une piste s'écarte d'une intensité de référence et écrit ce nombre, en décibels, dans les tags du fichier. À la lecture, le lecteur lit le nombre et l'applique. Rien n'est réencodé et rien n'est détruit, parce que la correction vit dans un tag et que l'audio en dessous est celui que tu avais.
Gain par piste et gain par album
Chaque fichier mesuré porte deux nombres, et choisir entre eux est le seul réglage qui change réellement la sensation d'écoute.
Le gain par piste égalise chaque piste indépendamment. Chaque morceau arrive à la même intensité, et c'est ce que tu veux en lecture aléatoire. Cela aplatit aussi les albums construits avec de la dynamique à dessein : l'interlude calme avant le final puissant est tiré vers le haut pour s'y aligner, et l'effet voulu par la production disparaît.
Le gain par album applique un seul chiffre à chaque piste du disque, calculé sur l'album dans son ensemble. Les différences relatives à l'intérieur de l'album survivent exactement telles que masterisées, et l'album en tant qu'unité s'aligne sur les autres albums. C'est le bon réglage par défaut si tu écoutes les disques du début à la fin.
rox en fait un réglage et applique le chiffre choisi par piste à l'ouverture, c'est donc une préférence et non quelque chose de gravé dans les fichiers.
La crête, et pourquoi une amplification peut écrêter
À côté du gain, une passe de mesure enregistre l'échantillon le plus fort de la piste. Ce nombre compte parce que les corrections ReplayGain vont dans les deux sens : un enregistrement faible reçoit un gain positif, et multiplier des échantillons qui frôlent déjà la pleine échelle les pousse au-delà. Au-delà de la pleine échelle il n'y a plus de place, la forme d'onde s'aplatit donc et tu entends une distorsion qui n'était pas dans le fichier.
La crête est ce qui l'empêche. rox borne une amplification d'après la crête que rapporte le tag, une piste faible n'est donc remontée que d'autant qu'elle peut l'être sans écrêter. Le résultat est que certaines pistes faibles se posent un peu en dessous de l'intensité cible, et c'est le bon compromis, la raison même pour laquelle les valeurs de crête sont stockées.
Les fichiers que personne n'a jamais mesurés
ReplayGain ne fonctionne que sur les fichiers qui portent les tags, et dans une vraie bibliothèque constituée sur vingt ans une grande part ne les portera pas. Historiquement, cela voulait dire passer un tagueur séparé sur tout avant que ton lecteur ne serve à quelque chose.
rox lit les tags là où ils existent, sous les noms standards dans chaque format qu'il indexe : trames TXXX en ID3v2, commentaires Vorbis en FLAC, atomes libres en MP4, et les tags de gain R128 que porte l'Opus, ramenés à la référence ReplayGain à la lecture. Pour tout le reste, il mesure les fichiers lui-même avec une passe d'intensité EBU R128 et range le résultat dans la bibliothèque, marqué comme mesuré, pour qu'une analyse ultérieure puisse distinguer les chiffres de rox de ce qu'un tagueur a écrit. Si tu préfères que les chiffres vivent dans les fichiers, un réglage les réécrit par le même chemin d'écriture vérifié qu'utilise l'éditeur de tags.
Cette passe peut se lancer toute seule. Avec la mesure automatique activée, les fichiers sont mesurés une fois que la surveillance des dossiers s'est calmée après un import, et une piste déposée dans un album déjà mesuré renvoie tout le disque à une nouvelle mesure, puisque le gain par album est un chiffre sur le disque et non sur le fichier.
La partie que la plupart des pages passent sous silence
ReplayGain multiplie tes échantillons par un nombre. C'est du traitement. Ce n'est pas sans perte, ce n'est pas un passage direct, et tout lecteur revendiquant à la fois ReplayGain et sortie bit-perfect décrit quelque chose qui ne peut pas exister.
Cela compte si tu possèdes un DAC choisi avec soin. Bit-perfect veut dire que les échantillons qui atteignent le convertisseur sont ceux du fichier, non modifiés, donc tout ce qui les met à l'échelle, un volume en dessous du maximum, un égaliseur, ReplayGain, met fin à cette revendication. Il n'existe aucune version de normalisation d'intensité qui laisse les bits tranquilles, parce que changer l'intensité c'est changer les bits.
Choisir entre les deux est un vrai choix, pas une question piège. Le bit-perfect compte pour l'écoute critique d'un album sur du bon matériel. ReplayGain compte pour toutes les autres heures, quand la bibliothèque tourne en aléatoire et que tu préférerais ne pas toucher au volume. La plupart des gens devraient activer ReplayGain et ne plus y penser. Ce qui compte, c'est de savoir lequel est actif.
La sortie exclusive, à part
Le bit-perfect demande aussi que le système d'exploitation sorte du chemin, et c'est à cela que sert un mode de sortie exclusif. rox prend le périphérique directement : le nom ALSA hw: sous Linux, sans dmix, sans plug et sans serveur de son sur le trajet ; WASAPI exclusive sous Windows ; le mode hog via CoreAudio sous macOS. Il suit la fréquence de la source quand le périphérique le permet, et rapporte ce que le matériel a réellement accepté plutôt que ce qui a été demandé.
La contrepartie est celle que le mot exclusif implique partout : tant que rox tient le périphérique, rien d'autre sur la machine ne joue par lui. Si le périphérique ne peut pas être obtenu, rox retombe en mode partagé avec l'état visible, plutôt que de se taire en te laissant chercher pourquoi.
Ce qui n'est pas traité
- L'
iTunNORMd'iTunes est hors périmètre. Rien d'autre ne l'écrit et ses chiffres par canal ne sont pas un gain en décibels. - Suivre la fréquence de la source en mode exclusif coûte un blanc audible entre deux pistes de fréquences différentes, puisque le flux se rouvre. Le sans-blanc à fréquence constante n'est pas affecté.
Un lecteur qui te dit lequel du bit-perfect et de ReplayGain est vrai à cet instant, et qui mesure les fichiers auxquels tes tagueurs ne sont jamais arrivés, cela fait une liste courte. Si c'est ce genre d'honnêteté que tu veux de la chose entre ta bibliothèque et ton DAC, rox y figure.
Pointe-le sur ta bibliothèque
La passe de mesure tourne en arrière-plan sur tout ce à quoi il manque un gain, et continue avec la fenêtre de réglages fermée. Plus sur ce qui compte d'autre à l'échelle d'une bibliothèque.
Sous Arch ou NixOS ? Installe-le plutôt depuis l'AUR ou le flake Nix.