web-dev-qa-db-fra.com

Comment convertir ma collection de musique FLAC en Apple Lossless?

J'ai une collection de musique de taille raisonnable que je conserve au format FLAC sur mon ordinateur portable Ubuntu. J'aimerais commencer à jouer cette musique sur mon Mac et la synchroniser à partir de là sur mon iPod. Les gens ont suggéré que la meilleure façon de faire est de convertir ma collection à ALAC, et j'ai décidé que c'était ce que je voulais faire.

Avant de plonger et d'écrire des scripts Shell personnalisés appelant ffmpeg via une commande complexe find, je pensais que je demanderais conseil.

Comment puis-je convertir au mieux ma collection FLAC existante en ALAC, sans perte de qualité audio et en préservant toutes les métadonnées?

13
jml

avconv (ou ffmpeg, dont avconv est un fork) peut le faire depuis la ligne de commande:

avconv -i input.flac -c:a alac output.m4a

Il devrait préserver les métadonnées par lui-même.

Pour faire chaque flac dans un répertoire:

for f in ./*.flac; do avconv -i "$f" -c:a alac "${f%.*}.m4a"; done

Pour faire chaque flac de manière récursive (dans le répertoire en cours et tous les sous-répertoires):

shopt -s globstar
for f in ./**/*.flac; do avconv -i "$f" -c:a alac "${f%.*}.m4a"; done

Si vous avez les flacs dans les fichiers ogg ou quelque chose, changez évidemment ./*.flac en ./*.ogg.

Je pense que cela devrait fonctionner avec avconv/ffmpeg à partir des référentiels (car ALAC est publié sous la licence Apache et peut être distribué légalement), bien que la version de medibuntu soit installée.

Si vous souhaitez vous débarrasser des fichiers d'origine, vous pouvez mettre rm dans la boucle. Cette version utilise l'indicateur -n pour avconv. Elle ne remplacera donc aucun fichier ALAC existant. Utiliser && AU LIEU DE ; signifie que si avconv s'arrête avec une erreur, le fichier FLAC d'origine ne sera pas supprimé:

for f in ./*.flac; do avconv -n -i "$f" -c:a alac "${f%.*}.m4a" && rm "$f"; done

Notez que la suppression de fichiers avec rm est irréversible (en dehors de la récupération de données médico-légales), soyez donc prudent lorsque vous l’utilisez.

21
evilsoup