MlX [MdvMondeLinuX]
Fichiers musicaux

Conversion de fichiers musicaux : introduction et partie 1

Coder un fichier wav.

mardi 8 juillet 2008 par André Salaün

Mp3, ogg, wav, flac, wma, wavpack d’accord mais comment passer de l’un à l’autre ?

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

(destructif)

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

(destructif)

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)

Qualité
Débit
-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

(non destructif)

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)

(non destructif)

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 :

Wikipedia
Le site
Le manuel

Pour le *.wma oubliez, c’est propriétaire et pire (malgré la propagande massive) que le mp3, on se contentera donc de le décoder plus loin et pourquoi pas du RealPlayer pendant qu’on y est ?

Accueil du site | Contact | Plan du site | Espace privé | Statistiques | visites : 19811

Suivre la vie du site fr  Suivre la vie du site Trucs et astuces   ?

Site réalisé avec SPIP 1.9.2d + ALTERNATIVES

Creative Commons License