Script para ripar CDs de audio e codificar as faixas para MP3
Publicado por Luís Fred 28/03/2007
[ Hits: 5.923 ]
Este é um script básico que extrai todo o conteudo de um CD de áudio e em seguida converte as faixas para o formato MP3.
O script usa o 'dialog' para se comunicar com o usuário através de caixas de texto, tornando-o mais interativo e interessante.
NOTA: Você vai precisas do "lame" e do "cdparanoia" instalados na máquina
#!/bin/bash #---------------------------------------------------------------# # Script para ripar CDs de audio convertendo os arquivos em MP3 # # Por Luís Fred <fred.alphax@gmail.com> # #---------------------------------------------------------------# M1="Este script ripa um CD de audio inteiro convertendo as faixas para o formato MP3. Para que este script funcione corretamente, é necessário ter instalados na sua máquina o 'cdparanoia' e o 'lame'. O cdparanoia já vem por padrão acompanhando a maioria das distribuições Línux. Já no caso do lame, isto é menos frequente. Portanto você terá que verificar se estes componentes estão instalados na sua máquina e caso não estejam, você deverá instala-los antes de rodar o script. Se você é usuario da famosa ferramenta 'apt-get', use apt-get install cdparanoia lame. Isto irá instalar os compentes na sua máquina ou então acesse www.sourceforge.net, neste site você irá encontrar o cdparanoia e o lame" dialog --title "Ripar CD" --msgbox "$M1" 0 0 principal() { dialog --title "Ripar CD" \ --backtitle "É importante que você visualiza as informações do CD antes de ripa-lo." \ --radiolist "O que você deseja fazer?" 0 0 0 \ "1" "Visualizar informações do CD" off \ "2" "Esta opção lhe permite ripar todo o CD de audio" on 2> /tmp/check.tmp retval=$? if [ $retval = 1 ]; then exit 0 fi choice=$(cat /tmp/check.tmp) rm -f /tmp/check.tmp if [ "$choice" = "1" ]; then cdparanoia -Q 2> /tmp/infocd.tmp tail -f -n 40 /tmp/infocd.tmp > out & dialog --title "Ripar CD" --textbox out 0 0 rm -f out cdparanoia killall tail principal fi #---------------------------------------------------# if [ "$choice" = "2" ]; then clear #Ripa as faixas de audio separando-as em arquivos diferentes cdparanoia -s -B dialog --title "Ripar CD" --inputbox "Informe o nome do artista ou banda(use o caractere UNDERLINE para separar as palavras, docontrário o script irá gerar um ERRO) referente a esta faixa de áudio. Isto é importante, pois ajuda a identificar a origem da faixa de audio. Você pode fornecer para a faixa, informações como TITULO, ARTISTA, ANO DE LANÇAMENTO, etc:" 0 0 2> /tmp/info.tmp INFO=$(cat /tmp/info.tmp) rm -f /tmp/info.tmp clear echo "<< +CONVERTENDO FAIXAS DE AUDIO+ >>" for INFILE in *.wav do # converte as faixas ripadas lame -m s -a -q 2 --ta $INFO $INFILE $INFILE.mp3 dialog --title "Ripar CD" --inputbox "Entre com o novo nome para a faixa $INFILE.mp3. Especifique um nome diferente para cada faixa" 0 0 2> \ /tmp/novo_nome.tmp NOVO_NOME=$(cat /tmp/novo_nome.tmp) rm -f /tmp/novo_nome.tmp mv $INFILE.mp3 $NOVO_NOME.mp3 done fi ######################################################################### echo "<< +APAGANDO ARQUIVOS WAV...+ >>" rm -rf *.wav ########################################################################## dialog --title "Ripar CD" --backtitle "Seu CD foi ripado com sucesso. Você pode usar agora seu tocador de mp3 favorito para executar as faixas sonoras. " \ --radiolist "\nDeseja executar as faixas de audio agora para checar a qualidade do audio? Caso deseje tocar as faixas, use CTRL + C para avançar\n" 0 0 0 \ "1" "Tocar agora" on \ "2" "Tocar depois" off 2> /tmp/tocarfaixas.tmp opc=$(cat /tmp/tocarfaixas.tmp) rm -f /tmp/tocarfaixas.tmp if [ "$opc" = "1" ]; then clear mpg123 -db *.mp3 # executa a função ripar_outrocd() ripar_outrocd fi if [ "$opc" = "2" ]; then ripar_outrocd fi #-------------------------------------# if [ "$choice" = "3" ]; then exit 0 fi } ripar_outrocd(){ dialog --title "Ripar Cd" \ --yesno "Deseja ripar outro CD?" 0 0 retval=$? if [ $retval = 0 ]; then principal fi if [ $retval = 1 ]; then exit 0 fi } principal exit 0
shieldscript - Script para defesa básica do seu GNU/Linux
Organizar seus arquivos por pastas
Remover arquivos com mais de "N" dias da Lixeira do Samba
Script para mostrar IP, usando zenity
Desktop Linux ganha novos apps enquanto IA invade o noticiário
Blender 5.0 Beta, Firefox 144 e avanço da IA dominam o dia no mundo Linux
Desktop Linux ganha fôlego enquanto distros refinam experiência e segurança
Wayland em alta, IA em debate e novos ventos para distros e devices
Qt 6.10 e Python 3.14 puxam o ritmo do software livre nesta quarta
Como mudar o nome de dispositivos Bluetooth via linha de comando
Adicionando o repositório backports no Debian 13 Trixie
Linux x Plataformas de Trading - um problema (in-)solúvel? (3)
Ubuntu 25.10 - Erro ao iniciar o Omnissa Horizon (2)