Extrator de CD's para MP3
Publicado por Bryan Garber da Silva 05/07/2008
[ Hits: 5.863 ]
Homepage: bgarber.notapipe.org/blog
Comecei este script quando ainda estava aprendendo Shell-Script, como um teste aos meus conhecimentos.Hoje peguei ele, dei umas melhoradas, corrigi alguns erros, adicionei algumas coisas e aí está ele.
Sei que ainda posso otimizar alguma coisa, mas, por hora, estou satisfeito com ele assim.
Para poder executá-lo, você precisa ter disponíveis os seguintes comandos:
* cdparanoia (provavelmente já tenha instalado, mas é bom verificar)
* id3v2 (edição de id3tag)
* lame (para encodar as mp3).
#-------------------------------------------------------------------# #++++++++++++ Script para rippar um cd para mp3 ++++++++++++++++++++# #++++++++++++ Autor: Bryan Garber da Silva +++++++++++++++++++++++++# #++++++++++++ Data: 28 de Janeiro de 2007 ++++++++++++++++++++++++++# #-------------------------------------------------------------------# #/bin/sh echo "Encoder para rippar um CD para mp3!" echo "Escrito por Bryan Garber da Silva." echo "! Este Script utiliza o cdparanoia para extrair !" echo "! as faixas, o lame para passar para mp3 e o !" echo "! id3tag para salvar informacoes do CD. Antes !" echo "! de continuar, certifique-se de que estas tres !" echo "! ferramentas estejam instaladas em seu computador. !" echo "" echo "Escolha uma opcao:" echo "1 - Colocar as mp3 em arquivos separados;" echo "2 - Colocar todas as faixas numa mesma mp3;" echo "Ou digite qualquer coisa para sair... =P" echo "" read opcao #echo $opcao lame=lame id3tag=id3v2 if [ $opcao -eq 1 ]; then echo "cdparanoia -B" cdparanoia -B echo "Faixas do CD copiadas." echo "" echo "Agora vamos escolher um bitrate para as mp3." echo "Bitrate define a qualidade final das musicas." echo "Quanto maior este valor, melhor a qualidade," echo "em compensacao, o arquivo final fica maior." echo "Em geral, eh usado 128, mas voce pode escolher" echo "um desses valores:" echo "" echo "128 - O mais usado. Qualidade super boa." echo "256 - Faz diferenca do 128 somente para ouvidos mais sensiveis para a musica." echo "0 - Para usar VBR. O computador otimiza a qualidade da musica para se ter" echo " excelente qualidade quando eh necessario. O meu preferido." echo "" read qualidade #echo $qualidade if [ $qualidade -eq 128 ]; then for file in `ls *.wav`; do echo "Digite o nome do arquivo mp3: " read arquivo echo "lame $file $arquivo" $lame $file "$arquivo" echo "" echo "Digite o nome da música:" read musica echo "Numero desta faixa:" read track echo "Algum comentario (0 para nenhum):" read coment case $coment in 0) $id3tag -2 --song="$musica" --track=$track "$arquivo";; *) $id3tag -2 --song="$musica" --track=$track --comment="$coment" "$arquivo";; esac done elif [ $qualidade -eq 256 ]; then for file in `ls *.wav`; do echo "Digite o nome do arquivo mp3: " read arquivo echo "lame -b 256 $file $arquivo" $lame -b 256 $file "$arquivo" echo "" echo "Digite o nome da música:" read musica echo "Numero desta faixa:" read track echo "Algum comentario? (0 para nenhum)" read coment case $coment in 0) $id3tag --song="$musica" --track=$track "$arquivo";; *) $id3tag --song="$musica" --track=$track --comment="$coment" "$arquivo";; esac done elif [ $qualidade -eq 0 ]; then for file in `ls *.wav`; do echo "Digite o nome do arquivo mp3: " read arquivo echo "lame --vbr-new $file $arquivo" $lame --vbr-new $file "$arquivo" echo "" echo "Digite o nome da música:" read musica echo "Numero desta faixa:" read track echo "Algum comentario (0 para nenhum):" read coment case $coment in 0) $id3tag --song="$musica" --track=$track "$arquivo";; *) $id3tag --song="$musica" --track=$track --comment="$coment" "$arquivo";; esac done fi echo "Agora vamos especificar algumas informacoes sobre" echo "o album rippado." echo "Artista/Banda:" read artista echo "Album:" read album echo "Número do gênero (execute id3v2 -L para uma lista dos gênenros com seus correspondentes números):" read genero echo "Ano:" read ano echo "" $id3tag --artist="$artista" --album="$album" --genre=genero --year=$ano *.mp3 elif [ $opcao -eq 2 ]; then echo "cdparanoia" cdparanoia echo "CD copiado." echo "" echo "Agora vamos escolher um bitrate para as mp3." echo "Bitrate define a qualidade final das musicas." echo "Quanto maior este valor, melhor a qualidade," echo "em compensacao, o arquivo final fica maior." echo "Em geral, eh usado 128, mas voce pode escolher" echo "um desses valores:" echo "" echo "128 - O mais usado. Qualidade super boa." echo "256 - Faz diferenca do 128 somente para ouvidos mais sensiveis para a musica." echo "0 - Para usar VBR. O computador otimiza a qualidade da musica para se ter" echo " excelente qualidade quando eh necessario. O meu preferido." echo "" read qualidade #echo $qualidade if [ $qualidade -eq 128 ]; then arquivo=`ls *.wav` echo "Digite o nome do arquivo mp3: " read mp3_nome echo "lame $arquivo $nome" $lame --vbr-new $arquivo $mp3_nome echo "" echo "Um nome para colocar na id3tag:" read nome echo "Algum comentario (0 para nenhum):" read coment case $coment in 0) $id3tag --song="$nome" --track=$track;; *) $id3tag --song="$nome" --track=$track --comment="$coment";; esac elif [ $qualidade -eq 256 ]; then arquivo=`ls *.wav` echo "Digite o nome do arquivo mp3: " read mp3_nome echo "lame -b 256 $arquivo $nome" $lame --vbr-new $arquivo $mp3_nome echo "" echo "Um nome para colocar na id3tag:" read nome echo "Algum comentario? (0 para nenhum)" read coment case $coment in 0) $id3tag --song="$nome" --track=$track;; *) $id3tag --song="$nome" --track=$track --comment="$coment";; esac elif [ $qualidade -eq 0 ]; then arquivo=`ls *.wav` echo "Digite o nome do arquivo mp3: " read mp3_nome echo "lame --vbr-new $arquivo $mp3_nome" $lame --vbr-new $arquivo $mp3_nome echo "" echo "Um nome para colocar na id3tag:" read nome echo "Algum comentario (0 para nenhum):" read coment case $coment in 0) $id3tag --song="$nome" --track=$track;; *) $id3tag --song="$nome" --track=$track --comment="$coment";; esac fi echo "Agora vamos especificar algumas informacoes sobre" echo "o album rippado." echo "Artista/Banda:" read artista echo "Album:" read album echo "Número do gênero (execute id3v2 -L para uma lista dos gênenros com seus correspondentes números):" read genero echo "Ano:" read ano echo "" $id3tag --artist="$artista" --album="$album" --genre=genero --year=$ano *.mp3 else echo "Nada a fazer..." fi echo "Quer que eu limpe a bagunça (remover TODOS os .wav)?" echo "ATENÇÂO: dizendo SIM, eu vou executar um rm -f *.wav, portanto cuidado!" echo "" echo "[S/n]:" read resposta if [ $resposta = "S" ] || [ $resposta = "s" ]; then rm -f *.wav fi
Criar imagem ISO a partir de CD
Compactar e descompactar arquivos de forma simples
Instalador de novas versões do Java no Debian
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Como renomear arquivos de letras maiúsculas para minúsculas
Imprimindo no formato livreto no Linux
Vim - incrementando números em substituição
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
É cada coisa que me aparece! - não é só 3% (1)
Alguma pessoa pode me ajudar com drriver Core i3 7020u (Debian 12)? (2)
Mikrotik não mostra bytes nem packtes (1)
Melhores Práticas de Nomenclatura: Pastas, Arquivos e Código [RESOLVID... (4)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta