Comment convertir en masse des fichiers audio dans le terminal Linux
Sommaire
Liens rapides
-
Tout d’abord, assurez-vous d’avoir FFmpeg
-
Linux est une excellente plate-forme pour l'édition audio
Si vous convertissez plusieurs fichiers audio, l'utilisation d'outils graphiques (y compris des outils ou des applications en ligne) peut être un processus laborieux. Les instructions ci-dessous vous montrent comment convertir en masse des fichiers audio à partir du terminal Linux, ce qui vous fait gagner du temps.
Tout d’abord, assurez-vous d’avoir FFmpeg
FFmpeg est un outil de ligne de commande gratuit pour traiter les fichiers multimédias. Vous pouvez l'utiliser pour convertir en masse des fichiers audio afin de modifier leur format, de réduire leur taille ou de rendre leur volume cohérent. Il est disponible dans les référentiels de logiciels de la plupart des distributions Linux et peut être installé sur les systèmes Debian/Ubuntu à l'aide de la commande suivante :
sudo apt install ffmpeg
Vous pouvez également utiliser FFmpeg pour convertir des fichiers audio sous Windows.
Il est important que vous compreniez toutes les commandes de terminal que vous copiez/collez depuis Internet avant de les exécuter. De brèves explications sont incluses ci-dessous, mais assurez-vous de vérifier ce que fait chaque commande avant de l'exécuter !
Convertir le format de fichier audio
La commande du terminal Linux ci-dessous montre comment utiliser FFmpeg pour convertir un fichier WAV en MP3 :
for file in /path/to/source_directory/*.wav; do ffmpeg -i "$file" "/path/to/output_directory/$(basename "${file%.*}.mp3")"; done
Pour expliquer rapidement ce qui se passe ici (et dans les autres exemples de cette page qui utilisent des boucles pour traiter plusieurs fichiers) :
- Une boucle for est utilisée pour traiter tous les fichiers avec un .wav extension dans un répertoire source. Dans la boucle, le chemin d'accès à chaque fichier audio est attribué au $fichier variable.
- Le $fichier la variable est transmise au ffmpeg commande à l'aide du -je option qui spécifie le fichier d’entrée.
- Le dernier paramètre transmis à FFmpeg est toujours le chemin du fichier de sortie. FFmpeg déterminera automatiquement le format du fichier résultant en fonction de l'extension (dans ce cas, .mp3).
Les formats de fichiers audio populaires pris en charge par FFmpeg pour la conversion audio sont MP3, AAC, OGG, WAV, FLAC, M4A, WMA et AIFF.
Pour modifier la conversion de fichier dans le script ci-dessus, remplacez .wav avec l'extension de fichier correspondant aux fichiers dont vous souhaitez convertir le format et remplacez .mp3 avec un format pris en charge par FFmpeg vers lequel convertir. Gardez à l’esprit que les chemins et extensions de fichiers sous Linux sont sensibles à la casse !
Modifier le débit audio
La commande de terminal ci-dessous convertit en masse le débit binaire des fichiers MP3 en 128 Ko :
for file in /path/to/source_directory/*.mp3; do ffmpeg -i "$file" -b:a 128k "/path/to/output_directory/$(basename "${file%.*}_128k.mp3")"; done
Réduire le débit binaire rend les fichiers audio plus petits, tandis que l'augmenter les rend plus gros. Notez que la réduction du débit est un processus à sens unique : une fois que vous avez réduit la qualité, les informations perdues ne peuvent plus être récupérées, et augmenter à nouveau le débit ne restaurera pas la qualité d'origine (même si le fichier peut encore grossir, la qualité sera gagnée). ne soit pas amélioré).
Les débits binaires courants utilisés dans l'audio numérique sont :
- 320k pour une qualité audio (presque) CD
- 256k pour une haute qualité
- 192k pour une qualité standard
- 128k pour la qualité de la radio FM
Les débits inférieurs à 128k feront vraiment souffrir votre audio (et sonneront comme un vieil appel téléphonique), ils ne sont donc recommandés que pour les situations où une compression importante de l'audio (comme de longs enregistrements de conversations) est nécessaire.
Normaliser le volume audio
La normalisation du volume rend le niveau audio d'un fichier audio cohérent afin que les parties fortes d'un fichier ne soient pas significativement plus fortes que le reste de l'enregistrement :
for file in /path/to/source_directory/*.mp3; do ffmpeg -i "$file" -filter:a loudnorm "/path/to/output_directory/$(basename "${file%.*}_normalized.mp3")"; done
Le fortnorme Le filtre dans FFmpeg est utilisé dans la commande de terminal ci-dessus pour normaliser le volume.
Convertir en mono/stéréo
Une façon de réduire davantage la taille d'un fichier audio consiste à le convertir de stéréo en mono (à condition que le contenu n'ait pas besoin d'être en stéréo, par exemple les enregistrements d'appels) :
Conversion stéréo en mono :
for file in /path/to/source_directory/*.mp3; do ffmpeg -i "$file" -ac 1 "/path/to/output_directory/$(basename "${file%.*}_mono.mp3")"; done
Conversion mono en stéréo :
for file in /path/to/source_directory/*.mp3; do ffmpeg -i "$file" -ac 2 "/path/to/output_directory/$(basename "${file%.*}_stereo.mp3")"; done
Notez que, tout comme la réduction du débit binaire, vous perdez des informations lors de la conversion stéréo en mono. Les pistes gauche et droite seront fusionnées et ne seront pas annulées si vous reconvertissez le fichier en stéréo ; la piste mono sera simplement dupliquée sur les canaux droit/gauche.
Renommer les fichiers par lots
La commande ci-dessous ajoute la chaîne _renommé au nom de fichier de tous les fichiers MP3 d'un répertoire :
for file in /path/to/source_directory/*.mp3; do cp "$file" "/path/to/output_directory/$(basename "${file%.*}_renamed.mp3")"; done
Si vous convertissez ou renommez régulièrement des fichiers audio en masse sous Linux, vous pouvez ajouter ces commandes à un script Bash pour une réutilisation pratique.
Linux est une excellente plate-forme pour l'édition audio
Si vous cherchez à aller au-delà de la simple conversion audio en masse, vous pouvez apprendre à créer votre propre musique sous Linux ou à héberger votre propre serveur de radio en streaming.