[begin listing op ct2000-0708 pag. 150 links] 1 #!/bin/sh 2 cdreader="/dev/cdrom" 3 scsidevice="0,3,0" 4 5 function no ( ) 6 { ... 21 } 22 23 ## Bestandsnaam cdtomp3 -> cdda2wav, cdpartomp3 -> cdparanoia 24 25 case "$(basename $0)" in 26 cdtomp3) 27 grabber='cdda2wav -O wav -t $(expr $i + 1) -D $scsidevice -B -x -' 28 ;; 29 cdpartomp3) 30 grabber='cdparanoia -v -w $(expr $i + 1) -d $cdreader -' 31 ;; 32 esac 33 34 case "$1" in 35 cddb) 36 cddb=$(echo $(disc-cover -t cddb -D $cdreader) | awk -F'"' '{print $2}') 37 if test -s "$cddb"; then 38 subdir=$(echo $cddb | awk -F'.' '{print $1}' | sed 's/ /_/g') 39 fi 40 ;; 41 nocddb) 42 ;; 43 *) 44 echo "Aanroepsyntaxis: $(basename $0) cddb|nocddb [directory]" 45 exit 46 ;; 47 esac 48 49 if test "$2"; then 50 if ! test -d "$2"; then 51 mkdir $2 52 fi 53 destdir=$2 54 else 55 destdir=$(pwd) 56 fi 57 58 echo "MP3-bestanden in directory $destdir aanmaken, (ja/nee)?" 59 if no; then 60 exit 61 fi 62 63 mkdir $destdir/$subdir 64 cd $destdir/$subdir 65 cddb="../$cddb" 66 mkfifo fifo 67 68 for i in {0,1,2,3,4,5,6,7,8,9}{0,1,2,3,4,5,6,7,8,9}; do 69 70 ## Eerst de bestandsnaam van de track ophalen 71 if test -s "$cddb"; then 72 trackname=$(grep "TITLE$(echo $(expr $i + 0))" $cddb | \ 73 awk -F= '{print $2}' | sed 's/ /_/g') 74 if ! test "$trackname"; then 75 trackname="track" 76 fi 77 else 78 trackname="track" 79 fi 80 ## Index erbij; gelijke namen voorkomen 81 trackname=$i"$trackname" 82 83 # Coderen begint zodra eerste byte wordt ontvangen ... 84 lame -m j -h fifo "$trackname".mp3 & 85 eval "$grabber" > fifo 86 # dat gebeurt, wanneer de opgegeven track bestaat ... 87 if test "$?" -ne 0; then 88 # Foutcode van de grabber 89 rm "$trackname".mp3 90 break 91 fi 92 done 93 rm fifo [einde listing op ct2000-0708 pag. 150 links]