| 1 | .TH abcde 1 |
| 2 | .SH NAME |
| 3 | abcde \- Grab an entire CD and compress it to Ogg/Vorbis, MP3, FLAC, Ogg/Speex and/or MPP/MP+(Musepack) format. |
| 4 | .SH SYNOPSIS |
| 5 | .B abcde |
| 6 | .I [options] [tracks] |
| 7 | .SH DESCRIPTION |
| 8 | Ordinarily, the process of grabbing the data off a CD and encoding it, then |
| 9 | tagging or commenting it, is very involved. |
| 10 | .BR abcde |
| 11 | is designed to automate this. It will take an entire CD and convert it into |
| 12 | a compressed audio format - Ogg/Vorbis, MPEG Audio Layer III, Free Lossless |
| 13 | Audio Codec (FLAC), Ogg/Speex or MPP/MP+(Musepack). With one command, it will: |
| 14 | .TP |
| 15 | .B * |
| 16 | Do a CDDB query over the Internet to look up your CD or use a locally stored CDDB entry |
| 17 | .TP |
| 18 | .B * |
| 19 | Grab an audio track (or all the audio CD tracks) from your CD |
| 20 | .TP |
| 21 | .B * |
| 22 | Normalize the volume of the individual file (or the album as a single unit) |
| 23 | .TP |
| 24 | .B * |
| 25 | Compress to Ogg/Vorbis, MP3, FLAC, Ogg/Speex, MPP/MP+(Musepack) and/or M4A format(s), all in one CD read |
| 26 | .TP |
| 27 | .B * |
| 28 | Comment or ID3/ID3v2 tag |
| 29 | .TP |
| 30 | .B * |
| 31 | Give an intelligible filename |
| 32 | .TP |
| 33 | .B * |
| 34 | Calculate replaygain values for the individual file (or the album as a single unit) |
| 35 | .TP |
| 36 | .B * |
| 37 | Delete the intermediate WAV file (or save it for later use) |
| 38 | .TP |
| 39 | .B * |
| 40 | Repeat until finished |
| 41 | .SH OPTIONS |
| 42 | .TP |
| 43 | .B \-1 |
| 44 | Encode the whole CD in a single file. The resulting file uses the CD title |
| 45 | for tagging. If the resulting format is a flac file with an embeded cuesheet, |
| 46 | the file can be used as a source for creating other formats. |
| 47 | .TP |
| 48 | .B \-a [actions] |
| 49 | Comma-delimited list of actions to perform. Can be one or more of: |
| 50 | cddb, read, normalize, encode, tag, move, replaygain, playlist, clean. Normalize |
| 51 | and encode imply read. Tag implies cddb, read, encode. Move implies |
| 52 | cddb, read, encode, tag. Replaygain implies cddb, read, encode, tag and move. |
| 53 | Playlist implies cddb. The default is to do all actions except normalize, |
| 54 | replaygain and playlist. |
| 55 | .TP |
| 56 | .B \-b |
| 57 | Enable batch mode normalization. See the BATCHNORM configuration variable. |
| 58 | .TP |
| 59 | .B \-B |
| 60 | Disable batch mode replaygain. It processes file by file to add the replaygain |
| 61 | information. See the NOBATCHREPLAYGAIN configuration variable. |
| 62 | .TP |
| 63 | .B \-c [filename] |
| 64 | Specifies an additional configuration file to parse. Configuration options |
| 65 | in this file override those in /etc/abcde.conf or $HOME/.abcde.conf. |
| 66 | .TP |
| 67 | .B \-C [discid] |
| 68 | Allows you to resume a session for |
| 69 | .I discid |
| 70 | when you no longer have the CD available (abcde will automatically resume if |
| 71 | you still have the CD in the drive). You must have already finished at |
| 72 | least the "read" action during the previous session. |
| 73 | .TP |
| 74 | .B \-d [devicename | filename] |
| 75 | CD\-ROM block device that contains audio tracks to be read. Alternatively, a |
| 76 | single-track flac file with embeded cuesheet. |
| 77 | .TP |
| 78 | .B \-D |
| 79 | Capture debugging information (you'll want to redirect this \- try 'abcde \-D |
| 80 | 2>logfile') |
| 81 | .TP |
| 82 | .B \-e |
| 83 | Erase information about encoded tracks from the internal status file, to enable |
| 84 | other encodings if the wav files have been kept. |
| 85 | .TP |
| 86 | .B \-f |
| 87 | Force the removal of the temporary ABCDETEMPDIR directory, even when we have |
| 88 | not finished. For example, one can read and encode several formats, including |
| 89 | \'.ogg\', and later on execute a \'move\' action with only one of the given |
| 90 | formats. On a normal situation it would erase the rest of those encoded |
| 91 | formats. In this case, abcde will refuse to execute such command, except if \-f |
| 92 | is used. |
| 93 | .TP |
| 94 | .B \-g |
| 95 | Enable lame's \-\-nogap option. See the NOGAP variable. WARNING: lame's |
| 96 | \-\-nogap disables the Xing mp3 tag. This tag is required for mp3 players to |
| 97 | correctly display track lengths when playing variable-bit-rate mp3 files. |
| 98 | .TP |
| 99 | .B \-h |
| 100 | Get help information. |
| 101 | .TP |
| 102 | .B \-j [number] |
| 103 | Start [number] encoder processes at once. Useful for SMP systems. Overrides |
| 104 | the MAXPROCS configuration variable. Set it to "0" when using distmp3 to avoid |
| 105 | local encoding processes. |
| 106 | .TP |
| 107 | .B \-k |
| 108 | Keep the wav files after encoding. |
| 109 | .TP |
| 110 | .B \-l |
| 111 | Use the low-diskspace algorithm. See the LOWDISK configuration variable. |
| 112 | .TP |
| 113 | .B \-L |
| 114 | Use a local CDDB repository. See CDDBLOCALDIR variable. |
| 115 | .TP |
| 116 | .B \-n |
| 117 | Do not query CDDB database. Create and use a template. Edit the template to |
| 118 | provide song names, artist(s), ... |
| 119 | .TP |
| 120 | .B \-N |
| 121 | Non interactive mode. Do not ask anything from the user. Just go ahead. |
| 122 | .TP |
| 123 | .B \-m |
| 124 | Create DOS-style playlists, modifying the resulting one by adding CRLF line |
| 125 | endings. Some hardware players insist on having those to work. |
| 126 | .TP |
| 127 | .B \-M |
| 128 | Create a CUE file with information about the CD. Together with the possibility |
| 129 | of creating a single file (see option "\-1"), one can recreate the original CD. |
| 130 | If the cuesheet is embeded in a flac single file it can be used as source for |
| 131 | encoding other formats. |
| 132 | .TP |
| 133 | .B \-o [filetype][:filetypeoptions] |
| 134 | Select output type. Can be "vorbis" (or "ogg"), "mp3", "flac", "spx", "mpc", |
| 135 | "m4a" or "wav". Specify a comma-delimited list of output types to obtain all |
| 136 | specified types. See the OUTPUTTYPE configuration variable. One can pass |
| 137 | options to the encoder for a specific filetype on the command line separating |
| 138 | them with a colon. The options must be escaped with double-quotes. |
| 139 | .TP |
| 140 | .B \-p |
| 141 | Pads track numbers with 0\'s. |
| 142 | .TP |
| 143 | .B \-P |
| 144 | Use Unix PIPES to read and encode in one step. It disables multiple encodings, |
| 145 | since the WAV audio file is never stored in the disc. |
| 146 | .TP |
| 147 | .B \-r [hosts...] |
| 148 | Remote encode on this comma-delimited list of machines using distmp3. See |
| 149 | the REMOTEHOSTS configuration variable. |
| 150 | .TP |
| 151 | .B \-R |
| 152 | When CDDBLOCALDIR and CDDBUSELOCAL are defined, search recursively under the |
| 153 | defined directory for matches of the CDDB entry. |
| 154 | .TP |
| 155 | .B \-s [fields...] |
| 156 | List, separated by comas, the fields to be shown in the CDDB parsed entries. |
| 157 | Right now it only uses "year" and "genre". |
| 158 | .TP |
| 159 | .B \-S [speed] |
| 160 | Set the speed of the CD drive. Needs CDSPEED and CDSPEEDOPTS set properly |
| 161 | and both the program and device must support the capability. |
| 162 | .TP |
| 163 | .B \-t [number] |
| 164 | Start the numbering of the tracks at a given number. It only affects the |
| 165 | filenames and the playlist. Internal (tag) numbering remains the same. |
| 166 | .TP |
| 167 | .B \-T [number] |
| 168 | Same as \-t but changes also the internal (tag) numbering. Keep in mind that |
| 169 | the default TRACK tag for MP3 is $T/$TRACKS so it is changed to simply $T. |
| 170 | .TP |
| 171 | .B \-u |
| 172 | Set CDDBPROTOCOL to version 6, so that we retrieve UTF-8 encoded CDDB |
| 173 | information, and we tag and add comments with a proper encoding. This flag will |
| 174 | be removed and -U will be added to set it to version 5 once version 6 becomes |
| 175 | the default. |
| 176 | .TP |
| 177 | .B \-v |
| 178 | Show the version and exit |
| 179 | .TP |
| 180 | .B \-V |
| 181 | Be a bit more verbose. On slow networks the CDDB requests might give the |
| 182 | sensation nothins is happening. |
| 183 | .TP |
| 184 | .B \-x |
| 185 | Eject the CD when all tracks have been read. See the EJECTCD configuration |
| 186 | variable. |
| 187 | .TP |
| 188 | .B \-w [comment] |
| 189 | Add a comment to the tracks ripped from the CD. |
| 190 | .TP |
| 191 | .B \-W [number] |
| 192 | Concatenate CD\'s. It uses the number provided to define a comment "CD #" and |
| 193 | to modify the numbering of the tracks, starting with "#01". |
| 194 | .TP |
| 195 | .B \-z |
| 196 | DEBUG mode: it will rip, using cdparanoia, the very first second of each track |
| 197 | and proceed with the actions requested very quickly, also providing some |
| 198 | "hidden" information about what happens on the background. CAUTION: IT WILL |
| 199 | ERASE ANY EXISTING RIPS WITHOUT WARNING! |
| 200 | .TP |
| 201 | .B [tracks] |
| 202 | A list of tracks you want abcde to process. If this isn't specified, abcde |
| 203 | will process the entire CD. Accepts ranges of track numbers - |
| 204 | "abcde 1-5 7 9" will process tracks 1, 2, 3, 4, 5, 7, and 9. |
| 205 | .SH OUTPUT |
| 206 | Each track is, by default, placed in a separate file named after the track |
| 207 | in a subdirectory named after the artist under the current directory. |
| 208 | This can be modified using the OUTPUTFORMAT and VAOUTPUTFORMAT |
| 209 | variables in your abcde.conf. Each file is given an extension identifying |
| 210 | its compression format, 'vorbis' for '.ogg', '.mp3', '.flac', '.spx', '.mpc', '.aac' or '.wav'. |
| 211 | .SH CONFIGURATION |
| 212 | abcde sources two configuration files on startup - /etc/abcde.conf and |
| 213 | $HOME/.abcde.conf, in that order. |
| 214 | .TP |
| 215 | The configuration options stated on those files can be overriden by providing |
| 216 | the appropiate flags at runtime. |
| 217 | .TP |
| 218 | The configuration variables have to be set as follows: |
| 219 | .TP |
| 220 | .B VARIABLE=value |
| 221 | Except when "value" needs to be quoted or otherwise interpreted. If other |
| 222 | variables within "value" are to be expanded upon reading the configuration |
| 223 | file, then double quotes should be used. If they are only supposed to be |
| 224 | expanded upon use (for example OUTPUTFORMAT) then single quotes must be used. |
| 225 | .TP |
| 226 | All sh escaping/quoting rules apply. |
| 227 | .TP |
| 228 | Here is a list of options abcde recognizes: |
| 229 | .TP |
| 230 | .B CDDBMETHOD |
| 231 | Specifies the method we want to use to retrieve the track information. Two |
| 232 | values are recognized: "cddb" and "musicbrainz". The "cddb" value needs the |
| 233 | CDDBURL and HELLOINFO variables described below. The "musicbrainz" value uses |
| 234 | Python to stablish a conversation with the server for information retrieval. |
| 235 | .TP |
| 236 | .B CDDBURL |
| 237 | Specifies a server to use for CDDB lookups. |
| 238 | .TP |
| 239 | .B HELLOINFO |
| 240 | Specifies the Hello information to send to the CDDB server. The CDDB |
| 241 | protocol requires you to send a valid username and hostname each time you |
| 242 | connect. The format of this is username@hostname. |
| 243 | .TP |
| 244 | .B CDDBLOCALDIR |
| 245 | Specifies a directory where we store a local CDDB repository. The entries must |
| 246 | be standard CDDB entries, with the filename being the DISCID value. Other |
| 247 | CD playing and ripping programs (like Grip) store the entries under ~/.cddb |
| 248 | and we can make use of those entries. |
| 249 | .TP |
| 250 | .B CDDBLOCALRECURSIVE |
| 251 | Specifies if the CDDBLOCALDIR has to be searched recursively trying to find a |
| 252 | match for the CDDB entry. If a match is found and selected, and CDDBCOPYLOCAL |
| 253 | is selected, it will be copied to the root of the CDDBLOCALDIR if |
| 254 | CDDBLOCALPOLICY is "modified" or "new". |
| 255 | .TP |
| 256 | .B CDDBLOCALPOLICY |
| 257 | Defines when a CDDB entry should be stored in the defined CDDBLOCALDIR. The |
| 258 | possible policies are: "net" for a CDDB entry which has been received from the |
| 259 | net (overwriting any possible local CDDB entry); "new" for a CDDB entry which |
| 260 | was received from the net, but will request confirmation to overwrite a local |
| 261 | CDDB entry found in the root of the CDDBLOCALDIR directory; "modified" for a |
| 262 | CDDB entry found in the local repository but which has been modified by the |
| 263 | user; and "always" which forces the CDDB entry to be stored back in the root of |
| 264 | the CDDBLOCALDIR no matter where it was found, and no matter it was not edited. |
| 265 | This last option will always overwrite the one found in the root of the local |
| 266 | repository (if any). |
| 267 | .TP |
| 268 | .B CDDBCOPYLOCAL |
| 269 | Store local copies of the CDDB entries under the $CDDBLOCALDIR directory. |
| 270 | .TP |
| 271 | .B CDDBUSELOCAL |
| 272 | Actually use the stored copies of the CDDB entries. Can be overriden using the |
| 273 | "-L" flag (if is CDDBUSELOCAL in "n"). If an entry is found, we always give |
| 274 | the choice of retrieving a CDDB entry from the internet. |
| 275 | .TP |
| 276 | .B SHOWCDDBFIELDS |
| 277 | Coma-separated list of fields we want to parse during the CDDB parsing. |
| 278 | Defaults to "year,genre". |
| 279 | .TP |
| 280 | .B OGGENCODERSYNTAX |
| 281 | Specifies the style of encoder to use for the Ogg/Vorbis encoder. Valid options |
| 282 | are \'oggenc\' (default for Ogg/Vorbis) and \'vorbize\'. |
| 283 | This affects the default location of the binary, |
| 284 | the variable to pick encoder command-line options from, and where the options |
| 285 | are given. |
| 286 | .TP |
| 287 | .B MP3ENCODERSYNTAX |
| 288 | Specifies the style of encoder to use for the MP3 encoder. Valid options are |
| 289 | \'lame\' (default for MP3), \'gogo\', \'bladeenc\', \'l3enc\' and \'mp3enc\'. |
| 290 | Affects the same way as explained above for Ogg/Vorbis. |
| 291 | .TP |
| 292 | .B FLACENCODERSYNTAX |
| 293 | Specifies the style of encoder to use for the FLAC encoder. At this point only |
| 294 | \'flac\' is available for FLAC encoding. |
| 295 | .TP |
| 296 | .B SPEEXENCODERSYNTAX |
| 297 | Specifies the style of encoder to use for Speex encoder. At this point only |
| 298 | \'speexenc\' is available for Ogg/Speex encoding. |
| 299 | .TP |
| 300 | .B MPPENCODERSYNTAX |
| 301 | Specifies the style of encoder to use for MPP/MP+ (Musepack) encoder. At this |
| 302 | point we only have \'mppenc\' available, from corecodecs.org. |
| 303 | .TP |
| 304 | .B AACENCODERSYNTAX |
| 305 | Specifies the style of encoder to use for M4A (AAC) encoder. At this point we |
| 306 | only support \'faac\', so \'default\' points to it. |
| 307 | .TP |
| 308 | .B NORMALIZERSYNTAX |
| 309 | Specifies the style of normalizer to use. Valid options are \'default\' |
| 310 | and \'normalize'\ (and both run \'normalize-audio\'), since we only support it, |
| 311 | ATM. |
| 312 | .TP |
| 313 | .B CDROMREADERSYNTAX |
| 314 | Specifies the style of cdrom reader to use. Valid options are \'cdparanoia\', |
| 315 | \'debug\' and \'flac\'. It is used for querying the CDROM and obtain a list of |
| 316 | valid tracks and DATA tracks. The special \'flac\' case is used to "rip" CD |
| 317 | tracks from a single-track flac file. |
| 318 | .TP |
| 319 | .B CUEREADERSYNTAX |
| 320 | Specifies the syntax of the program we use to read the CD CUE sheet. Right now |
| 321 | we only support \'mkcue\', but in the future other readers might be used. |
| 322 | .TP |
| 323 | .B KEEPWAVS |
| 324 | It defaults to no, so if you want to keep those wavs ripped from your CD, |
| 325 | set it to "y". You can use the "-k" switch in the command line. The default |
| 326 | behaviour with KEEPWAVS set is to keep the temporary directory and the wav |
| 327 | files even you have requested the "clean" action. |
| 328 | .TP |
| 329 | .B PADTRACKS |
| 330 | If set to "y", it adds 0's to the file numbers to complete a two-number |
| 331 | holder. Useful when encoding tracks 1-9. |
| 332 | .TP |
| 333 | .B INTERACTIVE |
| 334 | Set to "n" if you want to perform automatic rips, without user intervention. |
| 335 | .TP |
| 336 | .B NICE VALUES |
| 337 | Define the values for priorities (nice values) for the different CPU-hungry |
| 338 | processes: encoding (ENCNICE), CDROM read (READNICE) and distributed encoder |
| 339 | with distmp3 (DISTMP3NICE). |
| 340 | .TP |
| 341 | .B PATHNAMES |
| 342 | The following configuration file options specify the pathnames of their |
| 343 | respective utilities: LAME, TOOLAME, GOGO, BLADEENC, L3ENC, XINGMP3ENC, MP3ENC, |
| 344 | VORBIZE, OGGENC, FLAC, SPEEXENC, MPPENC, AACEND, ID3, ID3V2, EYED3, METAFLAC, |
| 345 | CDPARANOIA, CDDA2WAV, CDDAFS, CDDISCID, CDDBTOOL, EJECT, MD5SUM, DISTMP3, |
| 346 | VORBISCOMMENT, NORMALIZE, CDSPEED, MP3GAIN, VORBISGAIN, MPPGAIN, MKCUE, MKTOC, |
| 347 | DIFF and HTTPGET. |
| 348 | .TP |
| 349 | .B COMMAND-LINE OPTIONS |
| 350 | If you wish to specify command-line options to any of the programs abcde uses, |
| 351 | set the following configuration file options: LAMEOPTS, TOOLAMEOPTS, GOGOOPTS, |
| 352 | BLADEENCOPTS, L3ENCOPTS, XINGMP3ENCOPTS, MP3ENCOPTS, VORBIZEOPTS, OGGENCOPTS, |
| 353 | FLACOPTS, SPEEXENCOPTS, MPPENCOPTS, AACENCOPTS, ID3OPTS, ID3V2OPTS, |
| 354 | CDPARANOIAOPTS, CDDA2WAVOPTS, CDDAFSOPTS, CDDBTOOLOPTS, EJECTOPTS, DISTMP3OPTS, |
| 355 | NORMALIZEOPTS, CDSPEEDOPTS, MKCUEOPTS, VORBISCOMMMENTOPTS, METAFLACOPTS, |
| 356 | DIFFOPTS and HTTPGETOPTS. |
| 357 | .TP |
| 358 | .B CDSPEEDVALUE |
| 359 | Set the value of the CDROM speed. The default is to read the disc as fast as |
| 360 | the reading program and the system permits. The steps are defined as 150kB/s |
| 361 | (1x). |
| 362 | .TP |
| 363 | .B ACTIONS |
| 364 | The default actions to be performed when reading a disc. |
| 365 | .TP |
| 366 | .B CDROM |
| 367 | If set, it points to the CD-Rom device which has to be used for audio |
| 368 | extraction. Abcde tries to guess the right device, but it may fail. The special |
| 369 | \'flac\' option is defined to extract tracks from a single-track flac file. |
| 370 | .TP |
| 371 | .B CDPARANOIACDROMBUS |
| 372 | Defined as "d" when using cdparanoia with an IDE bus and as "g" when using |
| 373 | cdparanoia with the ide-scsi emulation layer. |
| 374 | .TP |
| 375 | .B OUTPUTDIR |
| 376 | Specifies the directory to place completed tracks/playlists in. |
| 377 | .TP |
| 378 | .B WAVOUTPUTDIR |
| 379 | Specifies the temporary directory to store .wav files in. Abcde may use up |
| 380 | to 700MB of temporary space for each session (although it is rare to use |
| 381 | over 100MB for a machine that can encode music as fast as it can read it). |
| 382 | .TP |
| 383 | .B OUTPUTTYPE |
| 384 | Specifies the encoding format to output, as well as the default extension and |
| 385 | encoder. Defaults to "vorbis". Valid settings are "vorbis" (or "ogg") |
| 386 | (Ogg/Vorbis), "mp3" (MPEG-1 Audio Layer III), "flac" (Free Lossless Audio |
| 387 | Codec), "spx" (Ogg/Speex), "mpc" (MPP/MP+ (Musepack)), "m4a" (for M4A (AAC)) or |
| 388 | "wav" (Microsoft Waveform). Values like "vorbis,mp3" encode the tracks in both |
| 389 | Ogg/Vorbis and MP3 formats. |
| 390 | .br |
| 391 | For each value in OUTPUTTYPE, abcde expands a different process for encoding, |
| 392 | tagging and moving, so you can use the format placeholder, OUTPUT, to create |
| 393 | different subdirectories to hold the different types. The variable OUTPUT will |
| 394 | be 'vorbis', 'mp3', 'flac', 'spx', 'mpc', 'm4a' and/or 'wav', depending on the |
| 395 | OUTPUTTYPE you define. For example |
| 396 | .br |
| 397 | OUTPUTFORMAT='${OUTPUT}/${ARTISTFILE}/${ALBUMFILE}/${TRACKNUM}._${TRACKFILE}' |
| 398 | .TP |
| 399 | .B OUTPUTFORMAT |
| 400 | Specifies the format for completed Ogg/Vorbis, MP3, FLAC, Ogg/Speex, MPP/MP+ |
| 401 | (Musepack) or M4A filenames. Variables are included using standard shell |
| 402 | syntax. Allowed variables are GENRE, ALBUMFILE, ARTISTFILE, TRACKFILE, |
| 403 | TRACKNUM, and YEAR. Default is \'${ARTISTFILE}-${ALBUMFILE}/${TRACKNUM}-${TRACKFILE}\'. |
| 404 | Make sure to use single quotes around this variable. TRACKNUM is automatically |
| 405 | zero-padded, when the number of encoded tracks is higher than 9. When lower, |
| 406 | you can force with |
| 407 | '-p' in the command line. |
| 408 | .TP |
| 409 | .B VAOUTPUTFORMAT |
| 410 | Just like OUTPUTFORMAT but for Various Artists discs. Default is whatever |
| 411 | OUTPUTFORMAT is set to. |
| 412 | .TP |
| 413 | .B MAXPROCS |
| 414 | Defines how many encoders to run at once. This makes for huge speedups |
| 415 | on SMP systems. You should run one encoder per CPU at once for maximum |
| 416 | efficiency, although more doesn't hurt very much. Set it "0" when using |
| 417 | mp3dist to avoid getting encoding processes in the local host. |
| 418 | .TP |
| 419 | .B LOWDISK |
| 420 | If set to y, conserves disk space by encoding tracks immediately after |
| 421 | reading them. This is substantially slower than normal operation but |
| 422 | requires several hundred MB less space to complete the encoding of an |
| 423 | entire CD. Use only if your system is low on space and cannot encode as |
| 424 | quickly as it can read. |
| 425 | .TP |
| 426 | .B BATCHNORM |
| 427 | If set to y, enables batch mode normalization, which preserves relative |
| 428 | volume differences between tracks of an album. Also enables nogap encoding |
| 429 | when using the \'lame\' encoder. |
| 430 | .TP |
| 431 | .B NOGAP |
| 432 | Activate the lame's \-\-nogap option, that allows files found in CDs with no |
| 433 | silence between songs (such as live concerts) to be encoded without noticeable |
| 434 | gaps. WARNING: lame's \-\-nogap disables the Xing mp3 tag. This tag is |
| 435 | required for mp3 players to correctly display track lengths when playing |
| 436 | variable-bit-rate mp3 files. |
| 437 | .TP |
| 438 | .B PLAYLISTFORMAT |
| 439 | Specifies the format for completed playlist filenames. Works like the |
| 440 | OUTPUTFORMAT configuration variable. Default is |
| 441 | \'${ARTISTFILE}_\-_${ALBUMFILE}.m3u\'. |
| 442 | Make sure to use single quotes around this variable. |
| 443 | .TP |
| 444 | .B PLAYLISTDATAPREFIX |
| 445 | Specifies a prefix for filenames within a playlist. Useful for http |
| 446 | playlists, etc. |
| 447 | .TP |
| 448 | .B DOSPLAYLIST |
| 449 | If set, the resulting playlist will have CR-LF line endings, needed by some |
| 450 | hardware-based players. |
| 451 | .TP |
| 452 | .B COMMENT |
| 453 | Specifies a comment to embed in the ID3 or Ogg comment field of each |
| 454 | finished track. Can be up to 28 characters long. Supports the same |
| 455 | syntax as OUTPUTFORMAT. Does not currently support ID3v2. |
| 456 | .TP |
| 457 | .B REMOTEHOSTS |
| 458 | Specifies a comma-delimited list of systems to use for remote encoding using |
| 459 | distmp3. Equivalent to -r. |
| 460 | .TP |
| 461 | .B mungefilename |
| 462 | mungefilename() is an abcde shell function that can be overridden via |
| 463 | abcde.conf. It takes CDDB data as $1 and outputs the resulting filename on |
| 464 | stdout. It defaults to eating control characters, apostrophes and |
| 465 | question marks, translating spaces and forward slashes to underscores, and |
| 466 | translating colons to an underscore and a hyphen. |
| 467 | .br |
| 468 | If you modify this function, it is probably a good idea to keep the forward |
| 469 | slash munging (UNIX cannot store a file with a '/' char in it) as well as |
| 470 | the control character munging (NULs can't be in a filename either, and |
| 471 | newlines and such in filenames are typically not desirable). |
| 472 | .TP |
| 473 | .B mungegenre |
| 474 | mungegenre () is a shell function used to modify the $GENRE variable. As |
| 475 | a default action, it takes $GENRE as $1 and outputs the resulting value |
| 476 | to stdout converting all UPPERCASE characters to lowercase. |
| 477 | .TP |
| 478 | .B pre_read |
| 479 | pre_read () is a shell function which is executed before the CDROM is read |
| 480 | for the first time, during abcde execution. It can be used to close the CDROM |
| 481 | tray, to set its speed (via "setcd" or via "eject", if available) and other |
| 482 | preparation actions. The default function is empty. |
| 483 | .TP |
| 484 | .B post_read |
| 485 | post_read () is a shell function which is executed after the CDROM is read |
| 486 | (and, if applies, before the CDROM is ejected). It can be used to read a TOC |
| 487 | from the CDROM, or to try to read the DATA areas from the CD (if any exist). |
| 488 | The default function is empty. |
| 489 | .TP |
| 490 | .B EJECTCD |
| 491 | If set to "y", abcde will call eject(1) to eject the cdrom from the drive |
| 492 | after all tracks have been read. It has no effect when CDROM is set to a flac |
| 493 | file. |
| 494 | .TP |
| 495 | .B EXTRAVERBOSE |
| 496 | If set to "y", some operations which are usually now shown to the end user |
| 497 | are visible, such as CDDB queries. Useful for initial debug and if your |
| 498 | network/CDDB server is slow. |
| 499 | .SH EXAMPLES |
| 500 | Possible ways one can call abcde |
| 501 | .TP |
| 502 | .B abcde |
| 503 | Will work in most systems |
| 504 | .TP |
| 505 | .B abcde \-d /dev/cdrom2 |
| 506 | If the CDROM you are reding from is not the standard /dev/cdrom (in GNU/Linux systems) |
| 507 | .TP |
| 508 | .B abcde \-o vorbis,flac |
| 509 | Will create both Ogg/Vorbis and Ogg/FLAC files. |
| 510 | .TP |
| 511 | .B abcde \-o vorbis:"-b 192" |
| 512 | Will pass "-b 192" to the Ogg/Vorbis encoder, without having to modify the |
| 513 | config file |
| 514 | .TP |
| 515 | .B abcde \-W 1 |
| 516 | For double+ CD settings: will create the 1st CD starting with the track number |
| 517 | 101, and will add a comment "CD 1" to the tracks, the second starting with 201 |
| 518 | and so on. |
| 519 | .TP |
| 520 | .B abcde \-d singletrack.flac |
| 521 | Will extract the files contained in singletrack using the embeded cuesheet. |
| 522 | .SH BACKEND TOOLS |
| 523 | abcde requires the following backend tools to work: |
| 524 | .TP |
| 525 | .B * |
| 526 | An Ogg/Vorbis, MP3, FLAC, Ogg/Speex, MPP/MP+(Musepack) or M4A encoder (oggenc, vorbize, lame, gogo, bladeenc, l3enc, mp3enc, flac, speexenc, mppenc, faac) |
| 527 | .TP |
| 528 | .B * |
| 529 | An audio CD reading utility (cdparanoia, cdda2wav, dagrab) |
| 530 | .TP |
| 531 | .B * |
| 532 | cd-discid, a CDDB DiscID reading program. |
| 533 | .TP |
| 534 | .B * |
| 535 | An HTTP retrieval program: wget, fetch (FreeBSD) or curl (Mac OS X, among others). Alternatively, musicbrainz-get-tracks (which depends on Python) can be used to retrieve CDDB information about the CD. |
| 536 | .TP |
| 537 | .B * |
| 538 | (for MP3s) id3 or id3v2, id3 v1 and v2 tagging programs. |
| 539 | .TP |
| 540 | .B * |
| 541 | (optional) distmp3, a client/server for distributed mp3 encoding. |
| 542 | .TP |
| 543 | .B * |
| 544 | (optional) normalize-audio, a WAV file volume normalizer. |
| 545 | .TP |
| 546 | .B * |
| 547 | (optional) a replaygain file volume modifier (vorbisgain, metaflac, mp3gain, replaygain), |
| 548 | .TP |
| 549 | .B * |
| 550 | (optional) mkcue, a CD cuesheet extractor. |
| 551 | .SH "SEE ALSO" |
| 552 | .BR cdparanoia (1), |
| 553 | .BR cdda2wav (1), |
| 554 | .BR dagrab (1), |
| 555 | .BR normalize-audio (1), |
| 556 | .BR oggenc (1), |
| 557 | .BR vorbize (1), |
| 558 | .BR flac (1), |
| 559 | .BR toolame (1), |
| 560 | .BR speexenc (1), |
| 561 | .BR mppenc (1), |
| 562 | .BR faac (1), |
| 563 | .BR id3 (1), |
| 564 | .BR id3v2 (1), |
| 565 | .BR wget (1), |
| 566 | .BR fetch (1), |
| 567 | .BR cd-discid (1), |
| 568 | .BR distmp3 (1), |
| 569 | .BR distmp3host (1), |
| 570 | .BR curl (1), |
| 571 | .BR mkcue (1), |
| 572 | .BR vorbisgain (1), |
| 573 | .BR mp3gain (1) |
| 574 | .SH AUTHORS |
| 575 | Robert Woodcock <rcw@debian.org>, |
| 576 | Jesus Climent <jesus.climent@hispalinux.es> and contributions from many others. |