Tagging is with AtomicParsley, welcome back into abcde :).
Q. Do all rippers and encoders work with USEPIPES?
A. No :). Keep in mind that every ripper and encoder differs from in each
other in the way they interact with pipes and not all rippers and encoders
- will use or understand the '-o' and '-' options. Currently (May 2015) the
+ will use or understand the '-o' and '-' options. Currently (July 2015) the
following rippers and encoders work:
Rippers: cdparanoia, debug, libcdio, cdda2wav, flac, pird.
Encoders: mp3enc, lame, bladeenc, oggenc, opusenc, flac, speexenc,
- mpcenc, wavpack, faac, neroAacEnc, fdkaac, qaac.
+ mpcenc, wavpack, faac, neroAacEnc, fdkaac, qaac, fhgaacenc.
Q. Can I add a ripper or encoder which is not supported?
A. Sure! If you plan to use a ripper or encoder which is not supported you
qaac)
run_command tagtrack-$OUTPUT-$1 true
;;
+ fhgaacenc)
+ # Tag post encode with AtomicParsley. Note that previous problems with seg fault when using
+ # 'overWrite' cannot be reproduced with newer versions: https://bitbucket.org/wez/atomicparsley
+ run_command tagtrack-$OUTPUT-$1 nice $ENCNICE "$ATOMICPARSLEY" "$ABCDETEMPDIR/track$1.m4a" \
+ --artist="$TRACKARTIST" --album="$DALBUM" --title="$TRACKNAME" --tracknum=${TRACKNUM:-$1} \
+ --year="$CDYEAR" --genre="$CDGENRE" --comment="$COMMENT" $ATOMICPARSLEYOPTS --overWrite
+ ;;
esac
;;
wav)
$RUN_COMMAND nice $EFFECTIVE_NICE $WINE $AACENCODER $AACENCODEROPTS -o "$OUT" "$IN"
fi
;;
+ fhgaacenc)
+ $RUN_COMMAND nice $EFFECTIVE_NICE $WINE $AACENCODER $AACENCODEROPTS "$IN" "$OUT"
+ ;;
esac
;;
wav)
# as it is a Windows application being run through Wine. More
# detailed notes in the sample abcde.conf file in the abcde tarball.
QAAC=qaac
+FHGAACENC=fhgaacenc
ID3=id3
ID3V2=id3v2
VORBISCOMMENT=vorbiscomment
METAFLAC=metaflac
NEROAACTAG=neroAacTag
+ATOMICPARSLEY=AtomicParsley
WINE=wine
CDPARANOIA=cdparanoia
# we set bitrate here.
FDKAACENCOPTS='--bitrate 192k'
QAACENCOPTS=
+FHGAACENCOPTS=
ID3OPTS=
EYED3OPTS=""
+ATOMICPARSLEYOPTS=
CDPARANOIAOPTS=
PIRDOPTS=
CDDA2WAVOPTS=
[ "$DOTAG" = "y" ] && CHECKFAACBUILD=y
[ "$AACENCODERSYNTAX" = "neroAacEnc" ] && NEEDNEROAACTAG=y
[ "$AACENCODERSYNTAX" = "qaac" ] && NEEDWINE=y
+ [ "$AACENCODERSYNTAX" = "fhgaacenc" ] && NEEDWINE=y && NEEDATOMICPARSLEY=y
;;
wav)
if [ "$KEEPWAVS" = "y" ]; then
AACENCODER="$QAAC"
fi
;;
+ fhgaacenc)
+ if [ -z "$FHGAACENCOPTS" ] && [ -n "$AACENCOPTS" ]; then
+ AACENCODEROPTS="${AACENCODEROPTSCLI:-$AACENCOPTS}"
+ AACENCODER="$FHGAACENC"
+ else
+ AACENCODEROPTS="${AACENCODEROPTSCLI:-$FHGAACENCOPTS}"
+ AACENCODER="$FHGAACENC"
+ fi
+ ;;
esac
# and which tagger
PIPE_wavpack="-"
PIPE_faac="-"
PIPE_qaac="-"
+PIPE_fhgaacenc="-"
# Both neroAacEnc and fdkaac seem to manage without the addition of
# the 'ignorelength' option in PIPE_$AACENCODERSYNTAX when piping
# in this manner. Andrew.
${NEEDMPCGAIN+$MPCGAIN} ${NEEDCUEREADER+$CUEREADER} \
${NEEDWVGAIN+WVGAIN} ${NEEDAPETAG+$APETAG} \
${NEEDCUE2DISCID+$CUE2DISCID} ${NEEDNEROAACTAG+$NEROAACTAG} \
- ${NEEDGLYRC+$GLYRC} ${NEEDWINE+$WINE}
+ ${NEEDGLYRC+$GLYRC} ${NEEDWINE+$WINE} ${NEEDATOMICPARSLEY+$ATOMICPARSLEY}
do
checkexec "$X"
done
.TP
.B AACENCODERSYNTAX
Specifies the style of encoder to use for M4A (AAC) encoder. We support \'faac\'
-as \'default\' as well as higher quality audio with neroAacEnc, fdkaac and qaac.
+as \'default\' as well as higher quality audio with neroAacEnc, fdkaac, qaac and fhgaacenc.
If qaac or the Open Source refalac are used it is also possible to generate Apple
-Lossless Audio Codec (alac) files. Note that qaac and refalac are Windows applications
+Lossless Audio Codec (alac) files. Note that qaac, refalac and fhgaacenc are Windows applications
which require Wine to be installed.
.TP
.B WVENCODERSYNTAX
METAFLAC, CDPARANOIA, CD_PARANOIA, CDDA2WAV, PIRD, CDDAFS, CDDISCID, CDDBTOOL,
EJECT, MD5SUM, DISTMP3, VORBISCOMMENT, NORMALIZE, CDSPEED, MP3GAIN, VORBISGAIN,
MPCGAIN, MKCUE, MKTOC, CUE2DISCID (see option "\-X"), DIFF, HTTPGET, GLYRC,
-IDENTIFY, DISPLAYCMD, CONVERT, QAAC and WINE.
+IDENTIFY, DISPLAYCMD, CONVERT, QAAC, WINE, FHGAACENC and ATOMICPARSLEY.
.TP
.B COMMAND-LINE OPTIONS
If you wish to specify command-line options to any of the programs \fBabcde\fR uses,
OPUSENCOPTS, ID3OPTS, EYED3OPTS, MP3GAINOPTS, CDPARANOIAOPTS, CDDA2WAVOPTS, PIRDOPTS,
CDDAFSOPTS, CDDBTOOLOPTS, EJECTOPTS, DISTMP3OPTS, NORMALIZEOPTS, CDSPEEDOPTS, MKCUEOPTS,
VORBISCOMMMENTOPTS, METAFLACOPTS, DIFFOPTS, FLACGAINOPTS, VORBISGAINOPTS, HTTPGETOPTS,
-GLYRCOPTS, IDENTIFYOPTS, CONVERTOPTS, DISPLAYCMDOPTS and QAACENCOPTS.
+GLYRCOPTS, IDENTIFYOPTS, CONVERTOPTS, DISPLAYCMDOPTS, QAACENCOPTS, FHGAACENCOPTS and
+ATOMICPARSLEYOPTS.
.TP
.B CDSPEEDVALUE
Set the value of the CDROM speed. The default is to read the disc as fast as
# mpcenc - encoder for MPCENCODERSYNTAX
# wavpack - encoder for WVENCODERSYNTAX
# mac - for APENCODERSYNTAX
-# faac, neroAacEnc, fdkaac, qaac - for AACENCODERSYNTAX
+# faac, neroAacEnc, fdkaac, qaac, fhgaacenc - for AACENCODERSYNTAX
# opusenc - for OPUSENCODERSYNTAX
# default is a valid option for oggenc, lame, flac, speexenc, mpcenc, wavpack, faac and opus.
# Currently this affects the default location of the binary, the variable
#FDKAAC=fdkaac
#OPUSENC=opusenc
-# The path for qaac can be problematic as abcde cannot cope
-# with the 'standard' Wine location with spaces:
-# "$HOME/.wine/drive_c/Program\ Files/qaac/qaac.exe" Try instead:
-# "$HOME/.wine/drive_c/qaac/qaac.exe"
-# If you wish to generate alac files using refalac (packaged with qaac)
-# a small and ugly hack can be used by simply altering the path to:
-# "$HOME/.wine/drive_c/qaac/refalac.exe"
-# Installation instructions for qaac and refalac here:
+# The path for qaac, refalac and fhgaacenc can be problematic as abcde
+# cannot cope with the 'standard' Wine location with spaces. For example:
+# "$HOME/.wine/drive_c/Program\ Files/qaac/qaac.exe" is problematic. Try instead:
+# "$HOME/.wine/drive_c/qaac/qaac.exe"
+# Installation instructions for qaac, refalac and fhgaacenc here:
# http://www.andrews-corner.org/qaac.html
+# http://www.andrews-corner.org/fhgaacenc.html
+# (Hint: Use QAAC=refalac to use the Open Source alac encoder...)
#QAAC=qaac
+#FHGAACENC=fhgaacenc
# Taggers, rippers, replaygain etc:
#ID3=id3
#APENCOPTS='-c4000'
# M4A/AAC
+# There are now 5 AAC encoders available to abcde :).
# Note that the old AACENCOPTS has been rendered obsolete by
# the following options, new to abcde 2.7:
# 1. faac: see 'faac --long-help' and consider
# '--profile 2 --bitrate-mode 5 --afterburner 1'
# for a good quality encode.
#FDKAACENCOPTS='--bitrate 192k'
-# 4. qaac: simply run 'qaac' to see all options and
+# 4. qaac: simply run 'wine qaac.exe' to see all options and
# consider using '--tvbr 100' for a good quality
# encode or '--alac' for Apple Lossless Audio Codec.
#QAACENCOPTS=
+# 5. fhgaacenc: simply run 'wine fhgaacenc.exe' to see all options.
+# consider using '--vbr 4' for a decent quality encode.
+#FHGAACENCOPTS=
# OPUS
# For the encoder options look at: 'opusenc -h'
#DIFFOPTS=""
#VORBISCOMMENTOPTS="-R"
#METAFLACOPTS="--no-utf8-convert"
+# Bear in mind that the AtomicParsley option '--overWrite' is already
+# used in abcde...
+#ATOMICPARSLEYOPTS=
# Actions to take
# Comma-separated list of one or more of the following:
abcde 2.7.1
+ * AAC encoding with fhgaacenc via Wine. Tagging is provided
+ by AtomicParsley which has been added back to abcde :). This
+ allows encoding with HE-AAC v2, unavailable with qaac.
* Support added for AAC encoding with qaac via Wine. This
also allows for Apple Lossless Audio Coding (alac) when
using: