Comment resampler des FLAC haute résolution sur Linux

Image de mise en avant Resample Flac Haute Résolution Sox 00

Les fichiers FLAC haute résolution sont l’un des sommets de l’expérience audio Hi-Fi. Cependant, si vous extrayez votre CD en fichiers FLAC, vous constaterez qu’ils sont souvent difficiles à lire en dehors de l’équipement pour lequel ils ont été conçus. Cela peut poser un problème pour les utilisateurs qui possèdent des pistes audio haute résolution mais n’ont pas les outils nécessaires pour les lire correctement.

Une façon de résoudre ce problème est d’utiliser sox pour resampler vos fichiers FLAC haute résolution. Ce tutoriel enseigne les bases de sox et comment l’utiliser pour resampler des fichiers FLAC sous Linux.

Conseils : si vous êtes confus au sujet des différents formats audio, consultez ce guide pour comprendre les différences entre MP3, AAC, FLAC et bien d’autres formats.

Table des matières

  • Qu’est-ce que Sox et comment fonctionne le resampling ?
  • Resampler un fichier FLAC haute résolution avec sox
  • Automatiser le processus de resampling
  • Questions fréquentes

Qu’est-ce que Sox et comment fonctionne le resampling ?

En son cœur, sox est un programme de traitement audio en ligne de commande. Contrairement à Audacity, il vous permet de manipuler des fichiers audio directement depuis votre terminal. Cela rend sox utile pour ceux qui souhaitent effectuer des modifications simples ou automatiser une tâche audio complexe.

Écran d'aide Sox Haute Résolution Flac Resample 02

Le resampling, quant à lui, est le processus consistant à utiliser des algorithmes complexes pour transformer un signal haute fidélité en un signal de qualité inférieure. Cette approche conserve la qualité d’une piste audio tout en réduisant la quantité de données que vous stockez sur votre ordinateur.

En outre, le resampling vous permet également de lire vos fichiers FLAC haute résolution sur des appareils de moindre qualité. Un iPod Video Rockbox, par exemple, présentera des ralentissements et des saccades lorsqu’il lit un fichier audio 24 bits.

Écran de chargement Rockbox Haute Résolution Flac Resample 04

Alternative : en plus de sox, vous pouvez également utiliser flac2all pour transcoder des fichiers FLAC vers d’autres formats audio modernes.

Resampler un fichier FLAC haute résolution avec sox

Remarque : les étapes ci-dessous concernent Ubuntu, mais l’utilisation reste la même quel que soit la distribution Linux que vous utilisez.

La première étape pour resampler des fichiers FLAC est d’installer à la fois l’utilitaire sox et ses dépendances. Exécutez la commande suivante dans Debian et Ubuntu :

sudo apt install sox flac ffmpeg

Installation de Sox Haute Résolution Flac Resample 05

Vérifiez s’il est correctement installé : sox --version.

Vérifiez la version de Sox Haute Résolution Flac Resample 06

Trouvez à la fois la profondeur de bit et la fréquence d’échantillonnage de votre fichier FLAC en utilisant le programme intégré file pour afficher ces détails dans le terminal :

file sample.flac

Dans mon cas, mon fichier FLAC a une profondeur de bit de 24 bits et une fréquence d’échantillonnage de 96 kHz.

Vérifiez la profondeur de bit et la fréquence d'échantillonnage Flac Haute Résolution Resample 07

Trouver le bon taux de resampling pour sox

Trouvez le bon taux de resampling pour votre fichier FLAC. La règle générale en matière de resampling est que le taux de resampling cible doit être divisible par le taux d’échantillonnage original par 2 ou 4.

Taux d'échantillonnage divisibles Haute Résolution Flac Resample 08

Vous ne devriez resampler un fichier FLAC 192 kHz qu’à 96 ou 48 kHz pour garantir que l’algorithme de resampling puisse transformer le signal original avec le moins de distorsion possible.

Optimiser le resampling dans votre fichier FLAC haute résolution

Une fois que vous connaissez le bon taux de resampling à utiliser, vous pouvez exécuter sox pour resampler votre fichier FLAC. Dans mon cas, je suis en train de resampler un fichier 96 kHz, donc j’exécute la commande suivante :

sox -S sample.flac -b 16 resample.flac rate -v -L 48000 dither
  • Le drapeau -b indique à sox de définir une nouvelle profondeur de bit pour le fichier de sortie. Par exemple, une valeur de 16 définira la nouvelle profondeur de bit à 16 bits.
  • D’autre part, l’option rate indique à sox de définir une nouvelle fréquence d’échantillonnage pour le fichier de sortie.
  • Le drapeau -v force sox à utiliser l’algorithme de resampling « très haute qualité ».
  • Le drapeau -L force également sox à utiliser une réponse « en phase linéaire » lors du resampling. Il s’agit d’un filtre qui tente de neutraliser tout « écho de signal » dans le fichier FLAC.
  • Enfin, l’option dither génère une petite quantité de bruit sur toute la piste. Cela sert de masque qui cachera toute imperfection dans le processus de resampling.

Single Resample Job Haute Résolution Flac Sox Resample 09

Automatiser le processus de resampling

Bien qu’il soit possible d’utiliser sox sur une base par fichier, il est également possible d’automatiser l’ensemble du processus à l’aide du shell. (Consultez le guide du débutant sur la création de scripts shell.) Cela est utile si vous avez l’intention de resampler un album entier de pistes FLAC haute résolution.

L’un des moyens les plus rapides d’automatiser le processus de resampling est d’utiliser une boucle Bash. Par exemple, vous pouvez exécuter les lignes de code suivantes pour resampler tout un dossier de fichiers FLAC :

mkdir -p ./flac-dir/resample && cd ./flac-dir  
for flac in *.flac; do sox -S "${flac}" -b 16 resample/"${flac}" rate -v -L 48000 dither; done

La première commande créera le dossier de sortie pour les nouveaux fichiers FLAC ainsi que modifiera le répertoire de travail actuel. La deuxième commande va exécuter une boucle à travers chaque fichier dans le dossier actuel et le resampler en utilisant sox.

Boucle de travail de Resample Haute Résolution Flac Sox Resample 10

Questions fréquentes

Est-il possible de resampler un fichier MP3 avec sox ?

La commande rate pour sox ne fonctionne pas avec les formats avec perte, donc elle ne peut pas être utilisée pour resampler un fichier MP3.

Je reçois une erreur “aucun gestionnaire pour le type de fichier détecté”. Soit sox est-il cassé ?

Non ! Cela se produit chaque fois que sox n’est pas en mesure de lire et de décoder votre fichier FLAC haute résolution. Les causes les plus courantes de ce problème sont une bibliothèque système manquante et un drapeau de compilateur manquant.

Pour corriger la bibliothèque système manquante, exécutez la commande suivante : sudo apt install libsox-fmt-all. La correction du drapeau de compilateur manquant nécessitera que vous désinstalliez le package sox actuel et que vous le compiliez à partir de la source.

Sox signale que mon fichier FLAC haute résolution est en clipping. Mon resampling a-t-il échoué ?

Il est normal qu’un fichier FLAC haute résolution soit en clipping lors d’un resampling, car le processus de resampling omet la plupart des données de fréquence élevée et inaudibles d’un fichier FLAC.

Malgré cela, il est toujours possible de dire à sox de compenser les possibles clips lors du resampling. Pour ce faire, ajoutez le drapeau -G à votre commande sox : sox -S sample.flac -G -b 16 resample.flac rate -v -L 48000 dither.

Crédit d’image : Unsplash. Toutes les modifications et captures d’écran par Ramces Red.