+# do_preprocess [tracknumber]
+# variables used:
+# TRACKS, TRACKNAME, TRACKARTIST, DISTMP3, DISTMP3OPTS, {FOO}ENCODERSYNTAX, OUTPUTTYPE, ENCODEROPTS, DALBUM, DARTIST, ENCNICE, CDYEAR, CDGENRE, COMMENT
+#do_preprocess ()
+#{
+# IN="$ABCDETEMPDIR/track$1.wav"
+# # We need IN to proceed.
+# if [ -s "$IN" ] ; then
+# for OUTPUT in $(echo $OUTPUTTYPE | tr , \ )
+# do
+# #OUT="$ABCDETEMPDIR/track$1.$OUTPUT"
+# run_command '' echo "Pre-processing track $1 of $TRACKS..."
+# case "$POSTPROCESSFORMAT" in
+# all|wav*)
+# run_command preprocess-$OUTPUT-$1 nice $PRENICE $WAV_PRE $IF $OF ;;
+# mp3)
+# run_command preprocess-$OUTPUT-$1 nice $PRENICE $MP3_PRE $IF $OF ;;
+# ogg)
+# run_command preprocess-$OUTPUT-$1 nice $PRENICE $OGG_PRE $IF $OF ;;
+# flac)
+# run_command preprocess-$OUTPUT-$1 nice $PRENICE $FLAC_PRE $IF $OF ;;
+# spx)
+# run_command preprocess-$OUTPUT-$1 nice $PRENICE $SPX_PRE $IF $OF ;;
+# esac
+# done
+# # Only remove .wav if the encoding succeeded
+# if checkerrors "preprocess-(.{3,4})-$1"; then
+# run_command preprocess-$1 false
+# else
+# run_command preprocess-$1 true
+# fi
+# else
+# if [ "$(checkstatus encode-output)" = "loud" ]; then
+# echo "HEH! The file we were about to pre-process disappeared:"
+# echo ">> $IN"
+# fi
+# run_command preprocess-$1 false
+# fi
+#}
+
+
+# do_postprocess [tracknumber]
+# variables used:
+# TRACKS, TRACKNAME, TRACKARTIST, DISTMP3, DISTMP3OPTS, {FOO}ENCODERSYNTAX, OUTPUTTYPE, ENCODEROPTS, DALBUM, DARTIST, ENCNICE, CDYEAR, CDGENRE, COMMENT
+#do_postprocess ()
+#{
+# for POSTPROCESSFORMAT in $(echo $POSTPROCESSFORMATS | tr , \ )
+# do
+# IN="$ABCDETEMPDIR/track$1.$POSTPROCESSFORMAT"
+# # We need IN to proceed.
+# if [ -s "$IN" ] ; then
+# #OUT="$ABCDETEMPDIR/track$1.$OUTPUT"
+# run_command '' echo "Post-processing track $1 of $TRACKS..."
+# case "$POSTPROCESSFORMAT" in
+# mp3)
+# run_command postprocess-$OUTPUT-$1 nice $POSTNICE $MP3_POST $IF $OF ;;
+# ogg)
+# run_command postprocess-$OUTPUT-$1 nice $POSTNICE $OGG_POST $IF $OF ;;
+# flac)
+# run_command postprocess-$OUTPUT-$1 nice $POSTNICE $FLAC_POST $IF $OF ;;
+# spx)
+# run_command postprocess-$OUTPUT-$1 nice $POSTNICE $SPX_POST $IF $OF ;;
+# esac
+# # Only remove .wav if the encoding succeeded
+# if checkerrors "postprocess-(.{3,4})-$1"; then
+# run_command postprocess-$1 false
+# else
+# run_command postprocess-$1 true
+# fi
+# else
+# if [ "$(checkstatus encode-output)" = "loud" ]; then
+# echo "HEH! The file we were about to post-process disappeared:"
+# echo ">> $IN"
+# fi
+# run_command postprocess-$1 false
+# fi
+# done
+#}
+
+# do_batch_gain
+# variables used:
+# MP3GAIN, MP3GAINOPTS, VORBISGAIN, VORBISGAINOPTS
+do_batch_gain ()
+{
+ # The commands here don't go through run_command because they're never supposed to be silenced
+ echo "Batch analizing gain in tracks: $TRACKQUEUE"
+ (
+ cd "$ABCDETEMPDIR"
+ BLURB=
+ TRACKFILES=
+ for UTRACKNUM in $TRACKQUEUE
+ do
+ MP3FILES="$TRACKFILES track$UTRACKNUM.mp3"
+ done
+ # XXX: Hard-coded batch option!
+ $NORMALIZER -b $NORMALIZEROPTS $TRACKFILES
+ RETURN=$?
+ if [ "$RETURN" != "0" ]; then
+ echo "batch-normalize: $NORMALIZER returned code $RETURN" >> errors
+ else
+ for UTRACKNUM in $TRACKQUEUE
+ do
+ echo normalizetrack-$UTRACKNUM >> status
+ done
+ fi
+ )
+}
+