From 9f659adac68c1a038d7c112806aba0d56bccc741 Mon Sep 17 00:00:00 2001 From: data Date: Sun, 11 Jul 2004 14:07:23 +0000 Subject: [PATCH] abcde.conf - Missing MPPENC variable debian/control - Added MPP/MP+ info - Added bits to the description debian/changelog TODO - The * problem is still there. cddb-tool - Copyright update FAQ - Added a question about new codecs KNOWN.BUGS - Added the * problem README - updated MPP/MP+ info abcde.1 - Plenty of missing bits about MPP and some other minor updated abcde - Added some bits about MPP/MP+ - mungefile clears stars, but that does not solve our problems git-svn-id: http://abcde.googlecode.com/svn/trunk@4 a0fa61bc-5347-0410-a1a9-7f54aa4e1825 --- FAQ | 8 ++++++++ KNOWN.BUGS | 2 +- README | 14 +++++++------- TODO | 2 ++ abcde | 18 ++++++++++-------- abcde.1 | 30 +++++++++++++++--------------- abcde.conf | 2 ++ cddb-tool | 2 +- debian/changelog | 11 ++++++++--- debian/control | 12 ++++++++---- 10 files changed, 62 insertions(+), 39 deletions(-) diff --git a/FAQ b/FAQ index 897be18..a62c2fe 100644 --- a/FAQ +++ b/FAQ @@ -92,6 +92,14 @@ Q. Huh! Why is MPPENCODER (with MPP) and .mpc the extension? A. Dunno. You must ask the guys who created and defined the format. The standard is MPEGplus (MPP/MP+) but the files use .mpc extension. +Q. I want the new *put the newest and coolest codec there* format to be + supported by abcde. Abcde is so cool but i want to encode also to this + new format... +A. Patches are welcome! ;) + No, seriously, if the format is usable, available for Linux and open + source/free software, it should be fairly easy to integrate. Support for + AAC (m4p) should be the next one to be introduced. + OBSOLETE -------- Q. I set KEEPWAVS to "y" but abcde insists on erasing my directory, along diff --git a/KNOWN.BUGS b/KNOWN.BUGS index a45b148..c31d62b 100644 --- a/KNOWN.BUGS +++ b/KNOWN.BUGS @@ -1 +1 @@ -No serious ones ;) +* If the some info contains a * (star) the directory creation fails. Being addressed diff --git a/README b/README index e180300..68447e4 100644 --- a/README +++ b/README @@ -2,11 +2,11 @@ ABCDE ===== abcde is a frontend command-line utility (actually, a shell script) that -grabs tracks off a CD, encodes them to Ogg/Vorbis, MP3, FLAC or Ogg/Speex -format, and tags them, all in one go. +grabs tracks off a CD, encodes them to Ogg/Vorbis, MP3, FLAC, Ogg/Speex and/or +MPP/MP+(Musepack) format, and tags them, all in one go. -Your finished Ogg/MP3/FLAC/Speex's are, by default, stored in a subdirectory of -the current directory (named after the artist) with a filename based on the +Your finished Ogg/MP3/FLAC/Speex/MPP's are, by default, stored in a subdirectory +of the current directory (named after the artist) with a filename based on the track title. Spaces are replaced by underscores, and apostrophes and control codes are filtered out. Colons are replaced with an underscore and a hyphen. The end result usually looks like: Our_Lady_Peace/01.Supermans_Dead.ogg @@ -24,8 +24,7 @@ Low on disk space? abcde has different algorithms to schedule ripping and encoding - to optimize for disk conservation, use -l. abcde can also take advantage of SMP systems, just like make. Try -'abcde -j 2' - it'll run two encoder jobs while it rips the next -track. +'abcde -j 2' - it'll run two encoder jobs while it rips the next track. abcde now uses FreeDB by default. To use a different FreeDB mirror or another CDDB service, change the CDDBURL option in your abcde.conf. @@ -177,7 +176,8 @@ abcde requires the following backend tools to work: You can get a trial version of mp3enc at: http://www.iis.fhg.de/amm/download/ or: * FLAC encoder (flac) or: -* Ogg/Speex encoder (speexenc) +* Ogg/Speex encoder (speexenc) or: +* MPP/MP+(Musepack) encoder (mppenc) * normalize for volume normalization. * CD Paranoia, an audio CD reading utility, * Or cdda2wav, the audio CD reading utility cdparanoia was born from, diff --git a/TODO b/TODO index 16797b0..e960cde 100644 --- a/TODO +++ b/TODO @@ -1,5 +1,7 @@ TODO: ---- +* Get the echo instances to behave consistently + * move the wav files to a different dir if the user wants to keep the tracks * read the TOC and CDTEXT files and store them * read the complete CD to a single file, storing TOC seems a good idea to diff --git a/abcde b/abcde index 852164d..48490bc 100755 --- a/abcde +++ b/abcde @@ -11,7 +11,7 @@ # Copyright for this work is to expire January 1, 2010, after which it # shall be public domain. -VERSION=2.1.20-2.2pre2 +VERSION=2.2pre2 usage () { @@ -35,7 +35,7 @@ echo "-L Use local CDDB storage directory" echo "-n No lookup. Don't query CDDB, just create and use template" echo "-N Noninteractive. Never prompt for anything" echo "-m Modify playlist to include CRLF endings, to comply with some players" -echo "-o Output file type(s) (ogg,mp3,flac,spx). Defaults to ogg" +echo "-o Output file type(s) (ogg,mp3,flac,spx,mpc). Defaults to ogg" echo "-p Pad track numbers with 0's (if less than 10 tracks)" echo "-r [host1,host2...] Also encode on these remote hosts" echo "-s Start the track numbering at a given number" @@ -465,7 +465,7 @@ do_encode () # 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 encodetrack-$OUTPUT-$1 nice $ENCNICE $MPPENCODER $MPPENCOPTS --artist "$TRACKARTIST" --album "$DALBUM" --title "$TRACKNAME" --track "$1" --genre "$CDGENRE" --year "$CDYEAR" --comment "$COMMENT" "$IN" "$OUT" + run_command encodetrack-$OUTPUT-$1 nice $ENCNICE $MPPENCODER $MPPENCODEROPTS --artist "$TRACKARTIST" --album "$DALBUM" --title "$TRACKNAME" --track "$1" --genre "$CDGENRE" --year "$CDYEAR" --comment "$COMMENT" "$IN" "$OUT" ;; esac done @@ -783,7 +783,7 @@ do_discid () { # Query the CD to get the track info, unless the user specified -C if [ -z "$DISCID" ]; then - echo -n "Getting CD track info... " + vecho -n "Getting CD track info... " TRACKINFO=$($CDDISCID $CDROM) # Make sure there's a CD in there by checking cd-discid's return code if [ "$?" = "1" ]; then @@ -1017,7 +1017,7 @@ do_localcddb () done [ x"$USELOCALRESP" = "x" ] && USELOCALRESP="y" else - echo "y">&2 + echo "y" >&2 fi if [ "$USELOCALRESP" = "y" ]; then #echo "Using local copy of CDDB data" @@ -1286,7 +1286,7 @@ do_cddbedit () fi else # We need some code to show the selected option when local repository is selected and we have found a match - vecho "Using cached CDDB match..." + vecho "Using cached CDDB match..." >&2 # Display the $ABCDETEMPDIR/cddbchoices file created above # Pick a pager so that if the tracks overflow the screen the user can still view everything if [ -r "$ABCDETEMPDIR/cddbchoices" ]; then @@ -1333,7 +1333,7 @@ do_cddbedit () exit 1 fi CDDBDATA="$ABCDETEMPDIR/cddbread.$(checkstatus cddb-choice)" - echo -n "Edit selected CDDB data? [y/n] (" + echo -n "Edit selected CDDB data? [y/n] (" >&2 if [ "$INTERACTIVE" = "y" ]; then if [ "$UNKNOWNDISK" = "y" ]; then echo -n "y): " >&2 @@ -1734,6 +1734,8 @@ OGGENCOPTS= FLACOPTS= # speex SPEEXENCOPTS= +# mpc +MPPENCOPTS= ID3OPTS= ID3V2OPTS= @@ -1758,7 +1760,7 @@ ACTIONS=cddb,read,encode,tag,move,clean # Custom filename munging: mungefilename () { - echo "$@" | sed s,:,\ -,g | tr \ / __ | tr -d \'\"\?\[:cntrl:\] + echo "$@" | sed s,:,\ -,g | sed 's,*,-,g' | tr \ / __ | tr -d \'\"\?\[:cntrl:\] } # pre_read diff --git a/abcde.1 b/abcde.1 index f0f05e7..61b88b3 100644 --- a/abcde.1 +++ b/abcde.1 @@ -131,11 +131,10 @@ will process the entire CD. Accepts ranges of track numbers - "abcde 1-5 7 9" will process tracks 1, 2, 3, 4, 5, 7, and 9. .SH OUTPUT Each track is, by default, placed in a separate file named after the track -in a subdirectory named after the artist under the current directory. Each -file is given an extension identifying its compression format, '.ogg', -\'.mp3', '.flac', '.spx', or '.mpc'. +in a subdirectory named after the artist under the current directory. This can be modified using the OUTPUTFORMAT and VAOUTPUTFORMAT -variables in your abcde.conf. +variables in your abcde.conf. Each file is given an extension identifying +its compression format, '.ogg', '.mp3', '.flac', '.spx', or '.mpc'. .SH CONFIGURATION abcde sources two configuration files on startup - /etc/abcde.conf and $HOME/.abcde.conf, in that order. @@ -143,7 +142,6 @@ $HOME/.abcde.conf, in that order. The configuration variables have to be set as follows: .TP .B VARIABLE=value -.TP Except when "value" needs to be quoted or otherwise interpreted. If other variables within "value" are to be expanded upon reading the configuration file, then double quotes should be used. If they are only supposed to be @@ -217,21 +215,22 @@ Specifies the format for completed Ogg/Vorbis, MP3, FLAC, Ogg/Speex or MPP/MP+ Variables are included using standard shell syntax. Allowed variables are GENRE, ALBUMFILE, ARTISTFILE, TRACKFILE, TRACKNUM, and YEAR. Default is -\'${ARTISTFILE}/${TRACKFILE}.${OUTPUTTYPE}\'. +\'${ARTISTFILE}-${ALBUMFILE}/${TRACKNUM}-${TRACKFILE}\'. Make sure to use single quotes around this variable. TRACKNUM is -automatically zero-padded. +automatically zero-padded, when the number of encoded tracks is higher than +9. When lower, you can force with '-p' in the command line. .TP .B OUTPUTTYPE Specifies the encoding format to output, as well as the default extension and encoder. Defaults to "ogg". Valid settings are "ogg" (Ogg/Vorbis), "mp3" -(MPEG-1 Audio Layer 3), "flac" (Free Lossless Audio Codec), "spx" (Ogg/Speex) +(MPEG-1 Audio Layer III), "flac" (Free Lossless Audio Codec), "spx" (Ogg/Speex) and "mpc" (MPP/MP+ (Musepack)). Values like "ogg,mp3" encode the tracks in both Ogg/Vorbis and MP3 formats. .P For each value in OUTPUTTYPE, abcde expands a different process for encoding, tagging and moving, so you can use the format placeholder, OUTPUT, to create different subdirectories to hold the different types. The variable OUTPUT will -be 'ogg', 'mp3', 'flac' and/or 'spx', depending on the OUTPUTTYPE you define. +be 'ogg', 'mp3', 'flac', 'spx' and/or 'mpc', depending on the OUTPUTTYPE you define. For example .P OUTPUTFORMAT='${OUTPUT}/${ARTISTFILE}/${ALBUMFILE}/${TRACKNUM}._${TRACKFILE}' @@ -243,16 +242,17 @@ OUTPUTFORMAT is set to. .B PATHNAMES The following configuration file options specify the pathnames of their respective utilities: LAME, GOGO, BLADEENC, L3ENC, XINGMP3ENC, MP3ENC, -VORBIZE, OGGENC, FLAC, SPEECENC, ID3, ID3V2, CDPARANOIA, CDDA2WAV, HTTPGET, -CDDISCID, CDDBTOOL, EJECT, NORMALIZE, DISTMP3, VORBISCOMMENT, and CDSPEED. +VORBIZE, OGGENC, FLAC, SPEECENC, MPPENC, ID3, ID3V2, CDPARANOIA, CDDA2WAV, +HTTPGET, CDDISCID, CDDBTOOL, EJECT, NORMALIZE, DISTMP3, VORBISCOMMENT, and +CDSPEED. .TP .B COMMAND-LINE OPTIONS If you wish to specify command-line options to any of the programs abcde uses, set the following configuration file options: LAMEOPTS, GOGOOPTS, BLADEENCOPTS, L3ENCOPTS, XINGMP3ENCOPTS, MP3ENCOPTS, VORBIZEOPTS, -OGGENCOPTS, FLACOPTS, SPEEXOPTS, ID3OPTS, ID3V2OPTS, CDPARANOIAOPTS, -CDDA2WAVOPTS, HTTPGETOPTS, CDDBTOOLOPTS, EJECTOPTS, DISTMP3OPTS, -NORMALIZEOPTS, CDSPEEDOPTS, and CDSPEEDVALUE. +OGGENCOPTS, FLACOPTS, SPEEXENCOPTS, MPPENCOPTS, ID3OPTS, ID3V2OPTS, +CDPARANOIAOPTS, CDDA2WAVOPTS, HTTPGETOPTS, CDDBTOOLOPTS, EJECTOPTS, +DISTMP3OPTS, NORMALIZEOPTS, CDSPEEDOPTS, and CDSPEEDVALUE. .TP .B CDROM If set, it points to the CD-Rom device which has to be used for audio @@ -364,6 +364,6 @@ An HTTP retrieval program: wget, fetch (FreeBSD) or curl (Mac OS X, among others .BR distmp3 (1), .BR distmp3host (1), .BR curl(1) -.SH AUTHOR +.SH AUTHORS Robert Woodcock Jesus Climent diff --git a/abcde.conf b/abcde.conf index ffb23ee..6c2fff5 100644 --- a/abcde.conf +++ b/abcde.conf @@ -81,6 +81,8 @@ #OGGENC=oggenc #FLAC=flac #SPEEXENC=speexenc +#MPPENC=mppenc + #ID3=id3 #ID3V2=id3v2 #CDPARANOIA=cdparanoia diff --git a/cddb-tool b/cddb-tool index b760e26..22a6fdd 100755 --- a/cddb-tool +++ b/cddb-tool @@ -2,7 +2,7 @@ # Copyright (C) 1999 Nathaniel Smith # Copyright (C) 1999, 2000, 2001 Robert Woodcock -# Copyright (C) 2003 Jesus Climent +# Copyright (C) 2003, 2004 Jesus Climent # This code is hereby licensed for public consumption under either the # GNU GPL v2 or greater, or Larry Wall's Artistic License - your choice. # diff --git a/debian/changelog b/debian/changelog index 8a46a96..a0d1810 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,6 +1,6 @@ abcde (2.1.20-2.2pre2-1) unstable; urgency=low - * Added support for MPP/MP+(Musepack) encoding. Although I am trying to + * Added support for MPP/MP+(Musepack) encoding. Although I am trying to get 2.2 for Debian Sarge release, mpc seems safe enough to introduce. See corecodec.org for code. * Some POSIX shell corrections (making the code more portable). Thanks to @@ -10,7 +10,7 @@ abcde (2.1.20-2.2pre2-1) unstable; urgency=low * Small MacOS X fix, allowing directories with "()" to work. Thanks to Evan Jones. - On the MacOS X, I still do not know if abcde works correctly. If does - not, please, drop a note. Or else. + not, please, drop a note. Or else. * DOSPLAYLIST also changes "/" with "\". * Option "-s " added to modify the numbering from a starting point (Closes: #95828). Geez! That is low bug number... @@ -19,8 +19,13 @@ abcde (2.1.20-2.2pre2-1) unstable; urgency=low work (at least there is no support for them in abcde) (Closes: #112692). * New "0" choice for "None of the above" has been introduced. If selected, a template is created and the user encouraged to edit it (Closes: #147683). + * New options for when the PLAYLIST already exists: erase, append or keep. + * Small bug fixes along the code: + - abcde.1 corrections + - abcde corrections + - abcde.conf additions - -- Jesus Climent Mon, 26 Apr 2004 12:19:22 +0000 + -- Jesus Climent Sat, 10 Jul 2004 10:42:12 -0300 abcde (2.1.19-1) unstable; urgency=low diff --git a/debian/control b/debian/control index 993f983..faa06ad 100644 --- a/debian/control +++ b/debian/control @@ -7,13 +7,17 @@ Build-Depends: debhelper Package: abcde Architecture: all -Depends: cd-discid, wget, cdparanoia | cdda2wav, vorbis-tools (>= 1.0beta4-1) | lame | flac | bladeenc | speex +Depends: cd-discid, wget, cdparanoia | cdda2wav, vorbis-tools (>= 1.0beta4-1) | lame | flac | bladeenc | speex Conflicts: cdgrab Replaces: cdgrab Provides: cdgrab Suggests: eject, distmp3, id3 (>= 0.12), id3v2, normalize Description: A Better CD Encoder A frontend program to cdparanoia, wget, cd-discid, id3, and your favorite - Ogg/Vorbis, MP3, FLAC or Ogg/Speex encoder (defaults to oggenc). Grabs an - entire CD and converts each track to Ogg/Vorbis, MP3, FLAC or Ogg/Speex, - then comments or ID3-tags each file, with one command. + Ogg/Vorbis, MP3, FLAC, Ogg/Speex and/or MPP/MP+(Musepack) encoder (defaults + to oggenc). Grabs an entire CD and converts each track to the specified + formats and then comments or ID3-tags each file, with one command. + . + With abcde you can encode several formats with one single command, using a + single CD read operation. It also allows you to read and encode while not + on the internet, and later query a CDDB server to tag your files. -- 2.20.1