Pagine

venerdì 3 gennaio 2014

Converti WMA to MP3

convertiWMAtoMP3.sh
#!/bin/bash
# wma to mp3
# NB: utilizzare per debug: !/bin/bash -x

#lame --preset 192 --replaygain-accurate --tt "$NOMEBRANO" --ta "$ARTISTA" $BRANO "$DIRTEMP/$NOMEBRANO".mp3
#lame -m s: for stereo mp3 output
#lame -m s V 3-4-5: for stereo mp3 output with VBR"

#wmafile=$1
#wavfile=$(echo $wmafile | sed -e s/wma/wav/)
#mp3file=$(echo $wmafile | sed -e s/wma/mp3/)
#mplayer -ao pcm -aofile "$wavfile" "$wmafile"
#lame "$wavfile" "$mp3file"
#rm "$wavfile"

CMDLAME="lame -m s --preset 192 --replaygain-accurate --nohist"
CMDMPLAYER="mplayer -ao pcm:file="
DIROUT="/multimedia/out_MUSICA/"

if [ -d "$DIROUT" ]; then
echo "Directory $DIROUT esiste già.";
else
mkdir -p "$DIROUT";
echo "Directory $DIROUT creata.";

find . -iname "*.wma" -type f -exec cp -v "{}" "$DIROUT"  \;
find . -iname "*.wav" -type f -exec cp -v "{}" "$DIROUT"  \;
find . -iname "*.mp3" -type f -exec cp -v "{}" "$DIROUT"  \;
fi

cd $DIROUT


echo "=======================================================[ WMA --> MP3 ]"
ls *.[Ww][Mm][Aa] > lista.txt
contafileWma=0

row=0
lns=`wc -l lista.txt`
maxrow=`expr "$lns" : '\([0-9]*\)'`
while [ "$row" -lt "$maxrow" ]; do
let row=row+1
tmp=`head -n $row lista.txt | tail -n 1`

if [ -n "$tmp" ]; then
tmpWav="${tmp%.[Ww][Mm][Aa]}.wav"
tmpMp3="${tmp%.[Ww][Mm][Aa]}.mp3"

doppio=1
while [ -f "$tmpMp3" ]; do
doppio=$(($doppio+1))
tmpMp3="${tmp%.[Ww][Mm][Aa]}_$doppio.mp3"
done

let contafileWma=contafileWma+1
echo "[ $contafileWma ]=================[ $tmp --> $tmpMp3 ]======"

$CMDMPLAYER"$tmpWav" "$tmp" && $CMDLAME "$tmpWav" -o "$tmpMp3"

if [ "$?" -eq "0" ]; then
rm "$tmpWav";
rm "$tmp";
else
echo "!!! ERRORE WMA --> MP3 !!!";
exit 1;
fi
fi
done



echo "=======================================================[ WAV --> MP3 ]"
ls *.[Ww][Aa][Vv] > lista.txt
contafileWav=0

row=0
lns=`wc -l lista.txt`
maxrow=`expr "$lns" : '\([0-9]*\)'`
while [ "$row" -lt "$maxrow" ]; do
let row=row+1
tmp=`head -n $row lista.txt | tail -n 1`

if [ -n "$tmp" ]; then
tmpMp3="${tmp%.[Ww][Aa][Vv]}.mp3"

doppio=1
while [ -f "$tmpMp3" ]; do
doppio=$(($doppio+1))
tmpMp3="${tmp%.[Ww][Aa][Vv]}_$doppio.mp3"
done

let contafileWav=contafileWav+1
echo "[ $contafileWav ]=================[ $tmp --> $tmpMp3 ]======"
$CMDLAME "$tmp" -o "$tmpMp3"

if [ "$?" -eq "0" ]; then
rm "$tmp";
else
echo "!!! ERRORE WAV --> MP3 !!!";
exit 1;
fi
fi
done

rm lista.txt

echo "======================================================="
echo "Sono stati convertiti:"
echo " > $contafileWma wma"
echo " > $contafileWav wav"
echo "======================================================="
exit 0;

Nessun commento:

Posta un commento