encodage mp3 par lot
23/11/06 à 21:34 pratique
Le logiciel nécessaire est Lame, un encodeur audio capable de transformer un fichier wav en mp3, décoder un mp3 en wav, mais également réencoder de mp3 vers mp3.
Pour avoir la liste des commandes de lame, ouvrir une fenêtre de commande, et taper :
lame --longhelp > lamedoc.txt
Ce qui va créer un fichier lamedoc au format texte avec la documentation fournie
Voila la commande de base pour transformer un wav en mp3 (128 kbps) :
lame fichier.wav fichier.mp3
Evidemment on peut l'adapter à ses besoins en changeant les commandes optionnelles, mais ce qui nous intéresse ici, c'est de traiter des fichiers par lot. Constituons un fichier batch qui transforme tous les fichiers wav trouvés dans un répertoire en mp3 (128kbps, joint stereo) et les enregistre dans un sous dossier "ok".
@ECHO OFF
FOR %%I IN (*.wav) DO CALL :conversion %%I
GOTO :fin
:conversion
ECHO conversion de %1
lame %1 ok/%1.mp3
GOTO :eof
:fin
ECHO tous les fichiers ont ete traites...
MD ok : création du sous répertoire
FOR ... DO conversion : appliquer le sous programme 'conversion' à chaque fichier du répertoire se terminant par '.wav'
lame %1 ok/%1.mp3 : %1 représente le nom du fichier en cours, et ok/%1.mp3 le nom du nouveau fichier (nom d'origine + extension mp3)
Maintenant il suffit de copier ce fichier 'encoder_wav_en_mp3.bat' dans le répertoire, de double-cliquer et l'opération est lancée!
On peut configurer l'encodage en remplacant la ligne "lame ...", faire du réencodage de mp3 en changeant l'extension des fichiers traités dans la boucle, etc. Voila la ligne de commande que j'utilise pour réencoder les fichiers d'interviews (le but au départ!) en mp3, 48 kbps CBR, mono en ajoutant des métadonnées id3v1 et id3v2
lame -a --cbr -b 48 --add-id3v2 --tt "%1" --tl "balise album" --ta "balise artiste" --ty 2006 --tc "balise commentaire" --tg 101 %1
ok/%1
-a : mixe les canaux stereo en une seule piste mono
--cbr -b 48 : définit un bitrate constant, fixé à 48 kbps
--add-id3v2 : force l'ajout de balises id3v2 en plus des balises id3v1
-tt : balise de titre, ici c'est le nom du fichier
-tl, -ta, -ty, -c : balises album, artiste, année, commentaire (les guillemets sont nécessaires quend les balises contiennent des espaces)
-tg : balise définissant le 'genre' de musique, ici c'est 101 pour 'speech'
%& ok/%1 : nom du fichier d'origine, nom du fichier de destination (le même nom dans le nouveau répertoire)
Pour en savoir plus sur Lame l'encodeur open-source : voir la page du projet sur sourceforge
Si cet article vous a été utile, aidez à le faire connaître en deux clics : en lui ajoutant une "mark" sur tutmarks (en cliquant sur le chiffre dans le rond bleu!)



Commentaires
Énorme ! Merci beaucoup pour ce tuto' ! C'est extrêmement pratique !
impossible de faire fonctionner Lame en ligne de commande,XP ne le reconnait pas!
que faut-il faire, car Xp chez moi ne reconnait presque jamais les programmes en ligne de commande?
Je voudrais traiter par lot,,une importante collection de K7 audio ( 150K7 90Mn)capturée en wav
@chichoi52 : As tu essayé de placer lame dans le répertoire avec les fichiers à traiter, tu pourras alors vérifier qu'il est bien reconnu, par exemple avec la commande "lame --help", si tu obtiens l'aide de lame, c'est que ça fonctionne!
Salut,
Est-il possible de modifier les tags d'un fichier MP3 sans obligatoirement le ré-encoder ?
J'ai testé avec simplement la commande :
lame --ta "artiste" fichier.mp3
mais cela fait quand même une copie du fichier. Alors que je voudrais directement faire les modifications sur le fichier source.
Merci pour ton aide.
@Adau : non, je ne pense pas que lame soit capable de tagger sans réencoder, il faut plutot utiliser id3tool (tags id3v1) ou id3 mass tagger
Merci pour les liens, c'est exactement ce que je cherchais.
Par contre, j'ai testé id3 mass tagger et je n'arrive pas à tagger mes musiques.
Il est bien installé puisque la commande id3 -h marche par exemple (pour afficher l'aide), mais quand j'exécute un simple id3 -t "toto" musique.mp3 il ne modifie rien.
Saurais-tu d'où vient le problème ?
Adau, précises dans ta commande si tu veux modifier les id3 v1 ou v2 ou les deux, pour modifier les deux, ça donne : id3 -1 -2 -t "toto" musique.mp3
Bonjour j'ai un souci,
certains de mes fichiers ne sont pas convertis, je ne sais pas pourquoi pourtant ils sont aussi au format wav...j'aimerais savoir comment dire dans mon script que si la conversion s'est mal effectuée alors mettre le fichier wav dans un autre repertoire ?
Merci d'avance
@ David : est ce que l'extension ".wav" est bien en minuscule ? Ca peut expliquer pourquoi ils ne sont pas convertis, sinon regarde leurs caractéristiques (48 kHz / 44.1 kHZ, mono / stereo, etc.) Essaye aussi d'en convertir un sans passer par le traitement par lot, peut-être que le message d'erreur donnera des indications. Sinon, je ne sais pas te dire comment traiter dans ton script les problèmes de conversion.
Ajouter un commentaire