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