1XORRECORD(1)                General Commands Manual               XORRECORD(1)
2
3
4

NAME

6       xorrecord -  Emulation of CD/DVD/BD program cdrecord by program xorriso
7

SYNOPSIS

9       xorrecord [ options ] dev=device [track_source]
10

DESCRIPTION

12       xorrecord writes preformatted data to CD, DVD, and BD media.
13
14       It  understands some options of program cdrecord from cdrtools by Joerg
15       Schilling.  Its implementation is part of program xorriso which  shares
16       no  source  code  with  cdrtools,  but  rather makes use of libburn for
17       communicating with the drive.
18       Another, more complete cdrecord emulator is program cdrskin which  uses
19       the same burn functions as xorrecord, but is able to burn audio CDs and
20       to handle CD-TEXT.
21
22   MMC, Session, Track, Media types:
23       MMC is a standard out of the SCSI family which defines the  interaction
24       between  computers and optical drives. Since more than a decade all CD,
25       DVD, or BD recorders obey this standard regardless by what bus  cabling
26       they  are  attached  to  the  computer. libburn relies on this standard
27       compliance and on the capability of the  operating  system  to  perform
28       SCSI transactions over the particular bus cabling.
29       A  Session  is  a  data  region  on  an optical disc which usually gets
30       written in a single sweep. It contains at least one Track  which  is  a
31       contiguous  string  of  readable  blocks.   xorrecord produces a single
32       session with a single data track which consists  of  blocks  with  2048
33       bytes  each. It chooses the write mode automatically according to media
34       type, medium state, and option -multi.
35       On CD media there are other track types,  like  audio,  and  particular
36       write  modes  like TAO and SAO. CD and DVD- media can put more than one
37       track into a session. Some  of  these  features  can  be  addressed  by
38       program cdrskin.
39       MMC  describes  several  recordable  media types which roughly form two
40       families.
41       Sequentially recordable media are CD-R, CD-RW, DVD-R, DVD-R DL, DVD-RW,
42       DVD+R,  DVD+R  DL,  BD-R.  Except DVD-R DL they can store more than one
43       session if there is still unwritten space and if the  previous  session
44       was  written  with  option  -multi.  CD-RW and DVD-RW can be blanked in
45       order to be re-usable from scratch.
46       Overwritable media are DVD-RAM, DVD+RW, formatted DVD-RW, BD-RE.   They
47       offer  a  single session with a single track for random access writing.
48       There is no need to blank overwritable media before re-use.
49       DVD-RW media are sold in  sequentially  recordable  state  but  can  be
50       formatted     once     to     become    overwritable.    See    options
51       blank=format_overwrite and blank=deformat.
52       If ISO 9660 filesystems are to be stored on overwritable media, then it
53       is   possible   to   emulate   multiple   sessions,   by  using  option
54       --grow_overwriteable_iso. In this case, the need  for  blanking  before
55       re-use is emulated too.
56
57   Drive preparation and addressing:
58       The  drives,  CD,  DVD,  or BD burners, are accessed via file addresses
59       which are specific to libburn and the operating system. Those addresses
60       get listed by a run of xorrecord --devices or xorriso -device_links.
61       On GNU/Linux, FreeBSD, and NetBSD, the user needs rw-permission for the
62       device file.  On Solaris, the user  needs  r-permission  and  privilege
63       "sys_devices", which is usually gained by running xorrecord via command
64       pfexec.
65       These permissions or privileges are needed already for listing a drive.
66       So  it  might  be  necessary  to  get  the overview as superuser or via
67       pfexec.
68       xorrecord does not perform cdrecord option -scanbus and does not accept
69       the  addresses  of  form Bus,Target,Lun which are told by -scanbus.  If
70       support for these addresses  is  necessary,  consider  to  use  program
71       cdrskin.
72       It  is  possible  to  let  xorrecord  work  on  emulated drives.  Their
73       addresses begin by prefix "stdio:" followed by  a  file  address.   The
74       emulated  media behavior depends on the file type.  See man xorriso for
75       details.
76       If standard output is chosen as emulated drive, then all program result
77       texts,  which usually appear on standard output, will get redirected to
78       standard error.
79
80   Relation to program xorriso:
81       xorrecord is actually a command mode of  program  xorriso,  which  gets
82       entered  either  by  xorriso  command "-as cdrecord" or by starting the
83       program by one  of  the  names  "xorrecord",  "cdrecord",  "wodim",  or
84       "cdrskin".
85       This  command  mode can be left by argument "--" which leads to generic
86       xorriso command mode. See man xorriso for its description.  Other  than
87       in xorriso command mode, the sequence of the cdrecord emulation options
88       does not matter.  All pending actions get performed in a fixed sequence
89       before the program run ends or before cdrecord emulation ends.
90
91

OPTIONS

93       Addressing the drive:
94
95       --devices
96              Print  the  list of accessible CD, DVD, or BD drives to standard
97              output.  Drives might be  inaccessible  if  the  user  lacks  of
98              permissions  to  use  them  or if the drive is in use by another
99              program.
100              Each accessible drive is shown by a line like:
101                0  -dev '/dev/sr0' rwrw-- :  'TSSTcorp' 'CDDVDW SH-S203B'
102              The libburn address of this drive is '/dev/sr0'.  'TSSTcorp'  is
103              the  name  of  the vendor (in this case: Toshiba Samsung Storage
104              Technologies Corporation), 'CDDVDW SH-S203B' is the  model  name
105              (in this case: a DVD burner).
106              Afterwards  end  emulation  without performing any further drive
107              operation.
108
109       dev=drive_address
110              Set the libburn address of the drive to be used.
111              E.g. on GNU/Linux: dev=/dev/sr0
112              E.g. on FreeBSD: dev=/dev/cd0
113              E.g. on NetBSD: dev=/dev/rcd0d
114              E.g. on Solaris: dev=/dev/rdsk/c2t2d0s2
115              See also above "Drive preparation and addressing".
116              The medium in the drive should not be mounted or be otherwise in
117              use.
118              This  option  will  only  get  into  effect if a track source, a
119              blank= option, or a drive inquiry option is given. Else it  will
120              lead to a SORRY event and normally cause a non-zero exit value.
121
122       Inquiring drive and media:
123
124       -inq   Print  to  standard  output:  vendor,  model  name, and firmware
125              revision of the drive.
126
127       -checkdrive
128              Print unconditionally that the drive supports burnfree, SAO, and
129              TAO.  Also print the output of option -inq.
130
131       -atip  Print the output of -checkdrive, the most capable profile of the
132              medium in the drive, the list of profiles which are supported by
133              the  drive,  whether  it  is erasable (i.e. can be blanked), the
134              media manufacturer, and the medium product name.
135              Profiles are usage models, which are often tied to a  particular
136              media  type  (e.g.  CD-RW),  but  may  also apply to a family of
137              media. E.g. profile CD-ROM applies to all CD media which contain
138              data.
139
140       -toc   Print  a table of content of the medium in the drive. The output
141              is not compatible to cdrecord option -toc, but rather the one of
142              xorriso command -toc.  It lists the address, vendor, model name,
143              and firmware revision of the drive.
144              About the medium it tells product name and manufacturer, whether
145              there  is already content written, and if so, whether the medium
146              is closed or  appendable.  Appendable  media  can  take  another
147              session.   The amount of readable and writable data is told.  If
148              there are sessions, then their start block address and  size  is
149              reported.   If  a  session contains an ISO 9660 filesystem, then
150              its Volume Id is reported.  If the medium is writable, then  the
151              next writable block address is reported.
152              If  not  option --grow_overwriteable_iso is given or no ISO 9660
153              file system is present on the medium,  then  overwritable  media
154              are  reported  as being blank. This is due to the fact that they
155              can be written from scratch  without  further  preparation,  and
156              that  MMC  does not distinguish between data written by the most
157              previous burn run and older data which have not been overwritten
158              by that burn run.  Consequently, these media are reported with 0
159              readable blocks, although all their writable blocks normally are
160              readable, too.
161
162       -msinfo
163              Print  the  argument  text  for  option  -C of programs mkisofs,
164              genisoimage, or xorrisofs. It consists of two numbers  separated
165              by a comma.
166              The first number tells the first block of the first track of the
167              last recorded session. This is also the address used by  default
168              when  operating  systems  mount  a  medium  with  e.g.  ISO 9660
169              filesystem.
170              The  second  number  tells  the  next  writable  address,  where
171              xorrecord will begin to write the next session.
172              This  option is only valid for written, appendable media. In all
173              other cases it will yield no output  text  but  will  abort  the
174              program with non-zero exit value.
175
176       Settings for the burn run:
177
178       A  burn  run  requires exactly one track source address argument, which
179       tells from where to read the data which shall be put into the upcomming
180       session. The medium state must be either blank or appendable.
181       Track source may be "-" for standard input or the address of a readable
182       file of any type except directories. Nearly all media  types  accept  a
183       track  source  with  unpredictable  byte  count, like standard input or
184       named pipes.   Nevertheless,  DVD-R  DL  and  DVD-RW  blanked  by  mode
185       deformat_quickest  demand  exact  in-advance  reservation  of the track
186       size, so that they either need to be read from a source of  predictable
187       length,  or  need  to  be  accompanied  by  option  tsize= or by option
188       -isosize.
189       Several options expect a size  value  as  argument.  A  number  with  a
190       trailing letter "b" or without a trailing letter is a plain byte count.
191       Other trailing letters cause multiplication of the given  number  by  a
192       scaling factor:
193       "k"  or  "K"  = 1024 , "m" or "M" = 1024k , "g" or "G" = 1024m , "s" or
194       "S" = 2048
195       E.g. tsize=234567s means a size of 234567 * 2048 = 480393216 bytes.
196
197       blank=mode
198              Blank a CD-RW or DVD-RW  to  make  it  re-usable  from  scratch.
199              Format  a  DVD-RW,  DVD+RW,  DVD-RAM,  BD-R, or BD-RE if not yet
200              formatted.
201              This operation normally makes any recorded data  on  the  medium
202              unreadable.   It  is  combinable with burning in the same run of
203              xorrecord, or it  may  be  performed  without  a  track  source,
204              leaving the medium empty.
205              The mode given with blank= selects the particular behavior:
206
207              as_needed
208                     Try  to make the media ready for writing from scratch. If
209                     it needs formatting, then format it. If it is not  blank,
210                     then try to apply blank=fast.  It is a reason to abort if
211                     the medium cannot assume thoroughly writeable state, e.g.
212                     if it is a non-blank write-once.
213                     This  leaves  unformatted  DVD-RW  in  unformatted  blank
214                     state. To format DVD-RW use blank=format_overwrite. Blank
215                     unformatted BD-R stay unformatted.
216                     (Note:   blank=as_needed  is  not  an  original  cdrecord
217                     option.)
218
219              all
220                     Blank an entire CD-RW or an unformatted DVD-RW.
221
222              fast
223                     Minimally blank an entire CD-RW or blank  an  unformatted
224                     DVD-RW.
225
226              deformat
227                     Like  blank=all  but with the additional ability to blank
228                     overwriteable DVD-RW.  This will destroy their formatting
229                     and make them sequentially recordable.
230                     (Note:   blank=deformat   is  not  an  original  cdrecord
231                     options)
232
233              deformat_quickest
234                     Like blank=deformat but blanking DVD-RW  only  minimally.
235                     This  is  faster  than  full  blanking  but  yields media
236                     incapable  of  writing  tracks  of  unpredicatable  size.
237                     Multi-session will not be possible either.
238                     (Note:   blank=deformat_quickest   is   not  an  original
239                     cdrecord option.)
240
241              format_overwrite
242                     Format a  DVD-RW  to  "Restricted  Overwrite".  The  user
243                     should bring some patience.
244                     Format  unformatted  DVD+RW, BD-RE or blank BD-R to their
245                     default size.  It is not mandatory to do this with DVD+RW
246                     and   BD-RE   media,  because  they  will  get  formatted
247                     automatically on the first write attempt.
248                     BD-R media may be  written  in  unformatted  state.  This
249                     keeps  disabled the replacement of bad blocks and enables
250                     full nominal write speed. Once BD-R  media  are  written,
251                     they cannot be formatted any more.
252                     For   re-formatting   already   formatted  media  or  for
253                     formatting with non-default  size,  use  program  xorriso
254                     with command -format.
255                     (Note: blank=format_overwrite is not an original cdrecord
256                     options)
257
258              help
259                     Print a short overview of blank modes to  standard  error
260                     output.
261                     Afterwards  end  emulation  without  performing any drive
262                     operation.
263
264       -multi This option keeps  CD,  unformatted  DVD-R[W],  DVD+R,  or  BD-R
265              appendable  after the current session has been written.  Without
266              it the disc gets closed and may  not  be  written  any  more   -
267              unless  it  is  a -RW and gets blanked, which causes loss of its
268              content.
269              This option cannot be applied to DVD-R DL  or  to  DVD-RW  which
270              were     blanked    by    mode    "deformat_quickest".    Option
271              --multi_if_possible may automatically recognize and handle  this
272              situation.
273              In order to have all filesystem content accessible, the eventual
274              ISO-9660 filesystem of a follow-up session needs to be  prepared
275              in  a  special way by the filesystem formatter program. mkisofs,
276              genisoimage, and xorrisofs  expect  particular  info  about  the
277              situation which can be retrieved by xorrecord option -msinfo.
278              With  overwriteable  DVD or BD media, -multi cannot mark the end
279              of the session.  So when adding a new session, this end  has  to
280              be   determined  from  the  payload.   Currently  only  ISO-9660
281              filesystems   can    be    used    that    way.    See    option
282              --grow_overwriteable_iso.
283
284       -dummy Try  to  perform the drive operations without actually affecting
285              the inserted media. There is no warranty  that  this  will  work
286              with  a  particular  combination of drive and media. Blanking is
287              prevented reliably, though.  To avoid inadverted  real  burning,
288              -dummy  refuses  burn runs on anything but CD-R[W], DVD-R[W], or
289              emulated stdio-drives.
290
291       -waiti Wait until input data is available at stdin  or  EOF  occurs  at
292              stdin.  Only then begin to access any drives.
293              One should use this if xorrisofs is working at the end of a pipe
294              where the feeder process reads from the drive before  it  starts
295              writing its output into xorrisofs. Example:
296              xorrisofs ... -C 0,12800 -M /dev/sr0 ... | \
297              xorrecord dev=/dev/sr0 ... -waiti -
298              This  option  works  even  if  standard  input  is not the track
299              source. If no process is piping in, then the Enter key  of  your
300              terminal will act as trigger for xorrecord. Note that this input
301              line will not be consumed by cdrskin if standard  input  is  not
302              the track source. It will end up as shell command, usually.
303
304       tsize=size
305              Announce  the  exact size of the track source. This is necessary
306              with DVD-R DL media and with quickest  blanked  DVD-RW,  if  the
307              size cannot be determined in advance from the track source. E.g.
308              if it is standard input or a named pipe.
309              If the track source does not deliver  the  predicted  amount  of
310              bytes,  the remainder of the track is padded with zeros. This is
311              not considered an error.  If on the other hand the track  source
312              delivers  more  than the announced bytes then the track on media
313              gets truncated to the predicted size and  xorrecord  exits  with
314              non-zero value.
315
316       -isosize
317              Try  to  obtain  the  track  size  from the content of the track
318              source.  This works only if the track source bears an  ISO  9660
319              filesystem.   Any other track source content will cause the burn
320              run to abort.
321              If the track source is not a regular file or block device,  then
322              this  option  will  work  only  if the program's fifo size is at
323              least 64k. See option fs=.
324
325       padsize=size
326              Add the given amount of trailing zeros to the  upcomming  track.
327              This  feature  can  be  disabled by size 0. Default is 300 kB in
328              order to work around a problem with GNU/Linux which often  fails
329              to  read  the last few blocks of a CD track which was written in
330              write mode TAO. TAO is used  by  xorrecord  if  the  track  size
331              cannot  be  predicted  or  if  the  CD  medium  is not blank but
332              appendable.
333
334       -nopad The same as padsize=0.
335
336       -pad   The same as padsize=15s. This was  once  sufficient  with  older
337              GNU/Linux   kernels.   Meanwhile   one   should   at  least  use
338              padsize=128k, if not padsize=300k.
339
340       -data  Explicitly announce that the track source shall be  recorded  as
341              data  track,  and  not as audio track. This option has no effect
342              with xorrecord, because there is  no  support  for  other  track
343              formats anyway.
344
345       -tao   Explicitly  demand  that write type TAO shall be used for CD, or
346              Incremental for DVD-R. Normally  the  program  will  choose  the
347              write  type  according to the given medium state, option -multi,
348              and track source. Demanding it explicitly prevents the start  of
349              a write run, if it is not appropriate to the situation.
350
351       -sao   Explicitly  demand  that write type SAO shall be used for CD, or
352              DAO for DVD-R.  This might prevent the write run, if it  is  not
353              appropriate to the situation.
354
355       -dao   Alias of -sao.
356
357       fs=size
358              Set  the  size  of  the  program  fifo buffer to the given value
359              rather than the default of 4m.
360              The fifo buffers a temporary surplus of  track  source  data  in
361              order  to provide the drive with a steady stream during times of
362              temporary lack of track source supply.
363              Other than cdrecord, xorrecord  enables  drive  buffer  underrun
364              protection  by  default and does not wait with writing until the
365              fifo is full for a first time.  On very old CD drives  and  slow
366              computers,  this  might  cause aborted burn runs.  In this case,
367              consider to use program cdrskin for  CD  burning.   DVD  and  BD
368              drives tolerate buffer underrun without problems.
369              The  larger  the  fifo, the longer periods of poor source supply
370              can be compensated. But a large fifo can deprive  the  operating
371              system of read cache for better filesystem performance.
372
373       speed=value
374              Set the write speed. Default is 0 = maximum speed.  Speed can be
375              given in media type dependent x-speed numbers or  as  a  desired
376              throughput per second in MMC compliant kB (= 1000) or MB (= 1000
377              kB). Media x-speed factor can be set explicitly by appending "c"
378              for CD, "d" for DVD, "b" for BD. "x" is optional.
379              Example speeds:
380               706k = 706kB/s = 4c = 4xCD
381               5540k = 5540kB/s = 4d = 4xDVD
382              If  there  is  no  hint  about the speed unit attached, then the
383              medium in the drive will decide.   Default  unit  is  CD,  1x  =
384              176,400   raw   bytes/second.    With   DVD,   1x   =  1,385,000
385              bytes/second.  With BD, 1x = 4,495,625 bytes/second.
386              MMC drives usually activate their own idea of speed and take the
387              speed  value  given by the burn program only as a hint for their
388              own decision.
389
390       minbuf=percentage
391              Equivalent to:
392               modesty_on_drive=<percentage>
393
394       -immed Equivalent to:
395               modesty_on_drive=75
396              In cdrecord, this also controls  use  of  the  Immed  bit.   But
397              xorriso  uses Immed where possible and appropriate, unless it is
398              disabled by option use_immed_bit=off .
399
400       -eject Eject the drive tray after alll other work is done.
401
402       Program version and verbosity:
403
404       -version
405              Print to standard output a line beginning by
406              "Cdrecord 2.01-Emulation Copyright"
407              and further lines which report the version of  xorriso  and  its
408              supporting  libraries.  They  also state the license under which
409              the program is provided,  and  disclaim  any  warranty,  to  the
410              extent permitted by law.
411              Afterwards end emulation without performing any drive operation.
412
413       -v     Increase   program  verbosity  by  one  level.  There  are  four
414              verbosity levels from nearly silent to debugging verbosity.  The
415              both  highest  levels can be enabled by repeated -v or by -vv or
416              by -vvv.
417
418       -V     Log SCSI commands and drive replies  to  standard  error.   This
419              might  be  of  interest  if  xorrecord and a particular drive or
420              medium do not cooperate as expected, or if you just want to know
421              how  libburn  interacts  with  the  drive.   To  understand this
422              extremely verbous log, one needs to read SCSI  specs  SPC,  SBC,
423              and MMC.
424              Please  do not add such a log to a bug report on the first hand,
425              unless you want to point out a particular  deviation  from  said
426              specs,  or  if  you  get  asked  for this log by a maintainer of
427              xorrecord who feels in charge for your bug report.
428
429       -help  Print a sparse list of program options  to  standard  error  and
430              declare not to be cdrecord.
431              Afterwards end emulation without performing any drive operation.
432
433       Options not compatible to cdrecord:
434
435       --no_rc
436              Only if used as first command line argument this option prevents
437              reading and interpretation of startup files. See  section  FILES
438              below.
439
440       drive_scsi_dev_family=sr|scd|sg|default
441              GNU/Linux specific:
442              By  default,  cdrskin  tries  to  map  Linux  drive addresses to
443              /dev/sr* before they get opened for operating  the  drive.  This
444              coordinates  well  with  other use cases of optical drives, like
445              mount(8). But since year 2010 all /dev/sr* share a  global  lock
446              which allows only one drive to process an SCSI command while all
447              others have to wait  for  its  completion.   This  yields  awful
448              throughput  if  more  than  one  drive  is  writing  or  reading
449              simultaneously.
450              The global lock is not applied to device files /dev/sg* and also
451              not with the system calls read(2), write(2). But ioctl(SG_IO) is
452              affected, which is needed  to  perform  the  SCSI  commands  for
453              optical burning.
454              So  for  simultaneous  burn  runs  on  modern  GNU/Linux  it  is
455              advisable to use drive_scsi_dev_family="sg". The drive addresses
456              may  then  well  be  given as /dev/sr* but will nevertheless get
457              used as /dev/sg*.
458
459       --grow_overwriteable_iso
460              Enable emulation of multi-session writing on overwriteable media
461              which  contain an ISO 9660 filesystem. This emulation is learned
462              from growisofs -M but adapted to the usage model of
463              xorrecord -msinfo
464              xorrisofs -C -M | xorrecord -waiti -multi -
465              for sequential media.
466              --grow_overwriteable_iso  does  not  hamper  the  use  of   true
467              multi-session  media.   I.e.  it  is  possible  to  use the same
468              xorrecord options with  both  kinds  of  media  and  to  achieve
469              similar results if ISO 9660 filesystem images are to be written.
470              This option implies option -isosize and therefore  demands  that
471              the track source is a ISO 9660 filesystem image.
472              With overwriteable media and no option blank=fast|all present it
473              expands an eventual ISO 9660 filesystem on media. It is  assumed
474              that  this  image's  inner size description points to the end of
475              the valuable data.  Overwriteable media with a recognizable  ISO
476              9660  size  will be regarded as appendable rather than as blank.
477              I.e. options -msinfo and -toc will work.  -toc will always  show
478              a  single  session with its size increasing with every added ISO
479              9660 image.
480
481       --multi_if_possible
482              Apply option -multi if the medium is suitable. Not suitable  are
483              DVD-R   DL   and   DVD-RW,   which   were   blanked   with  mode
484              "deformat_quickest".
485              Not all drives  correctly  recognize  such  fast-blanked  DVD-RW
486              which need "on".  If there is well founded suspicion that a burn
487              run failed due to -multi, then  this  causes  a  re-try  without
488              -multi.
489
490       stream_recording="on"|"off"|number
491              Mode  "on" requests that compliance to the desired speed setting
492              is preferred over management of write errors. With  DVD-RAM  and
493              BD  this  can  bring  effective  write speed near to the nominal
494              write speed  of  the  media.   But  it  will  also  disable  the
495              automatic  use  of  replacement blocks if write errors occur. It
496              might as well be disliked or ignored by the drive.
497              If a number is given, then error management  stays  enabled  for
498              all  byte  addresses  below that number. Any number below 16s is
499              the same as "off".
500
501       dvd_obs="default"|"32k"|"64k"
502              Linux specific: Set the number of bytes to be  transmitted  with
503              each write operation to DVD or BD media. Tracks get padded up to
504              the next multiple of this write size. A  number  of  64  KB  may
505              improve throughput with bus systems which show latency problems.
506              The default depends on media type, option stream_recording=, and
507              on compile time options.
508
509       modesty_on_drive=parameter[:parameters]
510              Control  whether  the  drive  buffer  shall be kept from getting
511              completely filled.  Parameter "on" (or "1")  keeps  the  program
512              from  trying to write to the burner drive while its buffer is in
513              danger to be filled over a given  limit.   If  this  filling  is
514              exceeded  then the program will wait until the filling reaches a
515              given low percentage value.
516              This can ease the load on operating system and drive  controller
517              and  thus help with achieving better input bandwidth if disk and
518              burner are not on independent controllers (like hda and hdb). It
519              may  also help with simultaneous burns on different burners with
520              Linux kernels like 3.16, if  one  has  reason  not  to  fix  the
521              problem  by  drive_scsi_dev_family="sg".  On  the  other hand it
522              increases the risk of buffer underflow and  thus  reduced  write
523              speed.
524              Some  burners  are  not suitable because they report buffer fill
525              with granularity too coarse in size or  time,  or  expect  their
526              buffer to be filled to the top before they go to full speed.
527              Parameters "off" or "0" disable this feature.
528              The  threshold  for  beginning  to  wait  is  given by parameter
529              "max_percent=".  Parameter "min_percent=" defines the  threshold
530              for  resuming  transmission.  Percentages are permissible in the
531              range of 25 to 100. Numbers in this range  without  a  prepended
532              name are interpreted as "on:min_percent=".
533              E.g.: modesty_on_drive=75
534              The optimal values depend on the buffer behavior of the drive.
535              Parameter   "timeout_sec="   defines   after   which   time   of
536              unsuccessful waiting the modesty shall be  disabled  because  it
537              does not work.
538              Parameter  "min_usec="  defines  the  initial sleeping period in
539              microseconds.  If the drive buffer appears to be  too  full  for
540              sending  more  data,  the  program  will wait the given time and
541              inquire the buffer fill state again.  If repeated inquiry  shows
542              not  enough  free space, the sleep time will slowly be increased
543              to what parameter "max_usec=" defines.
544              Parameters, which are not  mentioned  with  a  modesty_on_drive=
545              option, stay unchanged.  Default is:
546                modesty_on_drive=off:min_percent=90:max_percent=95:
547                timeout_sec=120:min_usec=5000:max_usec=25000
548
549       use_immed_bit="on"|"off"|"default"
550              Control  whether  several  long  lasting  SCSI commands shall be
551              executed with the Immed bit, which makes the commands end  early
552              while  the  drive  operation  is  still  going  on. xorriso then
553              inquires progress indication until the drive reports to be ready
554              again.  If  this  feature  is  turned  off,  then  blanking  and
555              formatting will show no progress indication.
556              It may depend on the operating system whether -use_immed_bit  is
557              set to "off" by default.
558
559       write_start_address=value
560              Set  the  block  address  on  overwritable  media where to start
561              writing the track.  With DVD+RW, DVD-RAM or  BD-RE,  byte_offset
562              must be aligned to 2 kiB blocks, but better is 32 kiB on DVD and
563              64 kiB on  BD.   With  formatted  DVD-RW  32  kiB  alignment  is
564              mandatory.
565              Other media are not suitable for this option.
566
567       stdio_sync="on"|"off"|number
568              Set  the number of bytes after which to force output to emulated
569              stdio: drives.  This forcing keeps the memory from being clogged
570              with  lots of pending data for slow devices. Default "on" is the
571              same as "16m".  Forced output can be disabled by "off".
572

EXAMPLES

574   Overview of examples:
575       Get an overview of drives and their addresses
576       Get info about a particular drive or loaded media
577       Prepare CD-RW or DVD-RW for re-use, BD-R for bad block handling
578       Format DVD-RW to avoid need for blanking before re-use
579       De-format DVD-RW to make it capable of multi-session again
580       Write a single ISO 9660 filesystem image
581       Write multiple ISO 9660 sessions
582       Write ISO 9660 session on-the-fly
583       Write compressed afio archive on-the-fly
584
585   Get an overview of drives and their addresses:
586         $ xorrecord --devices
587
588   Get info about a particular drive and loaded media:
589         $ xorrecord dev=/dev/sr0 -atip -toc --grow_overwriteable_iso
590
591   Prepare CD-RW or DVD-RW for re-use:
592         $ xorrecord -v dev=/dev/sr0 blank=as_needed -eject
593
594   Format DVD-RW to avoid need for blanking before re-use:
595         $ xorrecord -v dev=/dev/sr0 blank=format_overwrite -eject
596       This command may also be used to format BD-R media before first use, in
597       order  to  enable handling of write errors. Several hundred MB of spare
598       blocks will be reserved and write runs on such media will perform  with
599       less than half nominal speed.
600
601   De-format DVD-RW to make it capable of multi-session again:
602         $ xorrecord -v dev=/dev/sr0 blank=deformat
603
604   Write a single ISO 9660 filesystem image:
605         $ xorrecord -v dev=/dev/sr0 speed=12 fs=8m \
606                     blank=as_needed -eject padsize=300k my_image.iso
607
608   Write multiple ISO 9660 sessions:
609       This  is  possible  with  all media except minimally blanked DVD-RW and
610       DVD-R DL, which cannot do multi-session.
611       The first session is written like in the previous example, except  that
612       option -multi is used. It will contain the files of hard disk directory
613       ./tree1 under the ISO 9660 directory /dir1:
614         $ xorrisofs -o image_1.iso -J -graft-points /dir1=./tree1
615         $ xorrecord -v dev=/dev/sr0 speed=12 fs=8m \
616                     -multi --grow_overwriteable_iso \
617                     blank=as_needed -eject padsize=300k image_1.iso
618       For the second session xorrisofs needs to know the -msinfo  numbers  of
619       the  medium.  Further  it  will  read data from the medium by using the
620       system's read-only CD-ROM driver.
621       It is advised to load the tray manually or via dd by the CD-ROM driver,
622       rather  than  letting  xorrecord  do  this by its own SCSI driver. Many
623       system CD-ROM drivers do not take notice of xorrecord's activities.
624         $ dd if=/dev/sr0 count=1 >/dev/null 2>&1
625       Now get the -msinfo numbers:
626         $ m=$(xorrecord dev=/dev/sr0 -msinfo)
627       and use them with xorrisofs to add ./tree2 to the image as /dir2:
628         $ xorrisofs -M /dev/sr0 -C $m -o image_2.iso \
629                     -J -graft-points /dir2=./tree2
630       Now burn the new session  onto  the  same  medium.  This  time  without
631       blanking:
632         $ xorrecord -v dev=/dev/sr0 speed=12 fs=8m \
633                     -multi --grow_overwriteable_iso \
634                     -eject padsize=300k image_2.iso
635       Operating  systems  which mount this medium will read the superblock of
636       the second session and show both directories /dir1 and /dir2.
637
638   Write ISO 9660 session on-the-fly:
639       It is possible to combine the run  of  xorrisofs  and  xorrecord  in  a
640       pipeline without storing the ISO 9660 image as file on hard disk:
641         $ xorrisofs -M /dev/sr0 -C $m  \
642                     -J -graft-points /dir2=./tree2 \
643           | xorrecord -v dev=/dev/sr0 speed=12 fs=8m \
644                       -waiti -multi --grow_overwriteable_iso \
645                       -eject padsize=300k -
646       This  is  also  the main use case of program xorriso itself, where this
647       run would look like:
648         $ xorriso -dev /dev/sr0 -joliet on -speed 12 -fs 8m \
649                   -map ./tree2 /dir2 -commit_eject all
650
651   Write compressed afio archive on-the-fly:
652       This is possible with all media except  minimally  blanked  DVD-RW  and
653       DVD-R  DL.   Since  the  compressed  output  stream is of very variable
654       speed, a larger fifo is advised.  Nevertheless,  this  example  is  not
655       suitable  for  very old CD drives which have no underrun protection and
656       thus would abort the burn run on temporary data shortage.
657         $ find . | afio -oZ - | \
658           xorrecord -v dev=/dev/sr0 speed=12 fs=64m \
659                     -multi padsize=300k -
660       afio  archives  do  not  contain  references  to  absolute  data  block
661       addresses.  So  they need no special precautions for multi-session. One
662       may get the session start addresses by option -toc,  and  then  use  dd
663       option  skip=  to  begin  reading  at  one of those addresses. E.g. for
664       listing its content:
665         $ dd if=/dev/sr0 bs=2048 skip=64046 | afio -tvZ -
666       afio will know when the end of the archive is reached.
667

FILES

669   Startup files:
670       If not --no_rc is given as the first argument then  xorrecord  attempts
671       on startup to read and execute lines from the following files:
672          /etc/default/xorriso
673          /etc/opt/xorriso/rc
674          /etc/xorriso/xorriso.conf
675          $HOME/.xorrisorc
676       The  files  are  read  in  the sequence given here, but none of them is
677       required to exist. The lines are not interpreted as  xorrecord  options
678       but as generic xorriso commands. See man xorriso.
679

SEE ALSO

681       For generic xorriso command mode
682              xorriso(1)
683
684       Formatting track sources for xorrecord:
685              xorrisofs(1), mkisofs(8), genisoimage(8), afio(1), star(1)
686
687       Other programs which burn sessions to optical media
688              growisofs(1), cdrecord(1), wodim(1), cdrskin(1)
689

BUGS

691       To  report  bugs,  request  help,  or suggest enhancements for xorriso,
692       please send electronic mail to the public  list  <bug-xorriso@gnu.org>.
693       If more privacy is desired, mail to <scdbackup@gmx.net>.
694       Please describe what you expect xorriso to do, the program arguments or
695       dialog commands by which you tried  to  achieve  it,  the  messages  of
696       xorriso, and the undesirable outcome of your program run.
697       Expect to get asked more questions before solutions can be proposed.
698

AUTHOR

700       Thomas Schmitt <scdbackup@gmx.net>
701       for libburnia-project.org
702
704       Copyright (c) 2011 - 2018 Thomas Schmitt
705       Permission  is granted to distribute this text freely. It shall only be
706       modified in sync with the technical properties of xorriso. If you  make
707       use  of the license to derive modified versions of xorriso then you are
708       entitled to modify this text under that same license.
709

CREDITS

711       xorriso is in part  based  on  work  by  Vreixo  Formoso  who  provides
712       libisofs  together  with Mario Danic who also leads the libburnia team.
713       Thanks to Andy Polyakov who invented emulated growing, to Derek Foreman
714       and Ben Jansens who once founded libburn.
715       Compliments  towards  Joerg  Schilling whose cdrtools served me for ten
716       years.
717
718
719
720                          Version 1.5.0, Sep 15, 2018             XORRECORD(1)
Impressum