[Abcde-users] abcde & Musepack SV8

andrew andrew at andrews-corner.org
Wed Nov 21 00:27:07 GMT 2012


On Tue, Nov 20, 2012 at 09:56:33PM +1100, andrew wrote:

> I would be interested in making these changes to SV8 (plus suitable
> changes to man pages and sample abcde.conf) but would this be a
> welcome patch? 

Well, here is the patch anyway:). Hope it may prove useful and thanks
for moving abcde forward!

All the best,

Andrew Strong

-- 
You think that's air you're breathing now?
-------------- next part --------------
Index: abcde
===================================================================
--- abcde	(revision 369)
+++ abcde	(working copy)
@@ -1025,7 +1025,7 @@
 				TEMPARG="PIPE_$SPEEXENCODER"
 				;;
 			mpc)
-				TEMPARG="PIPE_$MPPENCODER"
+				TEMPARG="PIPE_$MPCENCODER"
 				;;
 			m4a)
 				TEMPARG="PIPE_$AACENCODERSYNTAX"
@@ -1145,12 +1145,9 @@
 				;;
 			mpc)	
 				# MPP/MP+(Musepack) format (.mpc) is done locally, with inline
-				# tagging.
-				# I tried compiling the mppenc from corecodecs.org and got some
-				# errors, so I have not tried it myself.
-				## FIXME ## Needs some cleanup to determine if an empty tag sent
-				## FIXME ## to the encoder ends up empty.
-				$RUN_COMMAND nice $EFFECTIVE_NICE $MPPENCODER $MPPENCODEROPTS --artist "$TRACKARTIST" --album "$DALBUM" --title "$TRACKNAME" --track "$1" --genre "$CDGENRE" --year "$CDYEAR" --comment "$COMMENT" "$IN" "$OUT"
+				# tagging. Uses mpcenc for Musepack SV8 encoding, changed from
+				# Musepack SV7 which used mppenc....
+				$RUN_COMMAND nice $EFFECTIVE_NICE $MPCENCODER $MPCENCODEROPTS --artist "$TRACKARTIST" --album "$DALBUM" --title "$TRACKNAME" --track "$1" --genre "$CDGENRE" --year "$CDYEAR" --comment "$COMMENT" "$IN" "$OUT"
 				;;
 			m4a)
 				# Tag the file at encode time, as it can't be done after encoding.
@@ -3151,7 +3148,7 @@
 OGGENCODERSYNTAX=default
 FLACENCODERSYNTAX=default
 SPEEXENCODERSYNTAX=default
-MPPENCODERSYNTAX=default
+MPCENCODERSYNTAX=default
 AACENCODERSYNTAX=default
 NORMALIZERSYNTAX=default
 CUEREADERSYNTAX=default
@@ -3204,7 +3201,7 @@
 # speex
 SPEEXENC=speexenc
 # mpp (Musepack)
-MPPENC=mppenc
+MPCENC=mpcenc
 # m4a
 AACENC=faac
 
@@ -3255,7 +3252,7 @@
 # speex
 SPEEXENCOPTS=
 # mpc
-MPPENCOPTS=
+MPCENCOPTS=
 # m4a
 AACENCOPTS=
 
@@ -3733,7 +3730,7 @@
 			mp3:*)	MP3ENCODEROPTSCLI="$( echo $OUTPUT | cut -d: -f2- )" ;;
 			flac:*)	FLACENCODEROPTSCLI="$( echo $OUTPUT | cut -d: -f2- )" ;;
 			spx:*)	SPEEXENCODEROPTSCLI="$( echo $OUTPUT | cut -d: -f2- )" ;;
-			mpc:*)	MPPENCODEROPTSCLI="$( echo $OUTPUT | cut -d: -f2- )" ;;
+			mpc:*)	MPCENCODEROPTSCLI="$( echo $OUTPUT | cut -d: -f2- )" ;;
 			m4a:*)  AACENCODEROPTSCLI="$( echo $OUTPUT | cut -d: -f2- )" ;;
 		esac
 	done
@@ -3745,7 +3742,7 @@
 fi
 
 # If nothing has been specified, use oggenc for oggs and lame for mp3s and flac
-# for flacs and speexenc for speex and mppenc for mpps and faac for m4as
+# for flacs and speexenc for speex and mpcenc for mpcs and faac for m4as
 
 # Getting ready for multiple output changes
 for OUTPUT in $(echo $OUTPUTTYPE | tr , \ )
@@ -3773,7 +3770,7 @@
 #			[ "$DOREPLAYGAIN" = "y" ] &&
 			;;
 		mpc)
-			[ "$MPPENCODERSYNTAX" = "default" ] && MPPENCODERSYNTAX=mppenc
+			[ "$MPCENCODERSYNTAX" = "default" ] && MPCENCODERSYNTAX=mpcenc
 			[ "$DOREPLAYGAIN" = "y" ] && NEEDMPPGAIN=y
 			;;
 		m4a)
@@ -3857,10 +3854,10 @@
 		SPEEXENCODER="$SPEEXENC"
 		;;
 esac
-case "$MPPENCODERSYNTAX" in
-	mppenc)
-		MPPENCODEROPTS="${MPPENCODEROPTSCLI:-$MPPENCOPTS}"
-		MPPENCODER="$MPPENC"
+case "$MPCENCODERSYNTAX" in
+	mpcenc)
+		MPCENCODEROPTS="${MPCENCODEROPTSCLI:-$MPCENCOPTS}"
+		MPCENCODER="$MPCENC"
 		;;
 esac
 case "$AACENCODERSYNTAX" in
@@ -3981,7 +3978,7 @@
 		spx)
 			PIPEENCODERSVARCHECK="PIPE_$SPEEXENCODER" ;;
 		mpc)
-			PIPEENCODERSVARCHECK="PIPE_$MPPENCODER" ;;
+			PIPEENCODERSVARCHECK="PIPE_$MPCENCODER" ;;
 	esac
 	decho "PIPERIPPERSVARCHECK: $( eval echo "\$$PIPERIPPERSVARCHECK" )"
 	if [ "$( eval echo "\$$PIPERIPPERSVARCHECK" )" = "$" ] || \
@@ -4003,7 +4000,7 @@
 
 # Make sure a buncha things exist
 for X in $CDROMREADER $CDDISCID ${NEEDTAGGER+$TAGGER} $MP3ENCODER \
-	$OGGENCODER $FLACENCODER $SPEEXENCODER $MPPENCODER \
+	$OGGENCODER $FLACENCODER $SPEEXENCODER $MPCENCODER \
 	$AACENCODER $CDDBTOOL \
 	${NEEDATOMICPARSLEY+$ATOMICPARSLEY} \
 	${NEEDHTTPGET+$HTTPGET} ${NEEDDISTMP3+$DISTMP3} \
Index: abcde.1
===================================================================
--- abcde.1	(revision 369)
+++ abcde.1	(working copy)
@@ -313,9 +313,9 @@
 Specifies the style of encoder to use for Speex encoder. At this point only
 \'speexenc\' is available for Ogg/Speex encoding.
 .TP
-.B MPPENCODERSYNTAX
+.B MPCENCODERSYNTAX
 Specifies the style of encoder to use for MPP/MP+ (Musepack) encoder. At this
-point we only have \'mppenc\' available, from corecodecs.org.
+point we only have \'mpcenc\' available, from musepack.net.
 .TP
 .B AACENCODERSYNTAX
 Specifies the style of encoder to use for M4A (AAC) encoder. At this point we
@@ -357,7 +357,7 @@
 .B PATHNAMES
 The following configuration file options specify the pathnames of their
 respective utilities: LAME, TOOLAME, GOGO, BLADEENC, L3ENC, XINGMP3ENC, MP3ENC,
-VORBIZE, OGGENC, FLAC, SPEEXENC, MPPENC, AACEND, ID3, EYED3, EYED3, METAFLAC,
+VORBIZE, OGGENC, FLAC, SPEEXENC, MPCENC, AACEND, ID3, EYED3, EYED3, METAFLAC,
 CDPARANOIA, CDDA2WAV, CDDAFS, CDDISCID, CDDBTOOL, EJECT, MD5SUM, DISTMP3,
 VORBISCOMMENT, NORMALIZE, CDSPEED, MP3GAIN, VORBISGAIN, MPPGAIN, MKCUE, MKTOC,
 CUE2DISCID (see option "\-X"), DIFF and HTTPGET.
@@ -366,7 +366,7 @@
 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, OGGENCOPTS,
-FLACOPTS, SPEEXENCOPTS, MPPENCOPTS, AACENCOPTS, ID3OPTS, EYED3OPTS, MP3GAINOPTS,
+FLACOPTS, SPEEXENCOPTS, MPCENCOPTS, AACENCOPTS, ID3OPTS, EYED3OPTS, MP3GAINOPTS,
 CDPARANOIAOPTS, CDDA2WAVOPTS, CDDAFSOPTS, CDDBTOOLOPTS, EJECTOPTS, DISTMP3OPTS,
 NORMALIZEOPTS, CDSPEEDOPTS, MKCUEOPTS, VORBISCOMMMENTOPTS, METAFLACOPTS,
 DIFFOPTS, FLACGAINOPTS, VORBISGAINOPTS and HTTPGETOPTS.
@@ -551,7 +551,7 @@
 \fBabcde\fR requires the following backend tools to work:
 .TP
 .B *
-An Ogg/Vorbis, MP3, FLAC, Ogg/Speex, MPP/MP+(Musepack) or M4A encoder (oggenc, vorbize, lame, gogo, bladeenc, l3enc, mp3enc, flac, speexenc, mppenc, faac)
+An Ogg/Vorbis, MP3, FLAC, Ogg/Speex, MPP/MP+(Musepack) or M4A encoder (oggenc, vorbize, lame, gogo, bladeenc, l3enc, mp3enc, flac, speexenc, mpcenc, faac)
 .TP
 .B *
 An audio CD reading utility (cdparanoia, icedax, cdda2wav, dagrab)
@@ -590,7 +590,7 @@
 .BR flac (1),
 .BR toolame (1),
 .BR speexenc (1),
-.BR mppenc (1),
+.BR mpcenc (1),
 .BR faac (1),
 .BR id3 (1),
 .BR eyeD3 (1),
Index: abcde.conf
===================================================================
--- abcde.conf	(revision 369)
+++ abcde.conf	(working copy)
@@ -59,8 +59,8 @@
 # lame, gogo, bladeenc, l3enc, xingmp3enc, mp3enc - for MP3ENCODERSYNTAX
 # flac - the only supported for FLACENCODERSYNTAX at the moment
 # speexenc - the only encoder for SPEEXENCODERSYNTAX
-# mppenc - encoder for MPPENCODERSYNTAX
-# default is a valid option for oggenc, lame, flac, speexenc and mppenc.
+# mpcenc - encoder for MPCENCODERSYNTAX
+# default is a valid option for oggenc, lame, flac, speexenc and mpcenc.
 # Currently this affects the default location of the binary, the variable
 # to pick encoder command-line options from, and where the options are
 # given.
@@ -68,7 +68,7 @@
 #OGGENCODERSYNTAX=default
 #FLACENCODERSYNTAX=default
 #SPEEXENCODERSYNTAX=default
-#MPPENCODERSYNTAX=default
+#MPCENCODERSYNTAX=default
 #AACENCODERSYNTAX=default
 
 # Specify the syntax of the normalize binary here - so far only 'normalize'
@@ -126,7 +126,7 @@
 #OGGENC=oggenc
 #FLAC=flac
 #SPEEXENC=speexenc
-#MPPENC=mppenc
+#MPCENC=mpcenc
 #AACENC=faac
 
 #ID3=id3
@@ -179,10 +179,10 @@
 #SPEEXENCOPTS=
 
 # MPP/MP+ (Musepack):
-# For the encoder options take a look at the manpage. Set them like this:
-# MPPENCOPTS='--xtreme' if you wish to set more options then:
-# MPPENCOPTS='--xtreme --skip 20 --fade 10'
-#MPPENCOPTS=
+# For the encoder options look at: mpcenc --longhelp. Set them like this:
+# MPCENCOPTS='--xtreme' if you wish to set more options then:
+# MPCENCOPTS='--xtreme --skip 20 --fade 10'
+#MPCENCOPTS=
 
 # M4A/AAC
 #AACENCOPTS=
Index: debian/control
===================================================================
--- debian/control	(revision 369)
+++ debian/control	(working copy)
@@ -10,7 +10,7 @@
 
 Package: abcde
 Architecture: all
-Depends: ${misc:Depends}, cd-discid, wget, cdparanoia | icedax, vorbis-tools (>= 1.0beta4-1) | lame | flac | bladeenc | speex
+Depends: ${misc:Depends}, cd-discid, wget, cdparanoia | icedax, vorbis-tools (>= 1.0beta4-1) | lame | flac | bladeenc | speex | musepack-tools
 Recommends: vorbis-tools, libmusicbrainz-discid-perl, libwebservice-musicbrainz-perl, libdigest-sha-perl, mailx
 Suggests: eject, distmp3, id3 (>= 0.12), id3v2, eyed3, normalize-audio, vorbisgain, mkcue, mp3gain, atomicparsley
 Description: A Better CD Encoder


More information about the Abcde-users mailing list