aac renovations part two...
authorAndrew Strong <andrew.david.strong@gmail.com>
Thu, 9 Apr 2015 09:19:25 +0000 (19:19 +1000)
committerAndrew Strong <andrew.david.strong@gmail.com>
Thu, 9 Apr 2015 09:19:25 +0000 (19:19 +1000)
a. New variables for m4a/aac encoding options to be
   manipulated from a users ~/.abcde.conf file:
    1. FAACENCOPTS for faac encoding options
    2. NEROAACENCOPTS for neroAacEnc options
    3. FDKAACENCOPTS for fdkaacenc options
   Note that these options replace the now obsolete
   AACENCOPTS.
b. New check for NeroAacTag when using neroAacEnc

c. faac, neroAacEnc and fdkaac added to usepipes,

aac encoding within abcde now almost complete...

abcde
abcde.1
abcde.conf
changelog

diff --git a/abcde b/abcde
index 6a754a4..085d8d0 100755 (executable)
--- a/abcde
+++ b/abcde
@@ -3287,16 +3287,16 @@ WVENC=wavpack
 APENC=mac
 APETAG=apetag
 # m4a
-AACENC=faac
+FAAC=faac
+NEROAACENC=neroAacEnc
+FDKAAC=fdkaac
 
 ID3=id3
 ID3V2=id3v2
 EYED3=eyeD3
 VORBISCOMMENT=vorbiscomment
 METAFLAC=metaflac
-AACTAG=faac
 NEROAACTAG=neroAacTag
-FDKAAC=fdkaac
 
 CDPARANOIA=cdparanoia
 CDDA2WAV=icedax
@@ -3357,7 +3357,9 @@ WVENCOPTS=
 # so we set one here.                                 Andrew.
 APENCOPTS='-c4000'
 # m4a
-AACENCOPTS=
+FAACENCOPTS=
+NEROACENCOPTS=
+FDKAACENCOPTS=
 
 ID3OPTS=
 EYED3OPTS=""
@@ -3906,6 +3908,7 @@ do
                m4a)
                        [ "$AACENCODERSYNTAX" = "default" ] && AACENCODERSYNTAX=faac
                        [ "$DOTAG" = "y" ] && CHECKFAACBUILD=y
+                       [ "$AACENCODERSYNTAX" = "neroAacEnc" ] && NEEDNEROAACTAG=y
                        ;;
                wav)
                        if [ "$KEEPWAVS" = "y" ]; then
@@ -4009,9 +4012,17 @@ case "$APENCODERSYNTAX" in
                ;;
 esac
 case "$AACENCODERSYNTAX" in
-       faac|neroAacEnc|fdkaac)
-               AACENCODEROPTS="${AACENCODEROPTSCLI:-$AACENCOPTS}"
-               AACENCODER="$AACENC"
+       faac)
+               AACENCODEROPTS="${AACENCODEROPTSCLI:-$FAACENCOPTS}"
+               AACENCODER="$FAAC"
+               ;;
+       neroAacEnc)
+               AACENCODEROPTS="${AACENCODEROPTSCLI:-$NEROAACENCOPTS}"
+               AACENCODER="$NEROAACENC"
+               ;;
+       fdkaac)
+               AACENCODEROPTS="${AACENCODEROPTSCLI:-$FDKAACENCOPTS}"
+               AACENCODER="$FDKAAC"
                ;;
 esac
 
@@ -4146,6 +4157,12 @@ PIPE_flac="-"
 PIPE_speexenc="-"
 PIPE_mpcenc="-"
 PIPE_wavpack="-"
+PIPE_faac="-"
+# Both neroAacEnc and fdkaac seem to manage without the addition of
+# the 'ignorelength' option in PIPE_$AACENCODERSYNTAX when piping
+# in this manner.                                           Andrew.
+PIPE_neroAacEnc="-"
+PIPE_fdkaac="-"
 
 # Figure out if we can use pipes with the ripper/encoder combination
 # exit otherwise
@@ -4166,6 +4183,10 @@ if [ "$USEPIPES" = "y" ]; then
                        PIPEENCODERSVARCHECK="PIPE_$MPCENCODERSYNTAX" ;;
                wv)
                        PIPEENCODERSVARCHECK="PIPE_$WVENCODERSYNTAX" ;;
+               m4a)
+                       PIPEENCODERSVARCHECK="PIPE_$AACENCODERSYNTAX" ;;
+               aac)
+                       PIPEENCODERSVARCHECK="PIPE_$AACENCODERSYNTAX" ;;
        esac
        decho "PIPERIPPERSVARCHECK: $( eval echo "\$$PIPERIPPERSVARCHECK" )"
        if [ "$( eval echo "\$$PIPERIPPERSVARCHECK" )" = "$" ] || \
@@ -4196,7 +4217,7 @@ for X in $CDROMREADER $CDDISCID ${NEEDTAGGER+$TAGGER} $MP3ENCODER \
        ${NEEDVORBISGAIN+$VORBISGAIN} ${NEEDMP3GAIN+$MP3GAIN} \
        ${NEEDMPCGAIN+$MPCGAIN} ${NEEDCUEREADER+$CUEREADER} \
        ${NEEDWVGAIN+WVGAIN} ${NEEDAPETAG+$APETAG} \
-       ${NEEDCUE2DISCID+$CUE2DISCID}
+       ${NEEDCUE2DISCID+$CUE2DISCID} ${NEEDNEROAACTAG+$NEROAACTAG}
 do
        checkexec "$X"
 done
diff --git a/abcde.1 b/abcde.1
index 5717d0a..5d0cde2 100644 (file)
--- a/abcde.1
+++ b/abcde.1
@@ -377,10 +377,10 @@ CUE2DISCID (see option "\-X"), DIFF and HTTPGET.
 If you wish to specify command-line options to any of the programs \fBabcde\fR uses,
 set the following configuration file options: LAMEOPTS, TOOLAMEOPTS, GOGOOPTS,
 BLADEENCOPTS, L3ENCOPTS, XINGMP3ENCOPTS, MP3ENCOPTS, VORBIZEOPTS, WVENCOPTS, APENCOPTS,
-OGGENCOPTS, FLACOPTS, SPEEXENCOPTS, MPCENCOPTS, AACENCOPTS, OPUSENCOPTS, ID3OPTS, EYED3OPTS,
-MP3GAINOPTS, CDPARANOIAOPTS, CDDA2WAVOPTS, PIRDOPTS, CDDAFSOPTS, CDDBTOOLOPTS,
-EJECTOPTS, DISTMP3OPTS, NORMALIZEOPTS, CDSPEEDOPTS, MKCUEOPTS, VORBISCOMMMENTOPTS,
-METAFLACOPTS, DIFFOPTS, FLACGAINOPTS, VORBISGAINOPTS and HTTPGETOPTS.
+OGGENCOPTS, FLACOPTS, SPEEXENCOPTS, MPCENCOPTS, FAACENCOPTS, NEROAACENCOPTS, FDKAACENCOPTS, 
+OPUSENCOPTS, ID3OPTS, EYED3OPTS, MP3GAINOPTS, CDPARANOIAOPTS, CDDA2WAVOPTS, PIRDOPTS, 
+CDDAFSOPTS, CDDBTOOLOPTS, EJECTOPTS, DISTMP3OPTS, NORMALIZEOPTS, CDSPEEDOPTS, MKCUEOPTS, 
+VORBISCOMMMENTOPTS, METAFLACOPTS, DIFFOPTS, FLACGAINOPTS, VORBISGAINOPTS and HTTPGETOPTS.
 .TP
 .B CDSPEEDVALUE
 Set the value of the CDROM speed. The default is to read the disc as fast as
index 1e47d46..f61fe4b 100644 (file)
@@ -1,4 +1,4 @@
-# System defaults for abcde version 2.6.x
+# System defaults for abcde version 2.6.1
 # Nothing in this file is uncommented by default.
 #
 # If you wish to override these system-wide settings, create your own
 #MPCENC=mpcenc
 #WVENC=wavpack
 #APENC=mac
-#AACENC=faac
+#FAAC=faac
+#NEROAACENC=neroAacEnc
+#FDKAAC=fdkaac
 #OPUSENC=opusenc
 
 # Taggers, rippers, replaygain etc:
 #WVENCOPTS=
 # For Wavpack replay gain we set both the default of 'track gain' 
 # as well as this option for 'album gain'. Better media players
-# such as vlc can select either or neither.              Andrew.     
+# such as vlc can select either or neither.    
 #WVGAINOPTS='-a'
 
 # Monkey's Audio (ape)
 #APENCOPTS='-c4000'
 
 # M4A/AAC
+# Note that the old AACENCOPTS has been rendered obsolete by
+# the following options, new to abcde 2.6.1:
 #  1. faac: see 'faac --long-help' and consider
 #     using '-q 250' for a good quality encode.
+#FAACENCOPTS=
 #  2. neroAacEnc: see 'neroAacEnc -help' and
 #     consider using '-q 0.65' for a good quality encode.
+#NEROAACENCOPTS=
 #  3. fdkaac: see 'fdkaac --help' and consider using 
 #     '--profile 2 --bitrate-mode 5 --afterburner 1'
 #     for a good quality encode. 
-#AACENCOPTS=
+#FDKAACENCOPTS=
 
 # OPUS
 # For the encoder options look at: 'opusenc -h'
index 975b08b..69e121e 100644 (file)
--- a/changelog
+++ b/changelog
@@ -1,11 +1,21 @@
 abcde 2.6.1
 
+  * New variables for m4a/aac encoding options to be 
+    manipulated in a users ~/.abcde.conf file:
+     1. FAACENCOPTS for faac encoding options
+     2. NEROAACENCOPTS for neroAacEnc options
+     3. FDKAACENCOPTS for fdkaacenc options
+    Note that these options replace the now obsolete AACENCOPTS.
+  * Check added for neroAacTag when encoding with neroAacEnc.
   * Several additions to usepipes with the following encoders 
     being added:
       1. mp3enc: mp3
       2. speexenc: Speex
       3. mpcenc: Musepack SV8
       4. wavpack: WavPack
+      5. faac: aac
+      6. neroAacEnc: aac
+      7. fdkaac: aac
     The cd ripper cdda2wav (icedax) has also been added.
   * Ripping and encoding with 'usepipes' fixed. This fix
     closes Issue 46.