Imported Upstream version 1.1.11
[platform/upstream/cdrkit.git] / wodim / wodim.1
1 .\" @(#)wodim.1  06/12/18 Copyright 2006 Cdrkit maintainers
2 .\" derived from:
3 .\" @(#)cdrecord.1      1.106 06/02/09 Copyright 1996 J. Schilling
4 .\" 
5 .\" This program is free software; you can redistribute it and/or modify
6 .\" it under the terms of the GNU General Public License version 2
7 .\" as published by the Free Software Foundation.
8 .\"
9 .\" The GNU General Public License's references to "object code"
10 .\" and "executables" are to be interpreted as the output of any
11 .\" document formatting or typesetting system, including
12 .\" intermediate and printed output.
13 .\"
14 .\" This manual is distributed in the hope that it will be useful,
15 .\" but WITHOUT ANY WARRANTY; without even the implied warranty of
16 .\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17 .\" GNU General Public License for more details.
18 .\"
19 .\" You should have received a copy of the GNU General Public License along with
20 .\" this program; see the file COPYING.  If not, write to the Free Software
21 .\" Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
22 .\"
23 .if t .ds a \v'-0.55m'\h'0.00n'\z.\h'0.40n'\z.\v'0.55m'\h'-0.40n'a
24 .if t .ds o \v'-0.55m'\h'0.00n'\z.\h'0.45n'\z.\v'0.55m'\h'-0.45n'o
25 .if t .ds u \v'-0.55m'\h'0.00n'\z.\h'0.40n'\z.\v'0.55m'\h'-0.40n'u
26 .if t .ds A \v'-0.77m'\h'0.25n'\z.\h'0.45n'\z.\v'0.77m'\h'-0.70n'A
27 .if t .ds O \v'-0.77m'\h'0.25n'\z.\h'0.45n'\z.\v'0.77m'\h'-0.70n'O
28 .if t .ds U \v'-0.77m'\h'0.30n'\z.\h'0.45n'\z.\v'0.77m'\h'-0.75n'U
29 .if t .ds s \\(*b
30 .if t .ds S SS
31 .if n .ds a ae
32 .if n .ds o oe
33 .if n .ds u ue
34 .if n .ds s sz
35 .if t .ds m \\(*m
36 .if n .ds m micro
37 .TH wodim 1 "Version 2.0" "" ""
38 .SH NAME
39 wodim \- write data to optical disk media
40 .SH SYNOPSIS
41 .B wodim
42 .RI [ options "] " track1 .\|.\|. trackn
43 .SH NOTE
44 There may be similarities and differences between this program and other disk recording application(s). See the
45 .B CREDITS
46 and
47 .B AUTHORS
48 sections below to learn about the origin of
49 .B wodim.
50
51 .SH DESCRIPTION
52 .B wodim
53 is used to record data or audio Compact Discs on an Orange Book
54 CD-Recorder or to write DVD media on a DVD-Recorder.
55 .PP
56 The
57 .I device
58 is the device file or label offered by the operating system to access the
59 recorder with SCSI GENERIC (sg) interface. Note that some operating systems may
60 provide separate device nodes for block\-oriented and sg access. For example, on
61 older
62 .I Linux
63 systems, the sg access was available through
64 .IR /dev/sg...
65 files while the block oriented access was done through associated (but not identical)
66 .IR /dev/hd...
67 and 
68 .IR /dev/sr...
69 (or 
70 .IR /dev/scd...
71 ) files.
72 .PP
73 In any case, the user running 
74 .B wodim
75 needs read and write access to the particular device file on a Linux system. It
76 is recommended to be root or install the application as suid-root, because
77 certain versions of Linux (kernel) limit the set of SCSI commands allowed for
78 non-root users. Even if usage without root identity is possible in many cases,
79 some device drivers still may fail, show unexplainable problems and generally
80 the problems become harder to debug. The risk for buffer-underruns is also
81 increased. See the
82 .IR "PROCESS SCHEDULING PRIORITY"
83 section below for more details.
84 .PP
85 There is an alternative way of specifying the device, using the traditional SCSI descriptions in form of
86 .IR devicetype:bus/target/lun
87 specification. However, the success of this method is not guaranteed since it
88 requires an adaptation scheme for your architecture, and the numbers may vary
89 depending on the hardware-internal numbering or on the order of hot-plug device
90 detection. If your operating system does not provide a sufficient framework for
91 keeping this numbers persistent, don't rely on them. See 
92 .B \-scanbus
93 and
94 .B \-\-devices
95 options below for details.
96 .PP
97 There are emulated SCSI compatible device systems, using the SCSI protocols
98 transported over various hardware/media types. The most known examples is ATAPI
99 ("IDE burners") or USB storage ("external USB case"). If the pseudo-SCSI b/t/l
100 device address specification is used instead of the native one, you need to
101 prepend the "devicetype:" description to the emulated "bus/target/lun" device
102 address.
103 .PP
104 If a file /etc/wodim.conf exists, the parameter to the
105 .B dev=
106 option may also be a drive name label in that file (see FILES section).
107 .PP
108 As a special exception, the device specification can be
109 .IR -1
110 or just omitted, which invokes automatic guessing of an appropriate device for
111 the selected operation. However, this guessing is not available everywhere and
112 is not reliable; it is only available for the user's convenience in simple
113 environments.
114 .PP
115 In 
116 .I Track At Once 
117 mode, each
118 .I track
119 corresponds to a single file that contains the prepared data for that track.
120 If the argument is 
121 .RB ` \- ',
122 standard input is used for that track. 
123 Only one track may be taken from 
124 .IR stdin .
125 In the other write modes, the direct file to track relation may not be implemented.
126 In 
127 .B \-clone
128 mode, a single file contains all data for the whole disk.
129 To allow DVD writing on platforms that do not implement large file support,
130 .B wodim
131 concatenates all file arguments to a single track when writing to DVD media.
132
133 .SH "PROCESS SCHEDULING PRIORITY"
134 .PP
135 Wodim tries to get higher process priority using different methods. This is
136 important because the burn process is usually a realtime task, no long delays
137 should occur while transmitting fresh data to the recorder. This is especially
138 important on systems with insufficient RAM where swapping can create delays of
139 many seconds.
140 .PP
141 A possible workaround on underpowered systems is the use of the burnfree or
142 similar feature, allowing the recorder to resume.
143 .PP
144 Root permissions are usually required to get higher process scheduling priority.
145 .PP
146 On 
147 .B SVr4 
148 compliant systems, 
149 .B wodim 
150 uses the real time class to get the highest scheduling priority that is
151 possible (higher than all kernel processes).
152 On systems with 
153 .B POSIX real time scheduling
154 wodim uses real time scheduling too, 
155 but may not be able to gain a priority that is higher than all kernel processes.
156 .PP
157 In order to be able to use the SCSI transport subsystem of the OS, run at highest
158 priority and lock itself into core
159 .B
160 wodim
161 either needs to be run as root, needs to be installed suid root or
162 must be called via
163 .B RBACs
164 pfexec mechanism.
165
166 .SH "GENERAL OPTIONS
167 .PP
168 General options must be before any track file name or track option.
169 .TP
170 .B \-version
171 Print version information and exit.
172 .TP
173 .B \-v
174 Increment the level of general verbosity by one.
175 This is used e.g. to display the progress of the writing process.
176 .TP
177 .B \-V
178 Increment the verbose level in respect of SCSI command transport by one.
179 This helps to debug problems
180 during the writing process, that occur in the CD/DVD-Recorder. 
181 If you get incomprehensible error messages you should use this flag
182 to get more detailed output.
183 .B \-VV
184 will show data buffer content in addition.
185 Using
186 .B \-V
187 or
188 .B \-VV
189 slows down the process and may be the reason for a buffer underrun.
190 .TP
191 .BI debug= "#, " -d
192 Set the misc debug value to # (with debug=#) or increment
193 the misc debug level by one (with -d). If you specify
194 .I -dd,
195 this equals to 
196 .BI debug= 2.
197 This may help to find problems while opening a driver for libusal
198 as well as with sector sizes and sector types.
199 Using
200 .B \-debug
201 slows down the process and may be the reason for a buffer underrun.
202 .TP
203 .BR kdebug= "#, " kd= #
204 Tell the 
205 .BR usal -driver
206 to modify the kernel debug value while SCSI commands are running.
207 .TP
208 .BR \-silent ", " \-s
209 Do not print out a status report for failed SCSI commands.
210 .TP
211 .B \-force
212 Force to continue on some errors. Be careful when using this option.
213 .B wodim
214 implements several checks that prevent you from doing unwanted things
215 like damaging CD-RW media by improper drives. Many of the sanity checks are 
216 disabled when the 
217 .B \-force
218 option is used.
219 .sp
220 This option also implements some tricks that will allow 
221 you to blank bad CD-RW disks.
222 .TP
223 .B \-immed
224 Tell wodim to set the
225 .B "SCSI IMMED"
226 flag in certain commands
227 (load/eject/blank/close_track/close_session).
228 This can be useful
229 on broken systems with ATAPI harddisk and CD/DVD writer on the same bus or
230 with SCSI systems that don't use disconnect/reconnect.
231 These systems will freeze while blanking or fixating a CD/DVD or while a DVD
232 writer is filling up a session to the minimum amount (approx. 800 MB).
233 Setting the
234 .B \-immed
235 flag will request the command to return immediately
236 while the operation proceeds in background, making
237 the bus usable for the other devices and avoiding the system freeze.
238 This is an experimental feature which may work or not, depending on the model
239 of the CD/DVD writer.
240 A correct solution would be to set up a correct cabling but there seem to be 
241 notebooks around that have been set up the wrong way by the manufacturer.
242 As it is impossible to fix this problem in notebooks, the
243 .B \-immed
244 option has been added.
245 .sp
246 A second experimental feature of the
247 .B \-immed
248 flag is to tell wodim to try to wait short times while writing to the
249 media. This is expected to free the IDE bus if the CD/DVD writer and the
250 data source are connected to the same IDE cable. In this case, the CD/DVD
251 writer would otherwise usually block the IDE bus for nearly all the time
252 making it impossible to fetch data from the source drive. See also
253 .B minbuf=
254 and
255 .B \-v
256 option.
257 .sp
258 Use both features at your own risk.
259 If it turns out that it would make sense to have a separate option
260 for the wait feature, write to the author and convince him.
261 .TP
262 .BI minbuf= value
263 The #
264 .B minbuf=
265 option allows to define the minimum drive buffer fill ratio for the
266 experimental ATAPI wait mode that is intended to free the IDE bus
267 to allow hard disk and CD/DVD writer to be on the same IDE cable.
268 As the wait mode currently only works when the verbose option
269 .B \-v
270 has been specified, 
271 .B wodim
272 implies the verbose option in case the 
273 .B \-immed
274 or
275 .B minbuf=
276 option have been specified.
277 Valid values for 
278 .B minbuf= 
279 are between 25 and 95 for 25%.\|.\|.95% minimum drive buffer fill ratio.
280 .TP
281 .B \-dummy
282 The CD/DVD-Recorder will go through all steps of the recording process,
283 but the laser is turned off during this procedure.
284 It is recommended to run several tests before actually writing to a 
285 Compact Disk or Digital Versatile Disk,
286 if the timing and load response of the system is not known.
287 .TP
288 .B \-clone
289 Tells 
290 .B wodim
291 to handle images created by
292 .IR "readom \-clone" .
293 The
294 .B \-clone
295 may only be used in conjunction with with the
296 .B \-raw96r
297 or with the
298 .B \-raw16
299 option.
300 Using
301 .B \-clone
302 together with
303 .B \-raw96r
304 is preferred as it allows to write all subchannel data.
305 The option
306 .B \-raw16
307 should only be used with drives that do not support to write in
308 .B \-raw96r
309 mode.
310 .TP
311 .B \-dao
312 .TP
313 .B \-sao
314 Set 
315 .B "SAO (Session At Once)
316 mode which is usually called
317 .BR "Disk At Once " mode.
318 This currently only works with MMC drives that support
319 .B "Session At Once
320 mode.
321 Note that wodim needs to know the size of each track in advance for this mode
322 (see the
323 .B "genisoimage \-print-size"
324 option and the 
325 .I EXAMPLES
326 section for more information).
327 .TP
328 .B \-tao
329 Set
330 .B "TAO (Track At Once) writing mode.
331 This is the default write mode in previous
332 .B wodim
333 versions.
334 With most drives, this write mode is required for multi session recording.
335 .TP
336 .B \-raw
337 Set
338 .B "RAW writing mode.
339 Using this option defaults to 
340 .BR \-raw96r .
341 Note that wodim needs to know the size of each track in advance for this mode
342 (see the
343 .B "genisoimage \-print-size"
344 option and the 
345 .I EXAMPLES
346 section for more information).
347 .TP
348 .B \-raw96r
349 Select
350 Set
351 .B "RAW writing mode
352 with 2352 byte sectors plus 96 bytes of raw P-W subchannel data resulting
353 in a sector size of 2448 bytes.
354 This is the preferred raw writing mode as it gives best control over the
355 CD writing process.
356 If you find any problems with the layout of a disk or with sub channel 
357 content (e.g. wrong times on the display when playing the CD) and your drive
358 supports to write in 
359 .B \-raw96r
360 or
361 .B \-raw16
362 mode, you should give it a try. There are several CD writers with bad firmware
363 that result in broken disks when writing in TAO or SAO mode.
364 Writing data disks in raw mode needs significantly more CPU time than other
365 write modes. If your CPU is too slow, this may result in buffer underruns.
366 Note that wodim needs to know the size of each track in advance for this mode
367 (see the
368 .B "genisoimage \-print-size"
369 option and the 
370 .I EXAMPLES
371 section for more information).
372 .TP
373 .B \-raw96p
374 Select
375 Set
376 .B "RAW writing mode
377 with 2352 byte sectors plus 96 bytes of packed P-W subchannel data resulting
378 in a sector size of 2448 bytes.
379 This is the less preferred raw writing mode as only a few recorders support
380 it and some of these recorders have bugs in the firmware implementation.
381 Don't use this mode if your recorder supports
382 .B \-raw96r
383 or
384 .BR \-raw16 .
385 Writing data disks in raw mode needs significantly more CPU time than other
386 write modes. If your CPU is too slow, this may result in buffer underruns.
387 Note that wodim needs to know the size of each track in advance for this mode
388 (see the
389 .B "genisoimage \-print-size"
390 option and the 
391 .I EXAMPLES
392 section for more information).
393 .TP
394 .B \-raw16
395 Select
396 Set
397 .B "RAW writing mode
398 with 2352 byte sectors plus 16 bytes of P-Q subchannel data resulting
399 in a sector size of 2368 bytes.
400 If a recorder does not support 
401 .BR \-raw96r ,
402 this is the preferred raw writing mode.
403 It does not allow to write
404 .I CD-Text
405 or
406 .I CD+Graphics
407 but it is the only raw writing mode in cheap CD writers.
408 As these cheap writers in most cases do not support
409 .B \-dao
410 mode.
411 Don't use this mode if your recorder supports
412 .BR \-raw96r .
413 Writing data disks in raw mode needs significantly more CPU time than other
414 write modes. If your CPU is too slow, this may result in buffer underruns.
415 Note that wodim needs to know the size of each track in advance for this mode
416 (see the
417 .B "genisoimage \-print-size"
418 option and the 
419 .I EXAMPLES
420 section for more information).
421 .TP
422 .B \-multi
423 Allow multi session CDs to be made. This flag needs to be present
424 on all sessions of a multi session disk,
425 except you want to create a session that will be 
426 the last session on the media.
427 The fixation will be done in a way that allows the CD/DVD-Recorder to
428 append additional sessions later. This is done by generation a TOC
429 with a link to the next program area. The so generated media is not
430 100% compatible to manufactured CDs (except for CDplus). 
431 Use only for recording of multi session CDs.
432 If this option is present, the default track type is
433 .BR "CD-ROM XA mode 2 form 1"
434 and the sector size is 2048 bytes. 
435 The XA sector subheaders will be created by the drive. 
436 The 
437 .I Sony 
438 drives have no hardware support for 
439 .BR "CD-ROM XA mode 2 form 1" .
440 You have to specify the 
441 .B \-data 
442 option in order to create multi session disks on these drives.
443 As long as wodim does not have a coder for converting data sectors
444 to audio sectors, you need to force 
445 .B CD-ROM
446 sectors by including the
447 .B \-data
448 option if you like to record a multisession disk in SAO mode.
449 Not all drives allow multisession CDs in SAO mode.
450 .TP
451 .B \-msinfo
452 Retrieve multi session info in a form suitable for 
453 .B genisoimage
454 and print it to standard output. See
455 .B msifile=
456 option for another version.
457 .sp
458 This option makes only sense with a CD that contains at least
459 one closed session and is appendable (not finally closed yet). 
460 Some drives create error messages if you try to get the multi 
461 session info for a disk that is not suitable for this operation.
462 .TP
463 .BR msifile= filename
464 Like 
465 .B \-msinfo
466 option but also stores the multi session info in a file.
467 .TP
468 .B \-toc
469 Retrieve and print out the table of content or PMA of a CD.
470 With this option, 
471 .B wodim
472 will work with CD-R drives and with CD-ROM drives.
473 .TP
474 .B \-atip
475 Retrieve and print out the ATIP (absolute Time in Pre-groove) info of a CD/DVD
476 recordable or CD/DVD re-writable media.
477 With this option, 
478 .B wodim
479 will try to retrieve the ATIP info. If the actual drive does not support
480 to read the ATIP info, it may be that only a reduced set of information
481 records or even nothing is displayed. Only a limited number of MMC compliant
482 drives support to read the ATIP info.
483 .sp
484 If 
485 .B wodim
486 is able to retrieve the lead-in start time for the first session, it will try to
487 decode and print the manufacturer info from the media.
488 DVD media does not have ATIP information but there is equivalent prerecorded
489 information that is read out and printed.
490 .TP
491 .B \-fix
492 The disk will only be fixated (i.e. a TOC for a CD-Reader will be written). 
493 This may be used, if for some reason the disk has been written but not
494 fixated. This option currently does not work with old TEAC drives (CD-R50S and
495 CD-R55S).
496 .TP
497 .B \-nofix
498 Do not fixate the disk after writing the tracks. This may be used
499 to create an audio disk in steps. An un-fixated disk can usually not be used
500 on a non CD-writer type drive but there are audio CD players that will
501 be able to play such a disk.
502 .TP
503 .B \-waiti
504 Wait for input to become available on standard input before trying to open
505 the SCSI driver. This allows 
506 .B wodim
507 to read its input from a pipe even
508 when writing additional sessions to a multi session disk.
509 When writing another session to a multi session disk,
510 .B genisoimage 
511 needs to read the old session from the device before writing output.
512 This cannot be done if
513 .B wodim 
514 opens the SCSI driver at the same time.
515 .TP
516 .B \-load
517 Load the media and exit. This only works with a tray loading mechanism
518 but seems to be useful when using the Kodak disk transporter.
519 .TP
520 .B \-lock
521 Load the media, lock the door and exit. This only works with a tray loading mechanism
522 but seems to be useful when using the Kodak disk transporter.
523 .TP
524 .B \-eject
525 Eject disk after doing the work.
526 Some devices (e.g. Philips) need to eject the medium before creating a new
527 disk. Doing a \-dummy test and immediately creating a real disk would not
528 work on these devices.
529 .TP
530 .BR speed= #
531 Set the speed factor of the writing process to #.
532 # is an integer, representing a multiple of the audio speed.
533 This is about 150\ KB/s for CD-ROM, about 172\ KB/s for CD-Audio and about 1385\ kB/s
534 for DVD media.
535 If no 
536 .I speed
537 option is present,
538 .B wodim
539 will try to get a drive specific speed value from the file
540 .B /etc/wodim.conf
541 and if it cannot find one, it will try to get the speed value from the
542 .B CDR_SPEED
543 environment and later from the 
544 .B CDR_SPEED=
545 entry in
546 .BR /etc/wodim.conf .
547 If no speed value could be found, wodim uses a drive specific default speed.
548 The default for all new (MMC compliant) drives is to use the maximum supported by the drive.
549 If you use 
550 .I "speed=0"
551 with a MMC compliant drive,
552 .B wodim
553 will switch to the lowest possible speed for drive and medium.
554 If you are using an old (non MMC) drive that has problems with
555 .I "speed=2 
556 or 
557 .IR "speed=4" , 
558 you should try 
559 .IR "speed=0" .
560 .TP
561 .BI blank= type
562 Blank a CD-RW and exit or blank a CD-RW before writing. The blanking type may be one of:
563 .RS
564 .TP 12
565 help
566 Display a list of possible blanking types.
567 .TP
568 all
569 Blank the entire disk. This may take a long time.
570 .TP
571 fast
572 Minimally blank the disk. This results in erasing the PMA, the TOC and the pregap.
573 .TP
574 track
575 Blank a track.
576 .TP
577 unreserve
578 Unreserve a reserved track.
579 .TP
580 trtail
581 Blank the tail of a track.
582 .TP
583 unclose
584 Unclose last session.
585 .TP
586 session
587 Blank the last session.
588 .RE
589 Not all drives support all blanking types. It may be necessary to use
590 .B "blank=all
591 if a drive reports a specified command as being invalid.
592 If used together with the 
593 .B \-force
594 flag, this option may be used to blank CD-RW disks that otherwise cannot be
595 blanked. Note that you may need to specify
596 .BI blank= all
597 because some drives will not continue with certain types of bad CD-RW
598 disks. Note also that
599 .B wodim
600 does its best if the 
601 .B \-force 
602 flag is used but it finally depends on the drive's firmware 
603 whether the blanking operation will succeed or not.
604 .TP
605 .B \-format
606 Format a CD-RW/DVD-RW/DVD+RW disc.
607 Formatting is currently only implemented for DVD+RW media.
608 A 'maiden' DVD+RW media needs to
609 be formatted before you may write to it.
610 However, as
611 .B wodim
612 autodetects the need for formatting in this case and auto formats the medium
613 before it starts writing, the
614 .B \-format
615 option is only needed if you like to forcibly reformat a DVD+RW medium.
616 .TP
617 .BR fs= #
618 Set the FIFO (ring buffer) size to #.
619 You may use the same syntax as in 
620 .BR dd (1),
621 .BR sdd (1)
622 or
623 .BR star (1).
624 The number representing the size is taken in bytes unless otherwise specified.
625 If a number is followed directly by the letter `b', `k', `m', `s' or `f',
626 the size is multiplied by 512, 1024, 1024*1024, 2048 or 2352.
627 If the size consists of numbers separated by `x' or `*', multiplication of the 
628 two numbers is performed.
629 Thus 
630 .I "fs=10x63k
631 will specify a FIFO size of 630\ kBytes.
632 .sp
633 The size specified by the 
634 .I fs=
635 argument includes the shared memory that is needed for administration. This
636 is at least one page of memory.
637 If no
638 .IR fs =
639 option is present, 
640 .B wodim
641 will try to get the FIFO size value from the 
642 .B CDR_FIFOSIZE
643 environment.
644 The default FIFO size is currently 4 MB.
645 .sp
646 The FIFO is used to increase buffering for the real time writing process.
647 It allows to run a pipe from 
648 .B genisoimage
649 directly into 
650 .BR wodim .
651 If the FIFO is active and a pipe from 
652 .B genisoimage
653 into 
654 .B wodim
655 is used to create a CD, 
656 .B wodim
657 will abort prior to do any modifications on the disk if 
658 .B genisoimage 
659 dies before it starts writing.
660 The recommended FIFO size is between 4 and 128\ MBytes.
661 As a rule of thumb, the FIFO size should be at least equal to the size
662 of the internal buffer of the CD/DVD-Recorder and no more than half of
663 the physical amount of RAM available in the machine.
664 If the FIFO size is big enough, the FIFO statistics will print a FIFO
665 empty count of zero and the FIFO min fill is not below 20%.
666 It is not wise to use too much space for the FIFO. If you need more
667 than 8 MB to write a CD at a speed less than 20x from an image on a
668 local file system on an idle machine, your machine is either underpowered,
669 has hardware problems or is mis-configured.
670 If you like to write DVDs or CDs at higher speed, it makes sense
671 to use at least 16\ MB for the FIFO.
672 .sp
673 On old and small machines, you need to be more careful with the FIFO size.
674 If your machine has less than 256\ MB of physical RAM, you should not
675 set up a FIFO size that is more than 32\ MB.
676 The sun4c architecture (e.g. a Sparcstation-2) has only MMU page table entries
677 for 16\ MBytes per process. Using more than 14\ MBytes for the FIFO
678 may cause the operating system in this case to spend much time to constantly
679 reload the MMU tables. Newer machines from Sun do not have this MMU
680 hardware problem. I have no information on PC-hardware reflecting
681 this problem.
682 .sp
683 Old Linux systems for non x86 platforms have broken definitions for
684 the shared memory size. You need to fix them and rebuild the kernel
685 or manually tell
686 .B wodim
687 to use a smaller FIFO.
688 .sp
689 If you have buffer underruns or similar problems (like a constantly empty
690 drive buffer) and observe a zero
691 .IR "fifo empty count" ,
692 you have hardware problems that prevents the data from flowing fast enough
693 from the kernel memory to the drive. The FIFO size in this case is sufficient,
694 but you should check for a working DMA setup.
695 .TP
696 .BR ts= #
697 Set the maximum transfer size for a single SCSI command to #.
698 The syntax for the 
699 .B ts=
700 option is the same as for wodim fs=# or sdd bs=#.
701 .sp
702 If no 
703 .B ts=
704 option has been specified,
705 .B wodim
706 defaults to a transfer size of 63\ kB. If libusal gets lower values from the
707 operating system, the value is reduced to the maximum value that is possible
708 with the current operating system.
709 Sometimes, it may help to further reduce the transfer size or to enhance it,
710 but note that it may take a long time to find a better value by experimenting
711 with the
712 .B ts=
713 option.
714 .TP
715 .BI dev= target
716 Sets the SCSI target for the CD/DVD-Recorder, see notes above.
717 A typical device specification is
718 .BI dev= 6,0
719 \&.
720 A filename or virtual device name can be passed instead of the symbolic SCSI
721 numbers.  The correct device/filename in this case can be found in the system
722 specific manuals of the target operating system.
723 On a 
724 .I FreeBSD
725 system without 
726 .I CAM
727 support, you need to use the control device (e.g.
728 .IR /dev/rcd0.ctl ).
729 A correct device specification in this case may be
730 .BI dev= /dev/rcd0.ctl:@
731 \&.
732 .sp
733 On Linux and Windows 2000/XP, drives are accessible with their device (or
734 drive) names or with the symbolic SCSI numbers (not recommended, mapping is not
735 stable and could be completely removed in the future).
736 .sp
737 If no 
738 .I dev
739 option is present, 
740 .B wodim
741 will try to get the device from the 
742 .B CDR_DEVICE
743 environment.
744 .sp
745 If the argument to the
746 .B dev=
747 option does not contain the characters ',', '/', '@' or ':',
748 it is interpreted as an label name that may be found in the file
749 /etc/wodim.conf (see FILES section).
750 .TP
751 .BI gracetime= #
752 Set the grace time before starting to write to
753 .IR # " seconds.
754 Values below 2 seconds are not recommended to give the kernel or volume
755 management a chance to learn the new state.
756 .TP
757 .BI timeout= #
758 Set the default SCSI command timeout value to 
759 .IR # " seconds.
760 The default SCSI command timeout is the minimum timeout used for sending
761 SCSI commands.
762 If a SCSI command fails due to a timeout, you may try to raise the
763 default SCSI command timeout above the timeout value of the failed command.
764 If the command runs correctly with a raised command timeout,
765 please report the better timeout value and the corresponding command to 
766 the author of the program.
767 If no 
768 .I timeout 
769 option is present, a default timeout of 40 seconds is used.
770 .TP
771 .BI driver= name
772 Allows the user to manually select a driver for the device.
773 The reason for the existence of the
774 .BI driver= name
775 option is to allow users to use
776 .B wodim
777 with drives that are similar to supported drives but not known
778 directly by
779 .BR wodim .
780 All drives made after 1997 should be MMC standard compliant and
781 thus supported by one of the MMC drivers.
782 It is most unlikely that
783 .B wodim
784 is unable to find the right driver automatically.
785 Use this option with extreme care. If a wrong driver is used for a
786 device, the possibility of creating corrupted disks is high.
787 The minimum problem related to a wrong driver is that the 
788 .B speed=
789 or 
790 .B \-dummy
791 will not work.
792 .br
793 .RS
794 .ne 8
795 .PP
796 The following driver names are supported:
797 .TP
798 .B help
799 To get a list of possible drivers together with a short description.
800 .TP
801 .B mmc_cd
802 The generic SCSI-3/mmc CD-ROM driver is auto-selected whenever
803 .B wodim
804 finds a MMC compliant drive that does not identify itself to support writing at
805 all, or that only identifies to support media or write modes not implemented in
806 .BR wodim .
807 .TP
808 .B mmc_cd_dvd
809 The generic SCSI-3/mmc CD/DVD driver is auto-selected whenever
810 .B wodim
811 finds a MMC-2 or MMC-3 compliant drive that seems to support more than 
812 one medium type and the tray is open or no medium could be found to select the
813 right driver.
814 This driver tries to close the tray, checks the medium found in the tray and then
815 branches to the driver that matches the current medium.
816 .TP
817 .B mmc_cdr
818 The generic SCSI-3/mmc CD-R/CD-RW driver is auto-selected whenever
819 .B wodim
820 find a MMC compliant drive that only supports to write CDs or a multi system
821 drive that contains a CD as the current medium.
822 .TP
823 .B mmc_cdr_sony
824 The generic SCSI-3/mmc CD-R/CD-RW driver is auto-selected whenever
825 .B wodim
826 would otherwise select the
827 .B mmc_cdr
828 driver but the device seems to be made by Sony.
829 The
830 .B mmc_cdr_sony
831 is definitely needed for the Sony CDU 928 as this drive does not completely
832 implement the MMC standard and some of the MMC SCSI commands have to be
833 replaced by Sony proprietary commands. It seems that all Sony drives (even
834 newer ones) still implement the Sony proprietary SCSI commands so it has
835 not yet become a problem to use this driver for all Sony drives. If you find
836 a newer Sony drive that does not work with this driver, please report.
837 .TP
838 .B mmc_dvd
839 The generic SCSI-3/mmc-2 DVD-R/DVD-RW driver is auto-selected whenever
840 .B wodim
841 finds a MMC-2 or MMC-3 compliant drive that supports to write DVDs and
842 an appropriate medium is loaded.
843 There is no Track At Once mode for DVD writers.
844 .TP
845 .B mmc_dvdplus
846 The generic SCSI-3/mmc-3 DVD+R/DVD+RW driver is auto-selected whenever
847 one of the DVD+ media types that are incompatible to each other is found.
848 It checks media and then 
849 branches to the driver that matches the current medium.
850 .TP
851 .B mmc_dvdplusr
852 The generic SCSI-3/mmc-3 DVD+R driver is auto-selected whenever
853 a DVD+R medium is found in an appropriate writer.
854 Note that for unknown reason, the DVD-Plus alliance does not
855 like that there is a simulation mode for DVD+R media.
856 The author of
857 .B wodim
858 tries to convince manufacturers to implement a simulation mode for DVD+R
859 and implement support.
860 DVD+R only supports one write mode that is somewhere between Track At Once
861 and Packet writing; this mode is selected in 
862 .B wodim
863 via a the 
864 .BR \-dao / \-sao
865 option.
866 .TP
867 .B mmc_dvdplusrw
868 The generic SCSI-3/mmc-3 DVD+RW driver is auto-selected whenever
869 a DVD+RW medium is found in an appropriate writer.
870 As DVD+RW media needs to be formatted before its first use, wodim
871 auto-detects this media state and performs a format before it starts
872 to write.
873 Note that for unknown reason, the DVD-Plus alliance does not
874 like that there is a simulation mode nor a way to erase DVD+RW media.
875 DVD+RW only supports one write mode that is close to
876 Packet writing; this mode is selected in 
877 .B wodim
878 via a the 
879 .BR \-dao / \-sao
880 option.
881 .TP
882 .B cw_7501
883 The driver for Matsushita/Panasonic CW-7501 is auto-selected when
884 .B wodim
885 finds this old pre MMC drive.
886 .B wodim
887 supports all write modes for this drive type.
888 .TP
889 .B kodak_pcd_600
890 The driver for Kodak PCD-600 is auto-selected when
891 .B wodim
892 finds this old pre MMC drive which has been the first high speed (6x)
893 CD writer for a long time. This drive behaves similar to the
894 Philips CDD-521 drive.
895 .TP
896 .B philips_cdd521
897 The driver for Philips CDD-521 is auto-selected when
898 .B wodim
899 finds a Philips CDD-521 drive (which is the first CD writer ever made)
900 or one of the other drives that are known to behave similar to this
901 drive.
902 All Philips CDD-521 or similar drives (see other drivers in this list)
903 do not support Session At Once recording.
904 .TP
905 .B philips_cdd521_old
906 The driver for Philips old CDD-521 is auto-selected when
907 .B wodim
908 finds a Philips CDD-521 with very old firmware which has some known limitations.
909 .TP
910 .B philips_cdd522
911 The driver for Philips CDD-522 is auto-selected when
912 .B wodim
913 finds a Philips CDD-522 which is the successor of the 521 or one of its variants
914 with Kodak label.
915 .B wodim
916 does not support Session At Once recording with these drives.
917 .TP
918 .B philips_dumb
919 The driver for Philips CDD-521 with pessimistic assumptions is never auto-selected.
920 It may be used by hand with drives that behave similar to the Philips CDD-521.
921 .TP
922 .B pioneer_dws114x
923 The driver for Pioneer DW-S114X is auto-selected when
924 .B wodim
925 finds one of the old non MMC CD writers from Pioneer.
926 .TP
927 .B plasmon_rf4100
928 The driver for Plasmon RF 4100 is auto-selected when
929 .B wodim
930 finds this specific variant of the Philips CDD-521.
931 .TP
932 .B ricoh_ro1060c
933 The driver for Ricoh RO-1060C is auto-selected when
934 .B wodim
935 finds this drive. There is no real support for this drive yet.
936 .TP
937 .B ricoh_ro1420c
938 The driver for Ricoh RO-1420C is auto-selected when
939 .B wodim
940 finds a drive with this specific variant of the Philips CDD-521 command set.
941 .TP
942 .B scsi2_cd
943 The generic SCSI-2 CD-ROM driver is auto-selected whenever
944 .B wodim
945 finds a pre MMC drive that does not support writing or a pre MMC writer that is
946 not supported by
947 .BR wodim .
948 .TP
949 .B sony_cdu924
950 The driver for Sony CDU-924 / CDU-948 is auto-selected whenever
951 .B wodim
952 finds one of the old pre MMC CD writers from Sony.
953 .TP
954 .B teac_cdr50
955 The driver for Teac CD-R50S, Teac CD-R55S, JVC XR-W2010, Pinnacle RCD-5020
956 is auto-selected whenever one of the drives is found that is known to the
957 non MMC command set used by TEAC and JVC.
958 Note that many drives from JVC will not work because they do not correctly implement
959 the documented command set and JVC has been unwilling to fix or document the
960 bugs.
961 There is no support for the Session At Once write mode yet.
962 .TP
963 .B tyuden_ew50
964 The driver for Taiyo Yuden EW-50 is auto-selected when
965 .B wodim
966 finds a drive with this specific variant of the Philips CDD-521 command set.
967 .TP
968 .B yamaha_cdr100
969 The driver for Yamaha CDR-100 / CDR-102 is auto-selected when
970 .B wodim
971 finds one of the old pre MMC CD writers from Yamaha.
972 There is no support for the Session At Once write mode yet.
973 .TP
974 .B cdr_simul
975 The simulation CD-R driver allows to run timing and speed tests
976 with parameters that match the behavior of CD writers.
977 .TP
978 .B dvd_simul
979 The simulation DVD-R driver allows to run timing and speed tests
980 with parameters that match the behavior of DVD writers.
981 .PP
982
983 .sp
984 There are two special driver entries in the list:
985 .B cdr_simul
986 and
987 .BR dvd_simul .
988 These driver entries are designed to make timing tests at any speed
989 or timing tests for drives that do not support the 
990 .B \-dummy
991 option.
992 The simulation drivers implement a drive with a buffer size of 1\ MB
993 that can be changed via the 
994 .B CDR_SIMUL_BUFSIZE
995 environment variable.
996 The simulation driver correctly simulates even a buffer underrun condition.
997 If the 
998 .B \-dummy 
999 option is present, the simulation is not aborted in case of a buffer underrun.
1000 .RE
1001 .TP
1002 .BI driveropts= "option list"
1003 Set driver specific options. The options are specified a comma separated list.
1004 To get a list of valid options use 
1005 .BI driveropts= help
1006 together with the 
1007 .I \-checkdrive
1008 option.
1009 If you like to set driver options without running a typical
1010 .B wodim
1011 task, you need to use the
1012 .B \-setdropts
1013 option in addition, otherwise the command line parser in
1014 .B wodim
1015 will complain.
1016 Currently implemented driver options are:
1017 .RS
1018 .TP
1019 .B burnfree 
1020 Turn the support for Buffer Underrun Free writing on.
1021 This only works for drives that support Buffer Underrun Free technology, which
1022 is available on most drives manufactured in this millennium. 
1023 This may be called:
1024 .BR "Sanyo BURN-Proof" ,
1025 .BR "Ricoh Just-Link" ,
1026 .B "Yamaha Lossless-Link"
1027 or similar.
1028 .sp
1029 This option is deprecated and is mentioned here for documentation purposes
1030 only. The BURN-Free feature is enabled by default if the drive supports it.
1031 However, use of BURN-Free may cause decreased burning quality. Therefore it can
1032 be useful to disable it for certain purposes, eg. when creating a master copy
1033 for mass CD production.
1034 .TP
1035 .B noburnfree 
1036 Turn the support for Buffer Underrun Free writing off.
1037 .TP
1038 .BI varirec= value
1039 Turn on the 
1040 .B "Plextor VariRec"
1041 writing mode. The mandatory parameter
1042 .I value
1043 is the laser power offset and currently may be selected from
1044 -2, -1, 0, 1, 2.
1045 In addition, you need to set the write speed to 4 in order to allow
1046 .B "VariRec"
1047 to work.
1048 .TP
1049 .BI gigarec= value
1050 Manage the
1051 .B "Plextor GigaRec"
1052 writing mode. The mandatory parameter
1053 .I value
1054 is the disk capacity ratio compared to normal recording and currently may be selected from
1055 0.6, 0.7, 0.8, 1.0, 1.2, 1.3, 1.4.
1056 If values < 1.0 are used, then the effect is similar to the
1057 .B "Yamaha Audio Master Q. R."
1058 feature. If values > 1.0 are used, then the disk capacity is 
1059 increased.
1060 .sp
1061 Not all drives support all 
1062 .B GigaRec
1063 values.
1064 When a drive uses the 
1065 .B GigaRec
1066 feature, the write speed is limited to 8x.
1067 .TP
1068 .B audiomaster
1069 Turn on the 
1070 .B "Yamaha Audio Master Q. R."
1071 feature which usually should result in high quality CDs that
1072 have less reading problems in Hi-Fi players.
1073 As this is implemented as a variant of the 
1074 Session at Once write mode, it will only work if you select 
1075 SAO write mode and there is no need to turn it off.
1076 The 
1077 .B "Audio Master"
1078 mode will work with a limited speed but
1079 may also be used with data CDs. In
1080 .B "Audio Master"
1081 mode, the pits on the CD will be written larger then usual so the capacity
1082 of the medium is reduced when turning this feature on.
1083 A 74 minute CD will only have a capacity of 63 minutes if
1084 .B "Audio Master"
1085 is active and the capacity of a 80 minute CD will be reduced to 68 minutes.
1086 .TP
1087 .B forcespeed
1088 Normally, modern drives know the highest possible speed for different
1089 media and may reduce the speed in order to grant best write quality.
1090 This technology may be called:
1091 .BR "Plextor PowerRec" ,
1092 .BR "Ricoh Just-Speed" ,
1093 .B "Yamaha Optimum Write Speed Control"
1094 or similar.
1095 Some drives (e.g. Plextor, Ricoh and Yamaha) allow to force the drive to
1096 use the selected speed even if the medium is so bad that the
1097 write quality would be poor. This option tells such a drive to
1098 force to use the selected speed regardless of the medium quality.
1099 .sp
1100 Use this option with extreme care and note that the drive should know better
1101 which medium will work at full speed.
1102 The default is to turn 
1103 .B forcespeed
1104 off, regardless of the defaults of the drive.
1105 .TP
1106 .B noforcespeed
1107 Turn off the 
1108 .B "force speed
1109 feature.
1110 .TP
1111 .B speedread
1112 Some ultra high speed drives such as 48x and faster drives from Plextor
1113 limit the read speed for unknown media to e.g. 40x in order to avoid
1114 damaged disks and drives.
1115 Using this option tells the drive to read any media as fast as possible.
1116 Be very careful as this may cause the media to break in the drive 
1117 while reading, resulting in a damaged media and drive! 
1118 .TP
1119 .B nospeedread
1120 Turn off unlimited read speed.
1121 .TP
1122 .B singlesession
1123 Turn the drive into a single session only drive.
1124 This allows to read defective or non-compliant (illegal) media with extremely
1125 non-standard additional (broken/illegal) TOC entries in the TOC from the second
1126 or higher session. Some of these disks become
1127 usable if only the information from the first session is used.
1128 You need to enable Single Session mode before you insert the defective disk!
1129 .TP
1130 .B nosinglesession
1131 Turn off single session mode. The drive will again behave as usual.
1132 .TP
1133 .B hidecdr
1134 Hide the fact that a medium might be a recordable medium.
1135 This allows to make CD-Rs look like CD-ROMs and applications believe 
1136 that the media in the drive is not a CD-R. 
1137 .TP
1138 .B nohidecdr
1139 Turn off hiding CD-R media.
1140 .TP
1141 .B tattooinfo
1142 Use this option together with
1143 .B \-checkdrive
1144 to retrieve the image size information for the
1145 .B "Yamaha DiskT@2
1146 feature. The images always have a line length of 3744 pixel.
1147 Line number 0 (radius 0) is mapped to the center of the disk.
1148 If you know the inner and outer radius you will be able to create a
1149 pre distorted image that later may appear undistorted on the disk.
1150 .TP
1151 .BI tattoofile= name
1152 Use this option together with
1153 .B \-checkdrive
1154 to write an image prepared for the
1155 .B "Yamaha DiskT@2
1156 feature to the medium.
1157 The file must be a file with raw image B&W data (one byte per pixel) 
1158 in a size as retrieved by a previous call to
1159 .BI tattoofile= name
1160 \&.
1161 If the size of the image equals the maximum possible size
1162 (3744 x 320 pixel), 
1163 .B wodim
1164 will use the first part of the file. This first part then will 
1165 be written to the leftover space on the CD.
1166 .sp
1167 Note that the image must be mirrored to be readable from the pick up
1168 side of the CD.
1169 .RE
1170 .TP
1171 .B \-setdropts
1172 Set the driveropts specified by
1173 .BI driveropts= "option list" ,
1174 the 
1175 .B speed
1176 of the drive and the 
1177 .B dummy
1178 flag and exit.
1179 This allows wodim to set drive specific parameters that are not directly 
1180 used by
1181 .B wodim
1182 like e.g.
1183 .BR "single session mode" ", " "hide cdr"
1184 and similar.
1185 It is needed in case that 
1186 .BI driveropts= "option list"
1187 should be called without planning to run a typical
1188 .B wodim
1189 task.
1190 .TP
1191 .B \-checkdrive
1192 Checks if a driver for the current drive is present and exit.
1193 If the drive is a known drive, 
1194 .B wodim
1195 uses exit code 0.
1196 .TP
1197 .B \-prcap
1198 Print the drive capabilities for SCSI-3/mmc compliant drives
1199 as obtained from mode page 0x2A. Values marked with 
1200 .I kB
1201 use 1000 bytes as kilo-byte, values marked with
1202 .I KB
1203 use 1024 bytes as Kilo-byte.
1204 .TP
1205 .B \-inq
1206 Do an inquiry for the drive, print the inquiry info and exit.
1207 .TP
1208 .B \-scanbus
1209 Scan all SCSI devices on all SCSI busses and print the inquiry
1210 strings. This option may be used to find SCSI address of the 
1211 CD/DVD-Recorder on a system. If some device types are invisible, try using
1212 .B dev=ATA:
1213 or similar option to give a hint about the device type you are looking for.
1214 The numbers printed out as labels are computed by: 
1215 .B "bus * 100 + target.
1216 On platforms and device systems without persistent SCSI number management the
1217 results are not reliable. Use the .B \-\-devices option instead.
1218 .TP
1219 .B \-\-devices
1220 Look for useable devices using the system specific functions, eg. probing with
1221 usual device nodes in /dev/*, and display the detections using symbolic device
1222 names in OS specific syntax.
1223 .TP
1224 .B \-reset
1225 Try to reset the SCSI bus where the CD recorder is located. This works not
1226 on all operating systems.
1227 .TP
1228 .B \-abort
1229 Try to send an 
1230 .B abort
1231 sequence to the drive.
1232 If you use 
1233 .B wodim
1234 only, this should never be needed; but other software may leave a drive 
1235 in an unusable condition.
1236 Calling
1237 .B "wodim \-reset
1238 may be needed if a previous write has been interrupted and the software did 
1239 not tell the drive that it will not continue to write.
1240 .TP
1241 .B \-overburn
1242 Allow 
1243 .B wodim 
1244 to write more than the official size of a medium. This feature is usually
1245 called 
1246 .I overburning
1247 and depends on the fact that most blank media may hold more space than the
1248 official size. As the official size of the lead-out area on the disk is
1249 90 seconds (6750 sectors) and a disk usually works if there are at least
1250 150 sectors of lead out, all media may be overburned by at least 88 seconds
1251 (6600 sectors).
1252 Most CD recorders only do overburning in 
1253 .B SAO
1254 or
1255 .B RAW
1256 mode. Known exceptions are TEAC CD-R50S, TEAC CD-R55S and the Panasonic
1257 CW-7502.
1258 Some drives do not allow to overburn as much as you might like and limit
1259 the size of a CD to e.g. 76 minutes. This problem may be circumvented by
1260 writing the CD in RAW mode because this way the drive has no chance to find
1261 the size before starting to burn.
1262 There is no guarantee that your drive supports overburning at all.
1263 Make a test to check if your drive implements the feature.
1264 .TP
1265 .B \-ignsize
1266 Ignore the known size of the medium. This option should be used with extreme
1267 care, it exists only for debugging purposes don't use it for other reasons.
1268 It is not needed to write disks with more than the nominal capacity.
1269 This option implies
1270 .BR \-overburn .
1271 .TP
1272 .B \-useinfo
1273 Use
1274 .B "*.inf
1275 files to overwrite audio options.
1276 If this option is used, the pregap size information is read from 
1277 the
1278 .B "*.inf
1279 file that is associated with the file that contains the audio
1280 data for a track.
1281 .sp
1282 If used together with the
1283 .B \-audio
1284 option,
1285 .B wodim
1286 may be used to write audio CDs from a pipe from
1287 .B icedax
1288 if you call
1289 .B wodim
1290 with the
1291 .B *.inf
1292 files as track parameter list instead of using audio files.
1293 The audio data is read from 
1294 .B stdin
1295 in this case.
1296 See
1297 .B EXAMPLES
1298 section below.
1299 .B wodim
1300 first verifies that 
1301 .B stdin
1302 is not connected to a terminal and runs some heuristic consistency checks
1303 on the
1304 .B *.inf
1305 files and then sets the track lengths from the information in
1306 the
1307 .B *.inf
1308 files.
1309 .sp
1310 If you like to write from 
1311 .BR stdin ,
1312 make sure that wodim is called with a large enough FIFO size, reduce the write
1313 speed to a value below the read speed of the source drive and switch the burn-free
1314 option for the recording drive on.
1315 .TP
1316 .BR defpregap= #
1317 Set the default pre-gap size for all tracks except track number 1.
1318 This option currently only makes sense with the TEAC drive when
1319 creating track-at-once disks without the 2 second silence before each track.
1320 .br
1321 This option may go away in future. 
1322 .TP
1323 .B \-packet
1324 Set 
1325 .B "Packet writing mode. 
1326 This is an experimental interface.
1327 .TP
1328 .BR pktsize= #
1329 Set the packet size to #, forces fixed packet mode.
1330 This is an experimental interface.
1331 .TP
1332 .B \-noclose
1333 Do not close the current track, useful only when in packet writing mode.
1334 This is an experimental interface.
1335 .TP
1336 .BI mcn= med_cat_nr
1337 Set the 
1338 .B "Media Catalog Number
1339 of the CD to 
1340 .IR med_cat_nr .
1341 .TP
1342 .B \-text
1343 Write CD-Text information
1344 based on information taken from a file that contains ascii information
1345 for the text strings. 
1346 .B wodim
1347 supports CD-Text information based on the content of the
1348 .B *.inf
1349 files created by 
1350 .B icedax 
1351 and CD-Text information based on the content from a
1352 .B "CUE sheet
1353 file.
1354 If a 
1355 .B "CUE sheet
1356 file contains both (binary CDTEXTFILE and text based SONGWRITER)
1357 entries, then the information based on the CDTEXTFILE entry will win.
1358 .sp
1359 You need to use the
1360 .B \-useinfo
1361 option in addition in order to tell 
1362 .B wodim
1363 to read the
1364 .B "*.inf
1365 files or
1366 .BI cuefile= filename
1367 in order to tell
1368 .B wodim
1369 to read a
1370 .B CUE sheet
1371 file in addition.
1372 If you like to write your own CD-Text information,
1373 edit the
1374 .B *.inf
1375 files or the
1376 .B "CUE sheet
1377 file with a text editor and change the fields
1378 that are relevant for CD-Text.
1379 .TP
1380 .BI textfile= filename
1381 Write CD-Text based on information found in the binary file
1382 .IR filename .
1383 This file must contain information in a data format defined in the
1384 SCSI-3 MMC-2 standard and in the Red Book. The four byte size header that is 
1385 defined in the SCSI standard is optional and allows to make the recognition of
1386 correct data less ambiguous.
1387 This is the best option to be used to copy CD-Text data from existing CDs
1388 that already carry CD-Text information. To get data in a format suitable
1389 for this option use 
1390 .B wodim \-vv \-toc
1391 to extract the information from disk.
1392 If both, 
1393 .BI textfile= filename
1394 and CD-Text information from
1395 .B *.inf
1396 or
1397 .B *.cue
1398 files are present,
1399 .BI textfile= filename
1400 will overwrite the other information.
1401 .TP
1402 .BI cuefile= filename
1403 Take all recording related information from a CDRWIN compliant
1404 .B "CUE sheet
1405 file.
1406 No track files are allowed when this option is present and the option
1407 .B \-dao
1408 is currently needed in addition.
1409
1410 .SH "TRACK OPTIONS
1411 .PP
1412 Track options may be mixed with track file names.
1413 .TP
1414 .BI isrc= ISRC_number
1415 Set the 
1416 .B "International Standard Recording Number
1417 for the next track to
1418 .IR ISRC_number .
1419 .TP
1420 .BI index= list
1421 Sets an index list for the next track.
1422 In index list is a comma separated list of numbers that are counting
1423 from index 1. The first entry in this list must contain a 0, the following 
1424 numbers must be an ascending list of numbers (counting in 1/75 seconds) that 
1425 represent the start of the indices. An index list in the form:
1426 0,7500,15000 sets index 1 to the start of the track, index 2 100 seconds from
1427 the start of the track and index 3 200 seconds from the start of the track.
1428 .TP
1429 .B \-audio
1430 If this flag is present, all subsequent tracks are written in
1431 .B "CD-DA 
1432 (similar to Red Book) audio format.
1433 The file with data for this tracks should
1434 contain stereo, 16-bit digital audio with 44100 samples/s.
1435 The byte order should be the following: MSB left, LSB left, 
1436 MSB right, LSB right, MSB left and so on. The track should be a multiple of 
1437 2352 bytes. It is not possible to put the master image of an audio track 
1438 on a raw disk because 
1439 data will be read in multiple of 2352 bytes during the recording process.
1440 .sp
1441 If a filename ends in 
1442 .I .au
1443 or
1444 .I .wav
1445 the file is considered to be a structured audio data file.
1446 .B wodim
1447 assumes that the file in this case is a Sun audio file or a
1448 Microsoft .WAV file
1449 and extracts the audio data from the files by skipping over the
1450 non-audio header information.
1451 In all other cases, wodim will only work correctly if the
1452 audio data stream does not have any header.
1453 Because many structured audio files do not have an integral
1454 number of blocks (1/75th second) in length,
1455 it is often necessary to specify the
1456 .B \-pad
1457 option as well.
1458 .B wodim
1459 recognizes that audio data in a .WAV file is stored in Intel
1460 (little-endian) byte order, and will automatically byte-swap the data
1461 if the CD recorder requires big-endian data.  
1462 .B wodim
1463 will reject any audio file that does not match the Red Book requirements
1464 of 16-bit stereo samples in PCM coding at 44100 samples/second.
1465 .sp
1466 Using other structured audio data formats as input to 
1467 .B wodim
1468 will usually work if the structure of the data is the 
1469 structure described above (raw pcm data in big-endian byte order).
1470 However, if the data format includes a header,
1471 you will hear a click at the start of a track.
1472 .TP
1473 .I " "
1474 If neither 
1475 .I \-data 
1476 nor
1477 .I \-audio
1478 have been specified, 
1479 .B wodim
1480 defaults to 
1481 .I \-audio
1482 for all filenames that end in
1483 .I .au
1484 or 
1485 .I .wav
1486 and to
1487 .I \-data 
1488 for all other files.
1489 .TP
1490 .B \-swab
1491 If this flag is present, audio data is assumed to be in byte-swapped
1492 (little-endian) order.  Some types of CD-Writers e.g. Yamaha, Sony and the
1493 new SCSI-3/mmc drives require audio data to be presented in
1494 little-endian order,
1495 .\" (which is the order in which it's actually recorded on the CD) ????
1496 while other writers require audio data to be
1497 presented in the big-endian (network) byte order normally used by the
1498 SCSI protocol.
1499 .B wodim
1500 knows if a CD-Recorder needs audio data in big- or little-endian order,
1501 and corrects the byte order of the data stream to match the needs
1502 of the recorder.
1503 You only need the 
1504 .I \-swab 
1505 flag if your data stream is in Intel (little-endian) byte order.
1506 .sp
1507 Note that the verbose output of
1508 .B wodim
1509 will show you if swapping is necessary to make the byte order of 
1510 the input data fit the required byte order of the recorder.
1511 .B wodim
1512 will not show you if the 
1513 .I \-swab 
1514 flag was actually present for a track.
1515 .TP
1516 .B \-data
1517 If this flag is present, all subsequent tracks are written in
1518 .B "CD-ROM mode 1
1519 (Yellow Book) format. The data size is a multiple of 2048 bytes.
1520 The file with track data should contain an 
1521 .BR ISO-9660 " or " "Rock Ridge
1522 filesystem image (see 
1523 .B genisoimage
1524 for more details). If the track data is an
1525 .B ufs
1526 filesystem image, fragment size should be set to 2\ KB or more to allow
1527 CD-drives with 2\ KB sector size to be used for reading.
1528 .TP
1529 .I " "
1530 .I \-data
1531 is the default, if no other flag is present and the file does not
1532 appear to be of one of the well known audio file types.
1533 .TP
1534 .I " "
1535 If neither 
1536 .I \-data 
1537 nor
1538 .I \-audio
1539 have been specified, 
1540 .B wodim
1541 defaults to 
1542 .I \-audio
1543 for all filenames that end in
1544 .I .au
1545 or 
1546 .I .wav
1547 and to
1548 .I \-data 
1549 for all other files.
1550 .TP
1551 .B \-mode2
1552 If this flag is present, all subsequent tracks are written in
1553 .B "CD-ROM mode 2
1554 format. The data size is a multiple of 2336 bytes.
1555 .TP
1556 .B \-xa
1557 If this flag is present, all subsequent tracks are written in
1558 .B "CD-ROM XA mode 2 form 1
1559 format. The data size is a multiple of 2048 bytes.
1560 The XA sector sub headers will be created by the drive.
1561 With this option, the write mode is the same as with the
1562 .B \-multi
1563 option.
1564 .TP
1565 .B \-xa1
1566 If this flag is present, all subsequent tracks are written in
1567 .B "CD-ROM XA mode 2 form 1
1568 format. The data size is a multiple of 2056 bytes.
1569 The XA sector sub headers are part of the user data and have to be
1570 supplied by the application that prepares the data to be written.
1571 .TP
1572 .B \-xa2
1573 If this flag is present, all subsequent tracks are written in
1574 .B "CD-ROM XA mode 2 form 2
1575 format. The data is a multiple of 2324 bytes.
1576 The XA sector sub headers will be created by the drive.
1577 .TP
1578 .B \-xamix
1579 If this flag is present, all subsequent tracks are written in a way
1580 that allows a mix of 
1581 .B "CD-ROM XA mode 2 form 1/2
1582 format. The data size is a multiple of 2332 bytes.
1583 The XA sector sub headers are part of the user data and have to be
1584 supplied by the application that prepares the data to be written.
1585 The CRC and the P/Q parity ECC/EDC information (depending on the sector
1586 type) have to be supplied by the application that prepares the data to be written.
1587 .TP
1588 .B \-cdi
1589 If this flag is present, the TOC type for the disk is set to
1590 .BR CDI .
1591 This only makes sense with XA disks.
1592 .TP
1593 .B \-isosize
1594 Use the 
1595 .B "ISO-9660
1596 file system size as the size of the next track.
1597 This option is needed if you want 
1598 .B wodim
1599 to directly read the image of a track from
1600 a raw disk partition or from a 
1601 .I TAO 
1602 master CD. In the first case the option
1603 .B \-isosize
1604 is needed to limit the size of the CD to the size of the ISO filesystem.
1605 In the second case the option
1606 .B \-isosize
1607 is needed to prevent 
1608 .B wodim
1609 from reading the two run out blocks that are appended by each CD-recorder
1610 in track at once mode. These two run out blocks cannot be read and would
1611 cause a buffer underrun that would cause a defective copy.
1612 Do not use this option on files created by 
1613 .B genisoimage
1614 and in case
1615 .B wodim
1616 reads the track data from 
1617 .IR stdin .
1618 In the first case, you would prevent 
1619 .B wodim 
1620 from writing the amount of padding that has been appended by
1621 .B genisoimage
1622 and in the latter case, it will not work because 
1623 .I stdin
1624 is not seekable.
1625 .sp
1626 If 
1627 .B \-isosize
1628 is used for a track, 
1629 .B wodim
1630 will automatically add padding for this track as if the
1631 .B \-pad
1632 option has been used but the amount of padding may be less than the padding
1633 written by 
1634 .BR  genisoimage .
1635 Note that if you use
1636 .B \-isosize
1637 on a track that contains Sparc boot information, the boot information will
1638 be lost.
1639 .sp
1640 Note also that
1641 this option cannot be used to determine the size of a file system
1642 if the multi session option is present.
1643 .TP
1644 .B \-pad
1645 If the track is a data track, 15 sectors of zeroed data
1646 will be added to the end of this and each subsequent data track.
1647 In this case, the 
1648 .B \-pad 
1649 option is superseded by the 
1650 .B padsize=
1651 option. It will remain however as a shorthand for
1652 .BI padsize= 15s.
1653 If the 
1654 .I \-pad 
1655 option refers to an audio track,
1656 .B wodim 
1657 will pad the audio data to be a multiple of 2352 bytes. 
1658 The audio data padding is done with binary zeroes which is 
1659 equal to absolute silence.
1660 .sp
1661 .B \-pad 
1662 remains valid until disabled by 
1663 .BR \-nopad .
1664 .TP
1665 .BR padsize= #
1666 Set the amount of data to be appended as padding to the next track to #.
1667 Opposed to the behavior of the 
1668 .B \-pad
1669 option, the value for 
1670 .I padsize=
1671 is reset to zero for each new track.
1672 wodim assumes a sector size of 2048 bytes for the
1673 .I padsize=
1674 option, independent from the real 
1675 sector size and independent from the write mode.
1676 The megabytes mentioned in the verbose mode output however are counting
1677 the output sector size which is e.g. 2448 bytes when writing in RAW/RAW96
1678 mode.
1679 See
1680 .BR fs =
1681 option for possible arguments.
1682 To pad the equivalent of 20 minutes on a CD, you may write
1683 .BR padsize= 20x60x75s.
1684 Use this option if your CD-drive is not able to read the last sectors of
1685 a track or if you want to be able to read the CD
1686 on a 
1687 .B Linux 
1688 system with the ISO-9660 filesystem read ahead bug.
1689 If an empty file is used for track data, 
1690 this option may be used to create a disk that is entirely made of padding.
1691 This may e.g. be used to find out how much overburning is possible with a 
1692 specific media.
1693 .TP
1694 .B \-nopad
1695 Do not pad the following tracks \- the default.
1696 .TP
1697 .B \-shorttrack
1698 Allow all subsequent tracks to violate the Red Book track length standard
1699 which requires a minimum track length of 4 seconds.
1700 This option is only useful when used in SAO or RAW mode.
1701 Not all drives support this feature. The drive must accept the
1702 resulting CUE sheet or support RAW writing.
1703 .TP
1704 .B \-noshorttrack
1705 Re-enforce the Red Book track length standard. Tracks must be
1706 at least 4 seconds.
1707 .TP
1708 .BR pregap= #
1709 Set the  pre-gap size for the next track.
1710 This option currently only makes sense with the TEAC drive when
1711 creating track-at-once disks without the 2 second silence before each track.
1712 .br
1713 This option may go away in future. 
1714 .TP
1715 .B \-preemp
1716 If this flag is present, all TOC entries for subsequent audio tracks 
1717 will indicate that the audio data has been sampled with 50/15 \*msec
1718 pre-emphasis.
1719 The data, however is not modified during the process of transferring from file
1720 to disk. 
1721 This option has no effect on data tracks.
1722 .TP
1723 .B \-nopreemp
1724 If this flag is present, all TOC entries for subsequent audio tracks 
1725 will indicate that the audio data has been mastered with linear data \- 
1726 this is the default.
1727 .TP
1728 .B \-copy
1729 If this flag is present, all TOC entries for subsequent audio tracks
1730 of the resulting CD
1731 will indicate that the audio data has permission to be copied without limit.
1732 This option has no effect on data tracks.
1733 .TP
1734 .B \-nocopy
1735 If this flag is present, all TOC entries for subsequent audio tracks 
1736 of the resulting CD
1737 will indicate that the audio data has permission to be copied only once for
1738 personal use \-
1739 this is the default.
1740 .TP
1741 .B \-scms
1742 If this flag is present, all TOC entries for subsequent audio tracks 
1743 of the resulting CD
1744 will indicate that the audio data has no permission to be copied anymore.
1745 .TP
1746 .BR tsize= #
1747 If the master image for the next track has been stored on a raw disk, 
1748 use this option
1749 to specify the valid amount of data on this disk. If the image of the next 
1750 track is stored in a regular file, the size of that file is taken to determine
1751 the length of this track.
1752 If the track contains an ISO 9660 filesystem image use the 
1753 .I \-isosize
1754 option to determine the length of that filesystem image.
1755 .br
1756 In Disk at Once mode and with some drives that use
1757 the TEAC programming interface, even in Track at Once mode,
1758 .B wodim
1759 needs to know the size of each track before starting to write the disk.
1760 wodim now checks this and aborts before starting to write.
1761 If this happens you will need to run
1762 .B "genisoimage -print-size
1763 before and use the output (with `s' appended) as an argument to the 
1764 .BR tsize =
1765 option of 
1766 .B wodim
1767 (e.g. tsize=250000s).
1768 .br
1769 See
1770 .BR fs =
1771 option for possible arguments.
1772
1773 .SH EXAMPLES
1774 .PP
1775 For all examples below, it will be assumed that the CD/DVD-Recorder is
1776 connected to the primary SCSI bus of the machine. The SCSI target id is
1777 set to 2.
1778 .PP
1779 To record a pure CD-ROM at double speed, using data from the file
1780 .IR cdimage.raw :
1781 .PP
1782     wodim \-v speed=2 dev=2,0 cdimage.raw
1783 .PP
1784 To create an image for a ISO 9660 filesystem with Rock Ridge extensions:
1785 .PP
1786     genisoimage \-R \-o cdimage.raw /home/joerg/master/tree
1787 .PP
1788 To check the resulting file before writing to CD on Solaris:
1789 .PP
1790     mount \-r \-F fbk \-o type=hsfs /dev/fbk0:cdimage.raw /mnt
1791 .PP
1792 On Linux:
1793 .PP
1794     mount cdimage.raw \-r \-t iso9660 \-o loop /mnt
1795 .PP
1796 Go on with:
1797 .br
1798     ls \-lR /mnt
1799 .br
1800     umount /mnt
1801 .PP
1802 If the overall speed of the system is sufficient and the structure of
1803 the filesystem is not too complex, wodim will run without creating an
1804 image of the ISO 9660 filesystem. Simply run the pipeline:
1805 .PP
1806     genisoimage \-R /master/tree | wodim \-v fs=6m speed=2 dev=2,0 -
1807 .PP
1808 The recommended minimum FIFO size for running this pipeline is 4 MBytes.
1809 As the default FIFO size is 4 MB, the 
1810 .B fs=
1811 option needs only be present if you want to use a different FIFO size.
1812 If your system is loaded, you should run genisoimage in the real time class too.
1813 To raise the priority of 
1814 .B genisoimage
1815 replace the command
1816 .PP
1817     genisoimage \-R /master/tree
1818 .br
1819 by
1820 .br
1821     priocntl \-e \-c RT \-p 59 genisoimage \-R /master/tree
1822 .sp
1823 on Solaris and by
1824 .sp
1825     nice --18 genisoimage \-R /master/tree
1826 .sp
1827 on systems that don't have
1828 .B "UNIX International
1829 compliant real-time scheduling.
1830 .PP
1831 wodim runs at priority 59 on Solaris, you should run genisoimage
1832 at no more than priority 58. On other systems, you should run genisoimage
1833 at no less than nice --18.
1834 .PP
1835 Creating a CD-ROM without file system image on disk has been tested
1836 on a Sparcstation-2 with a Yamaha CDR-400. It did work up to quad speed
1837 when the machine was not loaded.
1838 A faster machine may be able to handle quad speed also in the loaded case.
1839 .PP
1840 To record a pure CD-DA (audio) at single speed, with each track contained
1841 in a file named
1842 .IR track01.cdaudio ,
1843 .IR track02.cdaudio ,
1844 etc:
1845 .PP
1846     wodim \-v speed=1 dev=/dev/cdrw -audio track*.cdaudio
1847 .PP
1848 To check if it will be ok to use double speed for the example above. 
1849 Use the dummy write option:
1850 .PP
1851     wodim \-v \-dummy speed=2 dev=/dev/cdrw \-audio track*.cdaudio
1852 .PP
1853 To record a mixed-mode CD with an ISO 9660 filesystem from
1854 .I cdimage.raw
1855 on the first track, the other tracks being audio tracks from the files
1856 .IR track01.cdaudio ,
1857 .IR track02.cdaudio ,
1858 etc:
1859 .PP
1860     wodim \-v dev=2,0 cdimage.raw \-audio track*.cdaudio
1861 .PP
1862 To handle drives that need to know the size of a track before starting to write,
1863 first run
1864 .PP
1865     genisoimage -R -q -print-size /master/tree
1866 .PP
1867 and then run
1868 .PP
1869     genisoimage -R /master/tree | wodim speed=2 dev=2,0 tsize=XXXs -
1870 .PP
1871 where 
1872 .I XXX
1873 is replaced by the output of the previous run of genisoimage.
1874 .PP
1875 To copy an audio CD in the most accurate way, first run
1876 .PP
1877     icedax dev=/dev/cdrom \-vall cddb=0 -B \-Owav
1878 .PP
1879 and then run
1880 .PP
1881     wodim dev=/dev/cdrw \-v \-dao \-useinfo \-text  *.wav
1882 .PP
1883 This will try to copy track indices and to read CD-Text information from disk.
1884 If there is no CD-Text information, 
1885 .B icedax
1886 will try to get the information from freedb.org instead.
1887 .PP
1888 To copy an audio CD from a pipe (without intermediate files), first run
1889 .PP
1890     icedax dev=1,0 \-vall cddb=0 \-info-only
1891 .PP
1892 and then run
1893 .PP
1894     icedax dev=1,0 \-no-infofile \-B \-Oraw \- | \\
1895 .br
1896     wodim dev=2,0 \-v \-dao \-audio \-useinfo \-text *.inf
1897 .PP
1898 This will get all information (including track size info) from the
1899 .B *.inf
1900 files and then read the audio data from stdin.
1901 .sp
1902 If you like to write from 
1903 .BR stdin ,
1904 make sure that wodim is called with a large enough FIFO size (e.g.
1905 .BR fs=128m ),
1906 reduce the write speed to a value below the read speed of the source drive
1907 (e.g.
1908 .BR speed=12 ),
1909 and get a CD/DVD drive with BURN-Free feature if it is not available yet.
1910 .PP
1911 To set drive options without writing a CD (e.g. to switch a drive
1912 to single session mode), run
1913 .PP
1914     wodim dev=1,0 \-setdropts driveropts=singlesession
1915 .PP
1916 If you like to do this when no CD is in the drive, call
1917 .PP
1918     wodim dev=1,0 \-force \-setdropts driveropts=singlesession
1919 .PP
1920 To copy a CD in clone mode, first read the master CD using:
1921 .PP
1922     readom dev=b,t,l \-clone f=somefile
1923 .PP
1924 or (in case the CD contains many sectors that are unreadable by intention)
1925 by calling:
1926 .PP
1927     readom dev=1,0 -clone -nocorr f=somefile
1928 .PP
1929 will create the files
1930 .I somefile
1931 and
1932 .IR somefile.toc .
1933 Then write the CD using:
1934 .PP
1935     wodim dev=1,0 -raw96r -clone -v somefile
1936
1937
1938 .SH ENVIRONMENT
1939 .TP
1940 .B CDR_DEVICE
1941 This may either hold a device identifier that is suitable to the open
1942 call of the SCSI transport library or a label in the file /etc/wodim.conf.
1943 .TP
1944 .B CDR_SPEED
1945 Sets the default speed value for writing (see also 
1946 .B speed=
1947 option).
1948 .TP
1949 .B CDR_FIFOSIZE
1950 Sets the default size of the FIFO (see also 
1951 .BR fs= #
1952 option).
1953 .TP
1954 .B CDR_FORCERAWSPEED
1955 If this environment variable is set, 
1956 .B wodim
1957 will allow you to write at the full RAW encoding speed a single CPU supports.
1958 This will create high potential of buffer underruns. Use with care.
1959 .TP
1960 .B CDR_FORCESPEED
1961 If this environment variable is set, 
1962 .B wodim
1963 will allow you to write at the full DMA speed the system supports.
1964 There is no DMA reserve for reading the data that is to be written from disk.
1965 This will create high potential of buffer underruns. Use with care.
1966 .TP
1967 .B RSH
1968 If the 
1969 .B RSH
1970 environment is present, the remote connection will not be created via
1971 .BR rcmd (3)
1972 but by calling the program pointed to by
1973 .BR RSH .
1974 Use e.g. 
1975 .BR RSH= /usr/bin/ssh
1976 to create a secure shell connection.
1977 .sp
1978 Note that this forces 
1979 .B wodim
1980 to create a pipe to the 
1981 .B rsh(1)
1982 program and disallows
1983 .B wodim
1984 to directly access the network socket to the remote server.
1985 This makes it impossible to set up performance parameters and slows down
1986 the connection compared to a 
1987 .B root
1988 initiated
1989 .B rcmd(3)
1990 connection.
1991 .TP
1992 .B RSCSI
1993 If the 
1994 .B RSCSI
1995 environment is present, the remote SCSI server will not be the program
1996 .B /opt/schily/sbin/rscsi
1997 but the program pointed to by
1998 .BR RSCSI .
1999 Note that the remote SCSI server program name will be ignored if you log in
2000 using an account that has been created with a remote SCSI server program as
2001 login shell.
2002
2003 .SH FILES
2004 .TP
2005 /etc/wodim.conf
2006 Default values can be set for the following options in /etc/wodim.conf.
2007 For example:
2008 .SM CDR_FIFOSIZE=8m
2009 or
2010 .SM CDR_SPEED=2
2011 .RS
2012 .TP
2013 CDR_DEVICE
2014 This may either hold a device identifier that is suitable to the open
2015 call of the SCSI transport library or a label in the file /etc/wodim.conf 
2016 that allows to identify a specific drive on the system.
2017 .TP
2018 CDR_SPEED
2019 Sets the default speed value for writing (see also 
2020 .B speed=
2021 option).
2022 .TP
2023 CDR_FIFOSIZE
2024 Sets the default size of the FIFO (see also 
2025 .BR fs= #
2026 option).
2027 .TP
2028 CDR_MAXFIFOSIZE
2029 Sets the maximum size of the FIFO (see also 
2030 .BR fs= #
2031 option).
2032 .TP
2033 Any other keyword (label) is an identifier (symbolic name) for a specific drive
2034 on the system.  Such an identifier may not contain the characters ',', '/', '@'
2035 or ':'.
2036 .sp
2037 Each line that follows a label contains a whitespace separated list of items.
2038 Currently, four items are recognized: the drive's target specification, the
2039 default speed that should be used for this drive, the default FIFO size
2040 that should be used for this drive and drive specific options. The values for 
2041 .I speed
2042 and
2043 .I fifosize
2044 may be set to -1 to tell wodim to use the global defaults.
2045 .I target
2046 can be -1 to use the auto-guessing of the drive (see above).
2047
2048 The value for driveropts may be omitted or set to "" if no driveropts are used.
2049 A typical line may look this way:
2050 .sp
2051 plex760= 0,5,0  12      50m     varirec=1
2052 .sp
2053 pioneer= /dev/hdd       -1      -1
2054 .sp
2055 This tells
2056 .B wodim
2057 that a drive named
2058 .I plex760
2059 is at scsibus 0, target 5, lun 0 and should be used with speed 12 and
2060 a FIFO size of 50 MB. It also uses some device specific parameter.
2061 A second drive may is accessible via the device file /dev/hdd and uses the
2062 default speed and the default FIFO size.
2063 .RE
2064
2065 .SH SEE ALSO
2066 .BR icedax (1),
2067 .BR readom (1),
2068 .BR genisoimage (1),
2069 .BR ssh (1).
2070
2071 .SH NOTES
2072 .PP
2073 On Solaris you need to stop the volume management if you like to use the USCSI
2074 fallback SCSI transport code. Even things like 
2075 .B "wodim -scanbus
2076 will not work if the volume management is running.
2077 .PP
2078 Disks made in 
2079 .B "Track At Once 
2080 mode are not suitable as a master for direct mass production by CD manufacturers.
2081 You will need the 
2082 .B "disk at once
2083 option to record such disks.
2084 Nevertheless the disks made in
2085 .B "Track At Once 
2086 will normally be read in all CD players. Some old
2087 audio CD players however may produce a two second click between two audio tracks.
2088 .PP
2089 The minimal size of a track is 4 seconds or 300 sectors. If you write 
2090 smaller tracks, the CD-Recorder will add dummy blocks. This is not an
2091 error, even though the SCSI-error message looks this way.
2092 .PP
2093 The Yamaha CDR-400 and all new SCSI-3/mmc conforming drives are supported
2094 in single and multi-session.
2095 .PP
2096 You should run several tests in all supported speeds of your drive with the
2097 .B \-dummy
2098 option turned on if you are using 
2099 .B wodim
2100 on an unknown system. Writing a CD is a real-time process. 
2101 .B NFS, CIFS
2102 and other network file systems
2103 won't always deliver constantly the needed data rates.
2104 If you want to use 
2105 .B wodim 
2106 with CD-images that are located on a
2107 .B NFS
2108 mounted filesystem, be sure that the FIFO size is big enough.
2109 If you want to make sure that buffer underruns are not
2110 caused by your source disk, you may use the command
2111 .PP
2112 .B "    wodim -dummy dev=2,0 padsize=600m /dev/null
2113 .PP
2114 to create a disk that is entirely made of dummy data.
2115 .PP
2116 There are also cases where you either need to be root or install
2117 .B wodim 
2118 executable with suid-root permissions. First, if you are using a device
2119 manufactured before 1999 which requires a non-MMC driver, you should run
2120 .B wodim
2121 in dummy mode before writing data. If you find a problem doing this, please
2122 report it to the
2123 .B cdrkit
2124 maintainers (see below).
2125 .PP
2126 Second, certain functionality may be unusable because of Linux's SCSI
2127 command filtering. When using
2128 .B wodim
2129 for anything except of pure data writing, you should also test the process in
2130 dummy mode and report trouble to the contact address below.
2131 .PP
2132 If you still want to run
2133 .B wodim
2134 with root permissions, you can set the permissions of the executable to
2135 suid-root. See the additional notes of your system/program distribution or
2136 README.suidroot which is part of the cdrkit source.
2137 .PP
2138 You should not connect old drives that do not support
2139 disconnect/reconnect to either the SCSI bus that is connected to the
2140 CD-Recorder or the source disk.
2141 .PP
2142 A Compact Disc can have no more than 99 tracks.
2143 .PP
2144 When creating a disc with both audio and data tracks, 
2145 the data should be on track 1 otherwise you should create
2146 a CDplus disk which is a multi session disk with the first session 
2147 containing the audio tracks and the following session containing the data track.
2148 .PP
2149 Many operating systems are not able to read more than a single data track, or
2150 need special software to do so.
2151 .PP
2152 If you have more information or SCSI command manuals for currently 
2153 unsupported CD/DVD/BR/HD-DVD-Recorders, please contact the
2154 .B cdrkit
2155 maintainers (see below).
2156 .PP
2157 Many CD recorders have bugs and often require a firmware update to work
2158 correctly. If you experience problems which cannot be solved or explained by the
2159 notes above, please look for instructions on the homepage of the particular
2160 manufacturer.
2161 .PP
2162 Some bugs will force you to power cycle the device or to reboot the machine.
2163 .PP
2164 The FIFO percent output is computed just after a block of data has been written
2165 to the CD/DVD-Recorder. For this reason, there will never be 100% FIFO fill ratio
2166 while the FIFO is in streaming mode.
2167
2168 .SH DIAGNOSTICS
2169 .PP
2170 You have 4 seconds to abort
2171 .B wodim
2172 start after you see the message:
2173 .PP
2174 Starting to write CD at speed %d in %s mode for %s session.
2175 In most shells you can do that by pressing Ctrl-C.
2176 .PP
2177 A typical error message for a SCSI command looks like:
2178 .sp
2179 .RS
2180 .nf
2181 wodim: I/O error. test unit ready: scsi sendcmd: no error
2182 CDB:  00 20 00 00 00 00
2183 status: 0x2 (CHECK CONDITION)
2184 Sense Bytes: 70 00 05 00 00 00 00 0A 00 00 00 00 25 00 00 00 00 00
2185 Sense Key: 0x5 Illegal Request, Segment 0
2186 Sense Code: 0x25 Qual 0x00 (logical unit not supported) Fru 0x0
2187 Sense flags: Blk 0 (not valid)
2188 cmd finished after 0.002s timeout 40s
2189 .fi
2190 .RE
2191 .sp
2192 The first line gives information about the transport of the command.
2193 The text after the first colon gives the error text for the system call
2194 from the view of the kernel. It usually is:
2195 .B "I/O error
2196 unless other problems happen. The next words contain a short description for
2197 the SCSI command that fails. The rest of the line tells you if there were
2198 any problems for the transport of the command over the SCSI bus.
2199 .B "fatal error
2200 means that it was not possible to transport the command (i.e. no device present
2201 at the requested SCSI address).
2202 .PP
2203 The second line prints the SCSI command descriptor block for the failed command.
2204 .PP
2205 The third line gives information on the SCSI status code returned by the 
2206 command, if the transport of the command succeeds. 
2207 This is error information from the SCSI device.
2208 .PP
2209 The fourth line is a hex dump of the auto request sense information for the 
2210 command.
2211 .PP
2212 The fifth line is the error text for the sense key if available, followed
2213 by the segment number that is only valid if the command was a
2214 .I copy
2215 command. If the error message is not directly related to the current command,
2216 the text
2217 .I deferred error
2218 is appended.
2219 .PP
2220 The sixth line is the error text for the sense code and the sense qualifier if available.
2221 If the type of the device is known, the sense data is decoded from tables
2222 in
2223 .IR scsierrs.c " .
2224 The text is followed by the error value for a field replaceable unit.
2225 .PP
2226 The seventh line prints the block number that is related to the failed command
2227 and text for several error flags. The block number may not be valid.
2228 .PP
2229 The eight line reports the timeout set up for this command and the time
2230 that the command really needed to complete.
2231 .PP
2232 The following message is not an error:
2233 .sp
2234 .RS
2235 .nf
2236 Track 01: Total bytes read/written: 2048/2048 (1 sectors).
2237 wodim: I/O error. flush cache: scsi sendcmd: no error
2238 CDB:  35 00 00 00 00 00 00 00 00 00
2239 status: 0x2 (CHECK CONDITION)
2240 Sense Bytes: F0 00 05 80 00 00 27 0A 00 00 00 00 B5 00 00 00 00 00
2241 Sense Key: 0x5 Illegal Request, Segment 0
2242 Sense Code: 0xB5 Qual 0x00 (dummy data blocks added) Fru 0x0
2243 Sense flags: Blk -2147483609 (valid)
2244 cmd finished after 0.002s timeout 40s
2245 .fi
2246 .RE
2247 .sp
2248 It simply notifies, that a track that is smaller than the minimum size has been
2249 expanded to 300 sectors.
2250 .SH BUGS
2251 .PP
2252 .B netscsid
2253 does not work properly and is generally unmaintained. It is probably not
2254 compatible with rscsi from 
2255 .BR cdrtools
2256 either. Good bugfixes are welcome, talk to Cdrkit maintainers.
2257 .PP
2258 .B cuefile support is very limited, only one file is allowed. For volunteers,
2259 see TODO file in the source.
2260 .PP
2261 .B Specifying an audio file multiple times causes corruption of the second
2262 track (effectively no data plus minimum padding).
2263 .PP
2264 Some of the bugs may be fixed in Joerg Schilling's cdrtools. See there for
2265 details, URL attached below.
2266
2267 .SH CREDITS
2268 .PP
2269 .TP 15
2270 Joerg Schilling (schilling@fokus.fhg.de)
2271 .br
2272 For writing cdrecord and libscg which represent the most parts of wodim's code.
2273 .PP
2274 .TP 15
2275 Bill Swartz     (Bill_Swartz@twolf.com)
2276 .br
2277 For helping me with the TEAC driver support
2278 .TP
2279 Aaron Newsome   (aaron.d.newsome@wdc.com)
2280 .br
2281 For letting me develop Sony support on his drive
2282 .TP
2283 Eric Youngdale  (eric@andante.jic.com)
2284 .br
2285 For supplying mkisofs
2286 .TP
2287 Gadi Oxman      (gadio@netvision.net.il)
2288 .br
2289 For tips on the ATAPI standard
2290 .TP
2291 Finn Arne Gangstad      (finnag@guardian.no)
2292 .br
2293 For the first FIFO implementation.
2294 .TP
2295 Dave Platt      (dplatt@feghoot.ml.org)
2296 .br
2297 For creating the experimental packet writing support,
2298 the first implementation of CD-RW blanking support,
2299 the first .wav file decoder 
2300 and many nice discussions on cdrecord.
2301 .TP
2302 Chris P. Ross (cross@eng.us.uu.net)
2303 .br
2304 For the first implementation of a BSDI SCSI transport.
2305 .TP
2306 Grant R. Guenther   (grant@torque.net)
2307 .br
2308 For creating the first parallel port transport implementation
2309 for Linux.
2310 .TP
2311 Kenneth D. Merry (ken@kdm.org)
2312 .br
2313 for providing the CAM port for FreeBSD together with Michael Smith (msmith@freebsd.org)
2314 .TP
2315 Heiko Ei\*sfeldt (heiko@hexco.de)
2316 for making libedc_ecc available (needed to write RAW data sectors).
2317
2318 .SH "MAILING LISTS
2319 If you want to actively take part on the development of wodim,
2320 you may join the developer mailing list via this URL:
2321 .sp
2322 .B
2323 https://alioth.debian.org/mail/?group_id=31006
2324 .PP
2325 The mail address of the list is:
2326 .B
2327 debburn-devel@lists.alioth.debian.org
2328
2329 .SH AUTHORS
2330 .B wodim
2331 is currently maintained as part of the cdrkit project by its developers. Most of the code and this manual page was originally written by:
2332 .PP
2333 .nf
2334 Joerg Schilling
2335 Seestr. 110
2336 D-13353 Berlin
2337 Germany
2338 .fi
2339 .PP
2340 This application is derived from "cdrecord" as included
2341 in the cdrtools package [1] created by Joerg
2342 Schilling, who deserves most of the credit for its success. However, he is not
2343 involved into the development of this spinoff and therefore he shall not be
2344 held responsible for any problems caused by it. Do not refer to this application
2345 as "cdrecord", do not try to get support for wodim by contacting the original
2346 authors.
2347 .PP
2348 Additional information can be found on:
2349 .br
2350 https://alioth.debian.org/projects/debburn/
2351 .PP
2352 If you have support questions, send them to
2353 .PP
2354 .B
2355 debburn-devel@lists.alioth.debian.org
2356 .br
2357 .PP
2358 If you have definitely found a bug, send a mail to this list or to
2359 .PP
2360 .B
2361 submit@bugs.debian.org
2362 .br
2363 .PP
2364 writing at least a short description into the Subject and "Package: cdrkit" in the first line of the mail body.
2365 .SH SOURCES
2366 .PP
2367 .br
2368 [1] Cdrtools 2.01.01a08 from May 2006, http://cdrecord.berlios.de
2369