[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [shell-script] Script p/ copiar e transformar faixas de cd's em MP3
From: |
Eliphas Levy Theodoro |
Subject: |
Re: [shell-script] Script p/ copiar e transformar faixas de cd's em MP3 |
Date: |
Sun, 31 Mar 2002 04:53:25 -0300 (BRT) |
<conversa fiada>
Ola' lista! Depois de um bom tempo MUITO ocupado, voltei. Prometo ficar
um pouquinho menos ocupado agora e dar uma mao ':)
</conversa fiada>
Agora vamos comecar a diversao.
rodrigovianarj, @ 23/02/02 - 20:11:
> Estava precisando de um script q copiasse as faixas de um cd e
> depois as convertesse p/ MP3 utilizando os programas Cdparanoia e
> Bladeenc respectivamente. Eu pensei no seguinte esquema :
>
> 1- O script perguntaria a quantidade de faixas do cd
> 2- Armazenaria essa informação numa variável ( total_faixas )
> 3- Utilizando um loop de 1 até total_faixas executaria o comando :
> cdparanoia -v "numero_da_faixa"
> 4- Por meio de outro loop renomeasse os arquivos p/ faixa_01.cdda,
> faixa_02.cdda, faixa_03.cdda .... faixa_n.cdda.
> 5- Por último convertesse esses arquivos p/ MP3, utilizando loop como
> no passo 3 :
> bladeenc faixa_01.cdda
> bladeenc faixa_02.cdda
> bladeenc faixa_n.cdda
>
> O comando FOR seria o indicado p/ essas tarefas ???
> Quebrei a cabeça tentando mas como não tenho prática em
> programação acabei desistindo. Ficarei grato se alguém puder me
> ajudar pois também estará me ajudando a aprender programação em
> shell.
O comando FOR, ou WHILE, ou qualquer coisa que faca loop e' indicado ':)
Por coincidencia, eu acabei de fazer algo pra isso (comprei cd novooo
hehe) Mas uso o LAME como encoder. Da' pra adaptar pro bladeenc ou
melhor ainda, use o LAME. Tem muito mais opcoes.
http://www.eliphas.brturbo.com/ripcd.sh
Mas vamos la', pronto nao tem graca nenhuma.
Precisamos saber o numero de faixas. O cdparanoia diz isso, e' so' usar.
TRACKS=`cdparanoia -d /dev/hdb -Q | tac | sed -n 3 '{s/^ *//;s/\..*//;p;}'`
Hmm, ja' temos a quantidade de trilhas. Vamos fazer um loop usando o SEQ
e o FOR:
SEQ=`seq $TRACKS`
for TRACK in $SEQ; do
cdparanoia -d /dev/hdb $TRACK tmpfile.wav
lame tmpfile.wav track$TRACK.mp3
done
rm tmpfile.wav
Pronto, teu script se resume a isso!
Eu queria fazer algo mais xique, pegando informacoes como nome de
musica e autor no banco de dados CDDB e tal, mas nao achei como ler
o CD em shell... Ficou pra depois ':(
--
Eliphas
Anyone sending unsolicited bulk email (UBE, SPAM) to this address will
be charged a $25 handling fee plus a $5 network traffic fee per
started kilobyte. By extracting my address from this message or its
header, you agree to these terms.
Nevertheless, spammers trying to auto-extract addresses from this
message will definitely want to include address@hidden, address@hidden,
and address@hidden