É possível reduzir ainda mais os tamanhos dos arquivos mp3, com pouca perda da qualidade. A utilidade deste procedimento é fazer com que uma quantidade maior deles caiba em dispositivos reprodutores antigos, com capacidade de armazenamento muito limitada.
Se você não se importa em ouvir toda a sua coleção de músicas em um dispositivo de som, com qualidade de rádio, esta é uma ótima ideia.
No primeiro post sobre este tema mostramos como fazer este trabalho através do LAME.
É claro que a redução tem um custo — a consequente redução da qualidade do áudio do arquivo. A gente aposta na possibilidade de esta queda na qualidade ser imperceptível para a maioria das pessoas e no aproveitamento mais eficiente do espaço na mídia de armazenamento. Houve caso de triplicar a quantidade de arquivos dentro de um pendrive antigo.
Atualmente, temos outras ferramentas que também podem fazer o trabalho e é possível criar um script de automação da tarefa bem menor e mais enxuto do que o do artigo anterior.
Vamos ver aqui como isto é possível.
Instalação das ferramentas de trabalho
Aqui vamos usar o GStreamer para fazer a conversão e resampleamento (resampling) dos arquivos mp3. A principal vantagem dele, em relação ao LAME, é que ele retém as informações id3 dos arquivos. Assim, podemos fazer um único script e menor.
Abra um terminal (Ctrl + Alt + T, no Ubuntu) e digite o comando que segue, para instalar gstreamer-tools:
sudo apt-get install gstreamer-tools
Aguarde alguns minutos enquanto o pacote é instalado e prossiga.
Como criar um script de conversão de arquivos de áudio mp3
Sugiro criar um diretório para scripts e programas no seu /home
:
mkdir ~/bin cd ~/bin
Agora abra o seu editor de textos preferido, copie e cole o script abaixo dentro dele:
#!/bin/bash # # gshrink - Um script para resamplear todos os arquivos mp3 do # diretorio. Este script depende do pacote gstremar-tools # Os créditos do script original: # Elder-Geek --> http://elder-geek.blogspot.com.br ###################################################### # Lita os arquivos mp3 no diretorio atual ls *.mp3 > mp3_list ls *.MP3 >> mp3_list # Analisa a lista de arquivos mp3 e substitui os espaços por caracteres de escape sed -i 's: :\\ :g' mp3_list # Verifica se o subdiretorio resample já existe. Se não, cria. if test -e ./resample then echo "diretorio/arquivo resample ja existe - apagar? (S/n)" read reply if [ "$reply" != "n" ] then rm -r resample mkdir resample else exit fi else mkdir resample fi # Resampleia cada mp3 e grava as tags # CBR bitrate bitrate=128 # VBR quality quality=9 cat mp3_list |while read song do echo "$song" gst-launch filesrc location= \"$song\" ! decodebin2 ! audioconvert ! lamemp3enc target=bitrate bitrate=128 ! id3v2mux ! filesink location=\"resample/$song\" done #clean up if test -e mp3_list then rm mp3_list fi if test -e tag2.txt then rm tag2.txt fi exit
Uma última dica
Para quem fez backup de todos os seus CD’s e guardou cada coletânea e álbum em pastas diferentes, recomendo executar o script dentro de cada pasta de arquivos mp3 – o que vai criar um subdiretório adicional resample
com os mesmos arquivos da pasta pai, só que resampleados e reduzidos, prontos para ir pra qualquer lugar.