Script para ripar CDs de audio e codificar as faixas para MP3
Publicado por Luís Fred 28/03/2007
[ Hits: 5.691 ]
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
Implementando a famosa hélice ASCII
Automatizando autenticação do Speedy Business
PDSHELL - Leia seus PDFs organizados em uma só pasta!
Script para captura de campos de formulário com conversão URL encode.
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
Não to conseguindo resolver este problemas ao instalar o playonelinux (1)
Excluir banco de dados no xampp (1)
[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