# Copyright for this work is to expire January 1, 2010, after which it
# shall be public domain.
-VERSION="2.2.0"
+VERSION="2.2.1"
usage ()
{
echo "-1 Encode the whole CD in a single file"
echo "-a <action1[,action2]...>"
echo " Actions to perform (cddb,read,normalize,encode,tag,move,playlist,clean)"
-echo "-A Experimental actions (retag, transcode)"
+#echo "-A Experimental actions (retag, transcode)"
echo "-b Batch mode: enable album normalization and nogap encoding"
echo "-c <file>"
echo " Specify a configuration file (overrides system and user config files)"
for OUTPUT in $(echo $OUTPUTTYPE | tr , \ )
do
OUT="$ABCDETEMPDIR/track$1.$OUTPUT"
- echo "Encoding track $1 of $TRACKS: $TRACKNAME..." >&2
+ run_command '' echo "Encoding track $1 of $TRACKS: $TRACKNAME..."
case "$OUTPUT" in
mp3)
case "$2" in
do
# Shares some code with do_move since the filenames have to match
CDDBTRACKNUM=$(expr $UTRACKNUM - 1)
- TRACKNAME=$(grep ^TTITLE$CDDBTRACKNUM= "$CDDBDATA" | head -n 1 | cut -f2 -d= | tr -d \[:cntrl:\])
+ TRACKNAME=$(grep ^TTITLE$CDDBTRACKNUM= "$CDDBDATA" | cut -f2 -d= | tr -d \[:cntrl:\] | sed 's/\ \+$//')
splitvarious
TRACKFILE=$(mungefilename "$TRACKNAME")
ARTISTFILE=$(mungefilename "$TRACKARTIST")
cdparanoia|debug)
if [ "$WEHAVEACD" = "y" ]; then
vecho "Querying the CD for audio tracks..."
- TRACKS=$( $CDROMREADER -Q 2>&1 | egrep '^[[:space:]]+[[:digit:]]' | tail -n 1 | awk '{print $1}' | tr -d "." | tr '\n' ' ' )
+ TRACKS=$( $CDPARANOIA -Q 2>&1 | egrep '^[[:space:]]+[[:digit:]]' | tail -n 1 | awk '{print $1}' | tr -d "." | tr '\n' ' ' )
CDPARANOIAAUDIOTRACKS="$TRACKS"
else
if [ -f "$ABCDETEMPDIR/status" ] && checkstatus cdparanoia-audio-tracks ; then
# I'll take CDDB read #3 for $400, Alex
echo -n "Which entry would you like abcde to use (0 for none)? [0-$CDDBCHOICES]: " >&2
read CDDBCHOICE
+ [ X"$CDDBCHOICE" = "X" ] && CDDBCHOICE=1
# Make sure we get a valid choice
CDCHOICENUM=$(echo $CDDBCHOICE | xargs printf %d 2>/dev/null)
while [ $CDCHOICENUM -lt 0 ] || [ $CDCHOICENUM -gt $CDDBCHOICES ]; do
:
}
+###############################################################################
# End of functions
#
# Start of execution
+###############################################################################
# Builtin defaults
CDDBURL="http://freedb.freedb.org/~cddb/cddb.cgi"
# Parse command line options
#while getopts 1a:bc:C:d:Dhj:klLnNo:pr:S:t:T:vVx opt ; do
-while getopts 1a:A:bc:C:d:Dhj:klLnNo:pr:Rs:S:t:T:vVxw: opt ; do
+while getopts 1a:A:bc:C:d:Dhj:klLnNo:pr:Rs:S:t:T:vVxw:W: opt ; do
case "$opt" in
1) ONETRACK=y ;;
a) ACTIONS="$OPTARG" ;;
V) EXTRAVERBOSE="y" ;;
x) EJECTCD="y" ;;
w) COMMENT="$OPTARG" ;;
+ W) STARTTRACKNUMBER="${OPTARG}01" ; STARTTRACKNUMBERTAG="y" ; COMMENT="CD${OPTARG}" ;;
?) usage; exit ;;
esac
done
# TRACKNUM=$(printf %0.${TRACKNUMPADDING}d $(expr ${UTRACKNUM} + 0))
TRACKNUM=$UTRACKNUM
CDDBTRACKNUM=$(expr $UTRACKNUM - 1)
- TRACKNAME=$(grep ^TTITLE$CDDBTRACKNUM= "$CDDBDATA" | head -n 1 | cut -f2 -d= | tr -d \[:cntrl:\])
+ TRACKNAME=$(grep ^TTITLE$CDDBTRACKNUM= "$CDDBDATA" | cut -f2 -d= | tr -d \[:cntrl:\] | sed 's/\ \+$//')
splitvarious
fi
fi