1cd-paranoia(1) General Commands Manual cd-paranoia(1)
2
3
4
6 cd-paranoia - 9.8 (Paranoia release III via libcdio) - an audio CD
7 reading utility which includes extra data verification features
8
10 cd-paranoia [options] span [outfile]
11
13 cd-paranoia retrieves audio tracks from CDDA capable CD-ROM drives.
14 The data can be saved to a file or directed to standard output in WAV,
15 AIFF, AIFF-C or raw format. Most ATAPI, SCSI and several proprietary
16 CD-ROM drive makes are supported; cd-paranoia can determine if the tar‐
17 get drive is CDDA capable.
18
19 In addition to simple reading, cd-paranoia adds extra-robust data veri‐
20 fication, synchronization, error handling and scratch reconstruction
21 capability.
22
23 This version uses the libcdio library for interaction with a CD-ROM
24 drive. The jitter and error correction however are the same as used in
25 Xiph's cdparanoia.
26
28 -A --analyze-drive
29 Run and log a complete analysis of drive caching, timing and
30 reading behavior; verifies that cdparanoia is correctly model‐
31 ling a sprcific drive's cache and read behavior. Implies -vQL.
32
33
34 -v --verbose
35 Be absurdly verbose about the autosensing and reading process.
36 Good for setup and debugging.
37
38
39 -q --quiet
40 Do not print any progress or error information during the read‐
41 ing process.
42
43
44 -e --stderr-progress
45 Force output of progress information to stderr (for wrapper
46 scripts).
47
48
49 -V --version
50 Print the program version and quit.
51
52
53 -Q --query
54 Perform CD-ROM drive autosense, query and print the CD-ROM table
55 of contents, then quit.
56
57
58 -h --help
59 Print a brief synopsis of cd-paranoia usage and options.
60
61
62 -l --log-summary file
63 Save result summary to file.
64
65
66 -L --log-debug file
67 Save detailed device autosense and debugging output to a file.
68
69
70 -p --output-raw
71 Output headerless data as raw 16 bit PCM data with interleaved
72 samples in host byte order. To force little or big endian byte
73 order, use -r or -R as described below.
74
75
76 -r --output-raw-little-endian
77 Output headerless data as raw 16 bit PCM data with interleaved
78 samples in LSB first byte order.
79
80
81 -R --output-raw-big-endian
82 Output headerless data as raw 16 bit PCM data with interleaved
83 samples in MSB first byte order.
84
85
86 -w --output-wav
87 Output data in Micro$oft RIFF WAV format (note that WAV data is
88 always LSB first byte order).
89
90
91 -f --output-aiff
92 Output data in Apple AIFF format (note that AIFC data is always
93 in MSB first byte order).
94
95
96 -a --output-aifc
97 Output data in uncompressed Apple AIFF-C format (note that AIFF-
98 C data is always in MSB first byte order).
99
100
101 -B --batch
102
103 Cdda2wav-style batch output flag; cd-paranoia will split the
104 output into multiple files at track boundaries. Output file
105 names are prepended with 'track#.'
106
107
108 -c --force-cdrom-little-endian
109 Some CD-ROM drives misreport their endianness (or do not report
110 it at all); it's possible that cd-paranoia will guess wrong.
111 Use -c to force cd-paranoia to treat the drive as a little
112 endian device.
113
114
115 -C --force-cdrom-big-endian
116 As above but force cd-paranoia to treat the drive as a big
117 endian device.
118
119
120 -n --force-default-sectors n
121 Force the interface backend to do atomic reads of n sectors per
122 read. This number can be misleading; the kernel will often
123 split read requests into multiple atomic reads (the automated
124 Paranoia code is aware of this) or allow reads only wihin a
125 restricted size range. This option should generally not be
126 used.
127
128
129 -d --force-cdrom-device device
130 Force the interface backend to read from device rather than the
131 first readable CD-ROM drive it finds containing a CD-DA disc.
132 This can be used to specify devices of any valid interface type
133 (ATAPI, SCSI or proprietary).
134
135
136 -g --force-generic-device device
137 This option is an alias for -d and is retained for compatibil‐
138 ity.
139
140
141 -S --force-read-speed number
142 Use this option explicitly to set the read rate of the CD drive
143 (where supported). This can reduce underruns on machines with
144 slow disks, or which are low on memory.
145
146
147 -t --toc-offset number
148 Use this option to force the entire disc LBA addressing to shift
149 by the given amount; the value is added to the beginning offsets
150 in the TOC. This can be used to shift track boundaries for the
151 whole disc manually on sector granularity. The next option does
152 something similar...
153
154
155 -T --toc-bias
156 Some drives (usually random Toshibas) report the actual track
157 beginning offset values in the TOC, but then treat the beginning
158 of track 1 index 1 as sector 0 for all read operations. This
159 results in every track seeming to start too late (losing a bit
160 of the beginning and catching a bit of the next track). -T
161 accounts for this behavior. Note that this option will cause
162 cd-paranoia to attempt to read sectors before or past the known
163 user data area of the disc, resulting in read errors at disc
164 edges on most drives and possibly even hard lockups on some
165 buggy hardware.
166
167
168 -O --sample-offset number
169 Some CD-ROM/CD-R drives will add an offset to the position on
170 reading audio data. This is usually around 500-700 audio samples
171 (ca. 1/75 second) on reading. So when cd-paranoia queries a spe‐
172 cific sector, it might not receive exactly that sector, but
173 shifted by some amount.
174
175 Use this option to force the entire disc to shift sample position out‐
176 put by the given amount; This can be used to shift track boundaries for
177 the whole disc manually on sample granularity. Note that if you are
178 ripping something including the ending of the CD (e.g. the entire
179 disk), this option will cause cd-paranoia to attempt to read partial
180 sectors before or past the known user data area, probably causing read
181 errors on most drives and possibly even hard lockups on some buggy
182 hardware.
183
184
185 -E--force-overread
186 Force overreading into the lead-out portion of the disc. This
187 option is only applicable when using the +.B -O +option with a
188 positive sample offset value. Many drives are not capable of
189 reading into this portion of the disc and attempting to do so on
190 those drives will produce read errors and possibly hard lockups.
191
192
193 -Z --disable-paranoia
194 Disable all data verification and correction features. When
195 using -Z, cd-paranoia reads data exactly as would cdda2wav with
196 an overlap setting of zero. This option implies that -Y is
197 active.
198
199
200 -z --never-skip[=max_retries]
201 Do not accept any skips; retry forever if needed. An optional
202 maximum number of retries can be specified; for comparison,
203 default without -z is currently 20.
204
205
206 -Y --disable-extra-paranoia
207 Disables intra-read data verification; only overlap checking at
208 read boundaries is performed. It can wedge if errors occur in
209 the attempted overlap area. Not recommended.
210
211
212 -X --abort-on-skip
213 If the read skips due to imperfect data, a scratch, whatever,
214 abort reading this track. If output is to a file, delete the
215 partially completed file.
216
217
218 -x --test-flags mask
219 Simulate CD-reading errors. This is used in regression testing,
220 but other uses might be to see how well a CD-ROM performs under
221 (simulated) CD degradation. mask specifies the artificial kinds
222 of errors to introduced; "or"-ing values from the selection
223 below will simulate the kind of specified failure.
224
225 0x10 - Simulate under-run reading
226
227
228
229
230 OUTPUT SMILIES
231
232 :-) Normal operation, low/no jitter
233
234 :-| Normal operation, considerable jitter
235
236 :-/ Read drift
237
238 :-P Unreported loss of streaming in atomic read operation
239
240 8-| Finding read problems at same point during reread; hard to cor‐
241 rect
242
243 :-0 SCSI/ATAPI transport error
244
245 :-( Scratch detected
246
247 ;-( Gave up trying to perform a correction
248
249 8-X Aborted read due to known, uncorrectable error
250
251 :^D Finished extracting
252
253
255 <space>
256 No corrections needed
257
258 - Jitter correction required
259
260 + Unreported loss of streaming/other error in read
261
262 ! Errors found after stage 1 correction; the drive is making the
263 same error through multiple re-reads, and cd-paranoia is having
264 trouble detecting them.
265
266 e SCSI/ATAPI transport error (corrected)
267
268 V Uncorrected error/skip
269
270
272 The span argument specifies which track, tracks or subsections of
273 tracks to read. This argument is required. NOTE: Unless the span is a
274 simple number, it's generally a good idea to quote the span argument to
275 protect it from the shell.
276
277 The span argument may be a simple track number or an offset/span speci‐
278 fication. The syntax of an offset/span takes the rough form:
279
280 1[ww:xx:yy.zz]-2[aa:bb:cc.dd]
281
282 Here, 1 and 2 are track numbers; the numbers in brackets provide a
283 finer grained offset within a particular track. [aa:bb:cc.dd] is in
284 hours/minutes/seconds/sectors format. Zero fields need not be speci‐
285 fied: [::20], [:20], [20], [20.], etc, would be interpreted as twenty
286 seconds, [10:] would be ten minutes, [.30] would be thirty sectors (75
287 sectors per second).
288
289 When only a single offset is supplied, it is interpreted as a starting
290 offset and ripping will continue to the end of the track. If a single
291 offset is preceeded or followed by a hyphen, the implicit missing off‐
292 set is taken to be the start or end of the disc, respectively. Thus:
293
294
295 1:[20.35]
296 Specifies ripping from track 1, second 20, sector 35 to the end
297 of track 1.
298
299 1:[20.35]-
300 Specifies ripping from 1[20.35] to the end of the disc
301
302 -2 Specifies ripping from the beginning of the disc up to (and
303 including) track 2
304
305 -2:[30.35]
306 Specifies ripping from the beginning of the disc up to 2:[30.35]
307
308 2-4 Specifies ripping from the beginning of track 2 to the end of
309 track 4.
310
311 Again, don't forget to protect square brackets and preceeding hyphens
312 from the shell.
313
314
316 A few examples, protected from the shell:
317
318 Query only with exhaustive search for a drive and full reporting of
319 autosense:
320
321 cd-paranoia -vsQ
322
323 Extract an entire disc, putting each track in a seperate file:
324
325 cd-paranoia -B
326
327 Extract from track 1, time 0:30.12 to 1:10.00:
328
329 cd-paranoia "1[:30.12]-1[1:10]"
330
331 Extract from the beginning of the disc up to track 3:
332
333 cd-paranoia -- "-3"
334
335 The "--" above is to distinguish "-3" from an option flag.
336
338 The output file argument is optional; if it is not specified, cd-para‐
339 noia will output samples to one of cdda.wav, cdda.aifc, or cdda.raw
340 depending on whether -w, -a, -r or -R is used (-w is the implicit
341 default). The output file argument of - specifies standard output; all
342 data formats may be piped.
343
344
346 cd-paranoia sprang from and once drew heavily from the interface of
347 Heiko Eissfeldt's (heiko@colossus.escape.de) 'cdda2wav' package. cd-
348 paranoia would not have happened without it.
349
350 Joerg Schilling has also contributed SCSI expertise through his generic
351 SCSI transport library.
352
354 Monty <monty@xiph.org>
355
356 Cdparanoia's homepage may be found at: http://www.xiph.org/paranoia/
357
358 Revised for use with libcdio by Rocky <rocky@gnu.org>
359
360 The libcdio homepage may be found at: http://www.gnu.org/software/libc‐
361 dio
362
363
364
365 version III release alpha 9.8 libcdio cd-paranoia(1)