vamos por partes:
o script que passei para você não funcionou porque ele busca por arquivos com a extensão .mp3 ou .MP3, repare que a sua esta em .wma (esse script foi somente para você ter uma ideia, não para usá-lo realmente)
for musica in *.{mp3,MP3}
para variável que chamei de musica nos formatos mp3 e MP3
eu defini as configurações para abr com 128k 44.1KHz, essas são as opções que uso como padrão, porem você poderia fixar as seguintes opções:
- -b para constante, -abr para médio e -V para fixo;
- um dos seguintes valores de bitrate para cbr ou abr 32, 64, 128, 160, 192, 224, 320 ou entre 0 e 9 para vbr;
- 32KHz, 44.1KHz ou 48KHz.
o resultado é esse: lame --abr 128 -q 0 -c -p -m a --resample 44.1 --strictly-enforce-ISO arquivo_em_mp3 arquivo_em_mp3_novo
explicando a sintaxe: lame é o conversor, --abr 128 a qualidade que desejo. -q 0 -c -p -m a opções diversas, --resample 44.1 para deixa-las com 44.1Khz. voce poderia usar simplesmente um lame -b 192 arquivo_antigo arquivo_novo mas teria que fazer musica por musica.
caso deseje usar uma janela para escolher as opções, basta usar este
#!/bin/bash
codificacao=$(zenity --entry --text "Digite o tipo de codificação:\ndigite -b para cbr (taxa de bits constante)\ndigite --abr para abr (taxa de bits media)\ndigite -V para vbr (taxa de bits variavel)\n"); echo $codificacao
bitrate=$(zenity --entry --text "Digite o valor do bitratre:\ndigite 32, 64, 128, 160, 192, 224 ou 320 para cbr ou abr\ne de 0 a 9 para vbr, 0 melhor e 9 pior\n"); echo $bitrate
freq=$(zenity --entry --text "Digite o valor da frequencia:\n32, 44.1 ou 48\npadrão 44.1\n"); echo $freq
for musica in *.{mp3,MP3}
do lame $codificacao $bitrate -q 0 -c -p -m a --resample $freq --strictly-enforce-ISO "$musica" "nova-$musica"
done
quanto ao script do vivaolinux, repare que primeiramente ele converte as letras da extensão para minuscula (.wma)
current_directory=$( pwd )
for i in *.wma; do mv "$i" `echo $i | tr ' ' '_'`; done
for i in *.[Ww][Mm][a]; do mv "$i" `echo $i | tr '[A-Z]' '[a-z]'`; done
depois converte para wav e depois para mp3
for i in *.wma ; do mplayer -vo null -vc dummy -af resample=44100 -ao pcm -waveheader $i && lame -m s audiodump.wav -o $i; done
essa parte não entendi muito bem
for i in *.wma; do mv "$i" "`basename "$i" .wma`.mp3"; done
e essa manda remover o arquivo audiodump.wav
rm audiodump.wav
____________________________________________________________________
nos dois scripts não é necessário digitar no terminal "script nome da musica", apenas o script, já que os próprios scripts vão buscar pelos arquivos recursivamente. a parte que realmente importa em ambos são essas
lame --abr 128 -q 0 -c -p -m a --resample 44.1 --strictly-enforce-ISO musica_antiga musica_nova
mplayer -vo null -vc dummy -af resample=44100 -ao pcm -waveheader musica
acho que me prolonguei um pouco, leia e diga se ficou com alguma duvida.