Difference between revisions of "Audiograb script"
From Maze's wiki
| (One intermediate revision by the same user not shown) | |||
| Line 34: | Line 34: | ||
while [ "${track}" -lt "${noftracks}" ] | while [ "${track}" -lt "${noftracks}" ] | ||
do | do | ||
| − | |||
leadingzero="" | leadingzero="" | ||
| − | [ "${ | + | [ "${track}" -lt "9" ] && leadingzero=0 |
trackname=`echo "${cddbcdfullinfo}" | grep 'TTITLE'${track}'=' | tr -d "\r" | tr -d "\n" | sed 's/TTITLE[0-9]*=//' | sed 's/^\ *//' | sed 's/\ *$//'` | trackname=`echo "${cddbcdfullinfo}" | grep 'TTITLE'${track}'=' | tr -d "\r" | tr -d "\n" | sed 's/TTITLE[0-9]*=//' | sed 's/^\ *//' | sed 's/\ *$//'` | ||
| − | read -p "Enter title for track $leadingzero$ | + | read -p "Enter title for track $leadingzero$(($track+1)) [${trackname}]:" tracknamecustom |
[ "${tracknamecustom}" != "" ] && trackname=${tracknamecustom} | [ "${tracknamecustom}" != "" ] && trackname=${tracknamecustom} | ||
| − | trackfilename=`echo "${ | + | tracks[${track}]=${trackname} |
| − | icedax -q -D /dev/sr0 -O wav -t ${ | + | track=$((${track}+1)) |
| + | done | ||
| + | |||
| + | track=0 | ||
| + | while [ "${track}" -lt "${#tracks[@]}" ] | ||
| + | do | ||
| + | leadingzero="" | ||
| + | [ "${track}" -lt "9" ] && leadingzero=0 | ||
| + | trackfilename=`echo "${tracks[$track]}" | sed 's/\//_/g'` | ||
| + | icedax -q -D /dev/sr0 -O wav -t $((${track}+1)) - | oggenc -q 5 -Q -t "${tracks[$track]}" -G "${genre}" -a "${artistname}" -l "${albumname}" -d "${year}" -N "${leadingzero}$((${track}+1))/${noftrackslz}${noftracks}" -o "$artistname/$albumname/$leadingzero$(($track+1))-$trackfilename.ogg" - | ||
track=$((${track}+1)) | track=$((${track}+1)) | ||
done | done | ||
</pre> | </pre> | ||
Latest revision as of 06:48, 11 September 2012
For this audiograb script to run you need some packages to be installed:
- cd-discid
- icedax
- vorbis-tools
#!/bin/bash
cdinfo=`cd-discid /dev/sr0`
discid=`echo "${cdinfo}" | cut -d\ -f 1`
noftracks=`echo "${cdinfo}" | cut -d\ -f 2`
cdinfocddb=`echo ${cdinfo} | sed 's/ /+/g'`
cddbcdsummaries=`wget "http://freedb.freedb.org/~cddb/cddb.cgi?cmd=cddb+query+${cdinfocddb}&hello=maze+ma-ze.nl+grab.sh+1.0&proto=6" -O - -q | tail -n +2 | head -n -1`
nofcddbcdsummaries=`echo "${cddbcdsummaries}" | wc -l`
chosensummary=1
[ "${nofcddbcdsummaries}" -ne "1" ] && echo "${cddbcdsummaries}" | nl && read -p "Select correct CD [1]:" chosensummarycustom
[ "${chosensummarycustom}" != "" ] && chosensummary=${chosensummarycustom}
cddbcdsummary=`echo "${cddbcdsummaries}" | head -n ${chosensummary} | tail -n 1 | cut -d\ -f -2 | sed 's/ /+/g'`
cddbcdfullinfo=`wget "http://freedb.freedb.org/~cddb/cddb.cgi?cmd=cddb+read+${cddbcdsummary}&hello=maze+ma-ze.nl+grab.sh+1.0&proto=6" -O - -q`
[ "${noftracks}" -lt "10" ] && noftrackslz=0
artistname=`echo "${cddbcdfullinfo}" | grep 'DTITLE' | tr -d "\r" | tr -d "\n" | sed 's/DTITLE=//g' | cut -d/ -f 1 | sed 's/^\ *//' | sed 's/\ *$//'`
albumname=`echo "${cddbcdfullinfo}" | grep 'DTITLE' | tr -d "\r" | tr -d "\n" | sed 's/DTITLE=//g' | cut -d/ -f 2- | sed 's/^\ *//' | sed 's/\ *$//'`
read -p "Enter Artist [${artistname}]:" artistnamecustom
[ "${artistnamecustom}" != "" ] && artistname=${artistnamecustom}
read -p "Enter Albumname [${albumname}]:" albumnamecustom
[ "${albumnamecustom}" != "" ] && albumname=${albumnamecustom}
read -p "Enter Genre [${genre}]:" genrecustom
[ "${genrecustom}" != "" ] && genre=${genrecustom}
read -p "Enter Year [${year}]:" yearcustom
[ "${yearcustom}" != "" ] && year=${yearcustom}
mkdir -p "${artistname}"/"${albumname}"
track=0
while [ "${track}" -lt "${noftracks}" ]
do
leadingzero=""
[ "${track}" -lt "9" ] && leadingzero=0
trackname=`echo "${cddbcdfullinfo}" | grep 'TTITLE'${track}'=' | tr -d "\r" | tr -d "\n" | sed 's/TTITLE[0-9]*=//' | sed 's/^\ *//' | sed 's/\ *$//'`
read -p "Enter title for track $leadingzero$(($track+1)) [${trackname}]:" tracknamecustom
[ "${tracknamecustom}" != "" ] && trackname=${tracknamecustom}
tracks[${track}]=${trackname}
track=$((${track}+1))
done
track=0
while [ "${track}" -lt "${#tracks[@]}" ]
do
leadingzero=""
[ "${track}" -lt "9" ] && leadingzero=0
trackfilename=`echo "${tracks[$track]}" | sed 's/\//_/g'`
icedax -q -D /dev/sr0 -O wav -t $((${track}+1)) - | oggenc -q 5 -Q -t "${tracks[$track]}" -G "${genre}" -a "${artistname}" -l "${albumname}" -d "${year}" -N "${leadingzero}$((${track}+1))/${noftrackslz}${noftracks}" -o "$artistname/$albumname/$leadingzero$(($track+1))-$trackfilename.ogg" -
track=$((${track}+1))
done