Ripping cd supporto cdda (bash+perl)

Mer, 22/09/2004 - 02:49

Ripping cd supporto cdda (bash+perl)

Inviato da kripsio 5 commenti

Sono due file, un bash script ed un perl script... li scrissi supperggiu' un mese dopo che avevo preso in mano linux, sono molto grezzi ma li uso ancora con soddisfazione.
Se qualcuno vuole sistemarli ben venga ... forse un giorno lo faro' pure io :-P ...

converti_cd.sh

#inserire il proprio device
cdda2wav dev=/dev/hdd cddb=0 -B 
perl cambia_nomi.pl
chmod 777 cambia_nomi.sh
./cambia_nomi.sh
rm -fr cambia_nomi.sh
rm -fr *wav
rm -fr *inf
rm -fr audio*

cambia_nomi.pl

open(fileIN,"audio.cddb") or die("Non apro lettura");
@logData = <fileIN>;
close(fileIN);
$x=1;
foreach $line (@logData)
{
    chomp($line);
    $filtro=substr($line,0,6);
    if ($filtro eq "TTITLE"){
	if ($x<10){
	$titolo=substr($line,8);
	$titolo =~ s/\s/_/g;
	$titolo =~ s/\&/and/g;
	$titolo =~ s/\'/_/g;
	$titolo =~ s/\///g;
	$titolo =~ s/\(/_/g;
	$titolo =~ s/\)/_/g;
	$appoggio.="mv audio_0".$x.".wav 0".$x."-".$titolo.".wav\n";
	#$appoggio.="lame -h -b 192 0".$x."-".$titolo.".wav 0".$x."-".$titolo.".mp3\n";
	$appoggio.="oggenc -q 6 0".$x."-".$titolo.".wav\n";
	} else {
	$titolo=substr($line,9);
	$titolo =~ s/\s/_/g;
	$titolo =~ s/\&/and/g;
	$titolo =~ s/\'/_/g;
	$titolo =~ s/\///g;
	$titolo =~ s/\(/_/g;
	$titolo =~ s/\)/_/g;
	$appoggio.="mv audio_".$x.".wav ".$x."-".$titolo.".wav\n";
	#$appoggio.="lame -h -b 192 ".$x."-".$titolo.".wav ".$x."-".$titolo.".mp3\n";
	$appoggio.="oggenc -q 6 ".$x."-".$titolo.".wav\n";
	}
	$x++;
    }
}
open(fileOUT, ">cambia_nomi.sh") or die("Non apro scrittura");
print fileOUT $appoggio;
close(fileOUT);
#print $appoggio;

A questo punto potete creare una directory, copiarvi i due file, lanciare converti_cd.sh ed attendere sino alla fine Smile

PS: necessita di connessione a internet per scaricare le informazioni ccda del cd.
PPS: Personalmente uso ogg, nello script perl che genera il bash script ci sono le due opzioni (ogg e lame)

bye.





Commenti

Ritratto di lpav82
#1

Inviato da lpav82 il Sab, 16/10/2004 - 12:09.

errore in cambianomi.pl

ciao,
ho provato il tuo script che mi trova subito i nomi delle camzoni però mi da questi errori
syntax error at cambia_nomi.pl line 2, near "= ;"
Execution of cambia_nomi.pl aborted due to compilation errors.
chmod: impossibile accedere a `cambia_nomi.sh': No such file or directory
./converti_cd.sh: line 6: ./cambia_nomi.sh: No such file or directory

ciao

Luca mail
web www.gruppocontroluce.org



Ritratto di kripsio
#2

Inviato da kripsio il Sab, 16/10/2004 - 12:25.

Correzione

Il programma di invio si e' giustamente magnato quello che stava tra <>

sostituire la riga due di cambia_nomi.pl con

@logData = <fileIN>;

(essenzialmente manca il <fileIN> )

Poi se volete evitare il copioincollo http://www.kripsio.net/rip.tgz questo e' tgz con gli scriptini dentro...

ziau



Ritratto di lpav82
#3

Inviato da lpav82 il Sab, 16/10/2004 - 12:34.

Re: Correzione

adesso va benissimo grazie tanto

Luca mail
web www.gruppocontroluce.org



Ritratto di kripsio
#4

Inviato da kripsio il Sab, 16/10/2004 - 12:53.

Re: Correzione

Ben ben mi fa piacer.

L'ho scritto perche' non avevo volgia di scegliere nulla, un comando e lui parte, scarica, converte, sciappina, scanchera, deleta, formatta il disco, tira quattro accidenti e ti sforna la directory con le tracce. Senza nulla togliere agli script piu' costruiti, interattivi e pieni di opzioni bellizzime a me fa comodo sto baracchino qua Tongue



Ritratto di madbrains
#5

Inviato da madbrains il Mer, 09/02/2005 - 23:52.

Re: Correzione

Assolutamente al bacio :*** Big Grin veramente utile sto sfornando cd a palla! é utilissimo per copiare velocemente i cd sopratutto se si ha poco tempo da spendere in opzioni varie Wink voto 9 Big Grin