Estarei demontrando como transformar seus arquivos de audio no formato WAV para MP3 utilizando o shell script.
Para dar prosseguimento ao post deve-se obrigatóriamente ter instalado o lame, que é o programa que executa a conversão dos arquivos WAV para MP3.
Para instalar o lame no ubuntu, execute a linha abaixo.
apt-get install lame
Para iniciar a utilização do lame sua sintaxe é simples.
lame <Origem.WAV> <Destino.MP3>
Abaixo um exemplo prático.lame "Musica com espaço mesmo.WAV" "Musica com espaço mesmo.mp3"
Caso1: Trabalho com gravações de segurança de audio, e minhas gravações estão começando a ocupar muito espaço em meu HD, preciso converter minhas gravações do formato *.WAV para o formato *.MP3.
Dificuldades do caso:
* Cada gravação está com 150Mb.
* Por dia eu faço 30 a 40 Gravações.
Solução:
#!/bin/bash
DIRIN="/home/douglas/Documentos/Gravacoes WAV/"
DIROUT="/home/douglas/Documentos/Gravacoes MP3/"
cd $DIRIN
contador="1";for i in *.wav;
do
echo "#############################################################################";
echo "---Convertendo arquivo $contador / $total";
contador=$(($contador+1));
echo "---Convertendo Arquivo -----------------------> $i"
lame "$i" "$i.mp3" #comando para a conversão
echo "Movendo arquivo $i para pasta mp3"
mv "$i.mp3" $DIROUT
echo "#############################################################################";
echo " ";
echo " ";
done
Assim está pronto um script para conversão automática dos arquivos WAV para MP3.
Agravante1:Não tenho como estimar o tempo até que a execução do script converta todos os arquivos *.WAV para *.MP3, para isso preciso de um contador, que fique sempre aparecendo na tela.
Solução2:
#!/bin/bash
DIRIN="/home/douglas/Documentos/Gravacoes WAV/"
DIROUT="/home/douglas/Documentos/Gravacoes MP3/"
cd $DIRIN
### Inicio do For para fazer a contagem dos arquivos.
total="0";
for i in *.wav;
do
total=$(($total+1)); #incrementando a variável $total
#echo "$total";
done
total="0";
for i in *.wav;
do
total=$(($total+1)); #incrementando a variável $total
#echo "$total";
done
##Fim do For de contagem
do
echo "#############################################################################";
echo "---Convertendo arquivo $contador / $total";
contador=$(($contador+1));
echo "---Convertendo Arquivo -----------------------> $i"
lame "$i" "$i.mp3" #comando para a conversão
echo "Movendo arquivo $i para pasta mp3"
mv "$i.mp3" $DIROUT
echo "#############################################################################";
echo " ";
echo " ";
done
Qualquer dúvida pergunte.