WMA2MP3
De DocUnix.
Conversion de fichier wma en mp3 sous Linux
N'ayant rien trouvé qui fonctionne sur ma machine en fr.UTF-8, avec espaces, caractères accentués, etc... Je me suis inspiré des scripts suivants:
Et j'en ai fait le script perl suivant à suavegarder en wma2mp3.pl:
#!/usr/bin/perl -w
use strict;
use utf8;
my(@args);
foreach my $file (@ARGV) {
next if ($file !~ /.wma$/i);
my $filequote = quotemeta $file;
my $mp3 = $filequote; $mp3 =~ s/.wma$/.mp3/i;
my $wav = $filequote; $wav =~ s/.wma$/.wav/i;
#utilisation de mplayer pour encoder le .wma en .wav
system("mplayer -vo null -vc dummy -af resample=44100 -ao pcm:file=$wav $filequote") == 0
or die "system mplayer -vo null -vc dummy -af resample=44100 -ao pcm:file=$wav $filequote failed: $?";
#utilisation de lame pour encoder .wav en .mp3
system("lame -m j -h --vbr-new -b 192 $wav $mp3") == 0
or die "system lame -m j -h --vbr-new -b 192 $wav $mp3 failed: $?";
system("rm -f $wav") == 0
or die "system rm -f $wav $?";
#affichage du message de fin
print "$filequote converti en mp3\n";
}
A l'heure actuelle, il doit être posé dans le répertoire dans lequel on souhaite faire la conversion de format. Et pour le lancer taper la commande perl ./wma2mp3.pl *.wma pour convertir tous les fichier wma du répertoire en mp3.
Je l'ai testé, il fonctionne parfaitement, en passant en paramètre *.mwa dans un répertoire.
A mon sens, il est possible de nettement l'améliorer en précisant en paramètre le répertoire source, le répertoire de destination. Il faudrait ne pas se baser sur l'extension du fichier en mwa, mais sur son "magic number", ajouter possibilité de régler les échantillonnages, etc...

