Conversion de fichiers musicaux : introduction et partie 1
mardi 8 juillet 2008 par André Salaün
Sommaire
Introduction
Parfois on veut convertir rapidement un lot de fichiers musicaux vers d’autres formats, en général du wav vers des formats compressés ; parfois d’un format compressé vers un autre et plus rarement d’un format compressé vers un *.wav.
Voilà quelques façons de faire. Si vous en connaissez d’autres plus intelligentes, efficaces ou meilleures n’hésitez pas à le signaler.
Attention cependant les pertes de qualité occasionnées par les compressions ne sauraient être récupérées par un retour en *.wav. Ce qui est perdu est perdu.
Pire, si on additionne les compressions on additionne aussi les pertes. Donc il vaut mieux dans un premier temps ne pas trop compresser et utiliser le format qui impose le moins de perte voire aucune.
Les méthodes ci-dessous convertiront les fichiers du répertoire courant sans effacer les originaux en respectant les noms des fichiers, qu’ils aient des espaces ou pas : il faut donc lancer la commande après s’être placé dans le répertoire contenant les fichiers à convertir.
Installer les programmes
# urpmi lame vorbis-tools flac mpg123 mp32ogg mplayer mencoder sox wavpack
Rechercher et coder un fichier wav...
Le principe est simple : on copie tous les fichiers wav dans un répertoire de travail (on conserve donc les originaux en cas d’erreur) puis on applique les méthodes suivantes.
On peut aussi les rechercher et les copier en utilisant find et un pipe avec xargs. Par exemple pour chercher tous les *.wav (ou *.WAV ou *.Wav etc.) de son /home et les copier dans un répertoire de travail nommé « musique »
find $HOME -iname "*.wav" -print0 | xargs -i -0 cp "{}" $HOME/musique/
...vers un *.mp3
for i in *.wav; do lame "$i" "${i%wav}mp3"; done
Donnera un mp3 basique de piètre qualité à 128 kbps mais léger. Environ 1/11 du wav : 1,9 Mo pour un wav de 21 Mo.
for i in *.wav; do lame "$i" -h -b 192 "${i%wav}mp3"; done
Ça sera un peu mieux à 192 kbps et un peu plus lourd. Environ 1/7 du wav : 2,9 Mo pour un wav de 21 Mo.
for i in *.wav; do lame "$i" --preset insane "${i%wav}mp3"; done
Beaucoup plus lourd mais bien bien meilleur à 320 kbps. Un peu plus de 1/4 du wav : 4,8 Mo pour un wav de 21 Mo.
Pour plus de finesse et d’ options : man lame
...vers un *.ogg
Là c’est très difficile !
oggenc *.wav
Codera les wav du dossier courant en ogg en respectant leurs noms dans une qualité moyenne (3 par défaut)
oggenc -q10 *.wav
Codera les wav du dossier courant en ogg de haute qualité (10 est la plus haute donc le plus gros fichier). On peut aussi utiliser l’option -b pour bitrate comme avec lame. L’option -q (qualité) n’est pas documentée dans la page de manuel.
man oggenc
Tableau du rapport qualité / débit à 44,1 kHz (merci Wikipedia)
| -q-1 | 45 kb/s | |
| -q0 | 64 kb/s | |
| -q1 | 80 kb/s | |
| -q2 | 96 kb/s | |
| -q3 | 112 kb/s | |
| -q4 | 128 kb/s | |
| -q5 | 160 kb/s | |
| -q6 | 192 kb/s | |
| -q7 | 224 kb/s | |
| -q8 | 256 kb/s | |
| -q9 | 320 kb/s | |
| -q10 | 500 kb/s |
...vers un *.flac
Flac comme oggenc est d’usage très simple.
flac --best *.wav
Codera en *.flac avec le meilleur compression ( = 8), l’option « --fast » la plus basse et sans option la compression par défaut est de 3.
Si un fichier *.flac existe dans le répertoire il faut ajouter l’option « -f » pour autoriser flac à l’écraser. L’option -b existe aussi avec les valeurs 192, 576, 1152, 2304, 4608, 256, 512, 1024, 2048, 4096.
man flac
...vers wavpack (*.wv)
Wavpack fonctionne ici sans perte (lossless). Comme flac et oggenc il accepte les listes de noms de fichiers en argument :
wavpack *.wav
donnera des *.wv par defaut
wavpack -h *.wav
pour une plus haute qualité (de compression)
wavpack -hh *.wav
comme ça c’est encore mieux.
wavpack -x5 *.wav
L’option -x ajoute des filtres avec des valeurs de 1 à 6.
De 4 à 6 ; ça devient lent et même très lent à 6. Si on veut écraser un fichier *.wv déjà présent on peut passer l’option -y (pour yes) mais attention elle répond oui à tous les avertissements. Autrement il faudra répondre yes ou no à chaque message d’ avertissement.
Pour en savoir plus sur les autres modes (avec perte) dont le mode hybride :
wavpack —help
Quelques liens :
