Blob Blame History Raw
CDRECORD(1)           Schily's USER COMMANDS          CDRECORD(1)



NNAAMMEE
       cdrecord  - record audio or data Compact Discs from a mas-
       ter

SSYYNNOOPPSSIISS
       ccddrreeccoorrdd [ _g_e_n_e_r_a_l _o_p_t_i_o_n_s ] ddeevv==_d_e_v_i_c_e [ _t_r_a_c_k _o_p_t_i_o_n_s  ]
       _t_r_a_c_k_1..._t_r_a_c_k_n


DDEESSCCRRIIPPTTIIOONN
       CCddrreeccoorrdd  is used to record data or audio Compact Discs on
       an Orange Book CD-Recorder.

       The  _d_e_v_i_c_e  refers  to  _s_c_s_i_b_u_s/_t_a_r_g_e_t/_l_u_n  of  the   CD-
       Recorder.  Communication  on  _S_u_n_O_S  is done with the SCSI
       general driver ssccgg..  Other operating systems are  using  a
       library  simulation  of  this driver.  Possible syntax is:
       ddeevv== _s_c_s_i_b_u_s,_t_a_r_g_e_t,_l_u_n or ddeevv== _t_a_r_g_e_t,_l_u_n.  In the latter
       case,  the  CD-Recorder has to be connected to the default
       SCSI bus of the machine.   _S_c_s_i_b_u_s,  _t_a_r_g_e_t  and  _l_u_n  are
       integer numbers.  Some operating systems or SCSI transport
       implementations may require to specify a filename in addi-
       tion.   In this case the correct syntax for the device is:
       ddeevv== _d_e_v_i_c_e_n_a_m_e:_s_c_s_i_b_u_s,_t_a_r_g_e_t,_l_u_n or ddeevv== _d_e_v_i_c_e_n_a_m_e:_t_a_r_-
       _g_e_t,_l_u_n.   If  the  name  of the device node that has been
       specified on such a system  refers  to  exactly  one  SCSI
       device,  a shorthand in the form ddeevv== _d_e_v_i_c_e_n_a_m_e:_@ or ddeevv==
       _d_e_v_i_c_e_n_a_m_e:_@,_l_u_n may  be  used  instead  of  ddeevv==  _d_e_v_i_c_e_-
       _n_a_m_e:_s_c_s_i_b_u_s,_t_a_r_g_e_t,_l_u_n.


       To  access  remote  SCSI  devices, you need to prepend the
       SCSI device name by a remote device indicator. The  remote
       device   indicator   is   either   RREEMMOOTTEE::_u_s_e_r_@_h_o_s_t_:  or
       RREEMMOOTTEE::_h_o_s_t_:
       A valid remote SCSI device name may be:  RREEMMOOTTEE::_u_s_e_r_@_h_o_s_t_:
       to     allow     remote     SCSI     bus    scanning    or
       RREEMMOOTTEE::_u_s_e_r_@_h_o_s_t_:_1_,_0_,_0 to access the SCSI device  at  _h_o_s_t
       connected to SCSI bus # 1,target 0 lun 0.


       To access SCSI devices via alternate transport layers, you
       need to prepend the SCSI device name by a transport  layer
       indicator.  The transport layer indicator may be something
       like UUSSCCSSII:: or AATTAAPPII::.  To get a list of supported  trans-
       port layers for your platform, use ddeevv== _H_E_L_P:



       To  make ccddrreeccoorrdd portable to all UNIX platforms, the syn-
       tax ddeevv== _d_e_v_i_c_e_n_a_m_e:_s_c_s_i_b_u_s,_t_a_r_g_e_t,_l_u_n is preferred as  is
       hides  OS  specific  knowledge about device names from the
       user.  A specific OS must not necessarily support a way to
       specify a real device file name nor a way to specify _s_c_s_i_-
       _b_u_s,_t_a_r_g_e_t,_l_u_n.


       _S_c_s_i_b_u_s 0 is the default SCSI bus on  the  machine.  Watch
       the  boot  messages  for  more  information  or  look into
       //vvaarr//aaddmm//mmeessssaaggeess for more information about the SCSI con-
       figuration  of your machine.  If you have problems to fig-
       ure out what values for _s_c_s_i_b_u_s,_t_a_r_g_e_t,_l_u_n should be used,
       try the --ssccaannbbuuss option of ccddrreeccoorrdd described below.


       If  a  file /etc/default/cdrecord exists, the parameter to
       the ddeevv== option may also be a drive  name  label  in  said
       file (see FILES section).


       On SSVVrr44 compliant systems, ccddrreeccoorrdd uses the the real time
       class to get the highest scheduling priority that is  pos-
       sible (higher than all kernel processes).  On systems with
       PPOOSSIIXX  rreeaall  ttiimmee  sscchheedduulliinngg  cdrecord  uses  real   time
       scheduling  too,  but  may  not be able to gain a priority
       that is higher than all kernel processes.

       In _T_r_a_c_k _A_t _O_n_c_e mode, each _t_r_a_c_k corresponds to a  single
       file  that  contains the prepared data for that track.  If
       the argument is `--',  standard  input  is  used  for  that
       track.  Only one track may be taken from _s_t_d_i_n.


GGEENNEERRAALL OOPPTTIIOONNSS
       General  options  must  be  before  any track file name or
       track option.

       --vveerrssiioonn
              Print version information and exit.

       --vv     Increment the level of general  verbosity  by  one.
              This  is  used  e.g. to display the progress of the
              writing process.

       --VV     Increment the verbose level in respect of SCSI com-
              mand  transport  by one.  This helps to debug prob-
              lems during the writing process, that occur in  the
              CD-Recorder.   If  you  get  incomprehensible error
              messages you should  use  this  flag  to  get  more
              detailed output.  --VVVV will show data buffer content
              in addition.  Using --VV or --VVVV slows down  the  pro-
              cess and may be the reason for a buffer underrun.

       ddeebbuugg==_#_, --dd
              Set  the  misc  debug  value to # (with debug=#) or
              increment the misc debug level by one (with -d). If
              you  specify _-_d_d_, this equals to ddeebbuugg==_2_.  This may
              help to find problems while opening  a  driver  for
              libscg  as  well  as  with  sector sizes and sector
              types.  Using --ddeebbuugg slows down the process and may
              be the reason for a buffer underrun.

       kkddeebbuugg==#, kkdd==#
              Tell  the  ssccgg-driver  to  modify  the kernel debug
              value while SCSI commands are running.

       --ssiilleenntt, --ss
              Do not print out a status report  for  failed  SCSI
              commands.

       --ffoorrccee Force  to  continue on some errors. Be careful when
              using this  option.   CCddrreeccoorrdd  implements  several
              checks  that prevent you from doing unwanted things
              like damaging CD-RW media by improper drives.  Many
              of  the  sanity checks are disabled when the --ffoorrccee
              option is used.

              This option also implements some tricks  that  will
              allow you to blank bad CD-RW disks.

       --iimmmmeedd Tell cdrecord to set the SSCCSSII IIMMMMEEDD flag in certain
              commands   (load/eject/blank/close_track/close_ses-
              sion).   This  can be useful on broken systems with
              ATAPI harddisk and CD/DVD writer on the same bus or
              with  SCSI systems that don't use disconnect/recon-
              nect.  These systems will freeze while blanking  or
              fixating  a CD/DVD or while a DVD writer is filling
              up a session to the  minimum  amount  (approx.  800
              MB).  Setting the --iimmmmeedd flag will request the com-
              mand to return immediately while the operation pro-
              ceeds  in background, making the bus usable for the
              other devices and avoiding the system freeze.  This
              is  an  experimental feature which may work or not,
              depending on the model of  the  CD/DVD  writer.   A
              correct  solution  would  be  to  set  up a correct
              cabling but there seem to be notebooks around  that
              have been set up the wrong way by the manufacturer.
              As it is impossible to fix this  problem  in  note-
              books, the --iimmmmeedd option has been added.

              A second experimental feature of the --iimmmmeedd flag is
              to tell cdrecord to try to wait  short  times  wile
              writing  to the media. This is expected to free the
              IDE bus if the CD/DVD writer and  the  data  source
              are  connected to the same IDE cable. In this case,
              the CD/DVD writer would otherwise usually block the
              IDE  bus for nearly all the time making it impossi-
              ble to fetch data from the source drive.  See  also
              mmiinnbbuuff== and --vv option.

              Use  both  features  at your own risk.  It it turns
              out that it would make sense  to  have  a  separate
              option  for  the  the  wait  feature,  write to the
              author and convince him.

       mmiinnbbuuff==_v_a_l_u_e
              The # mmiinnbbuuff== options allows to define the  minimum
              drive  buffer fill ratio for the experimental ATAPI
              wait mode that is intended to free the IDE  bus  to
              allow hard disk and CD/DVD writer to be on the same
              IDE cable.  As the wait mode currently  only  works
              when  the  verbose  option  --vv  has been specified,
              ccddrreeccoorrdd implies the verbose  option  in  case  the
              --iimmmmeedd  or  mmiinnbbuuff==  option  have  been  specified.
              Valid values for mmiinnbbuuff== are between 25 and 95  for
              25%...95% minimum drive buffer fill ratio.

       --dduummmmyy The  CD-Recorder  will  go through all steps of the
              recording process, but the laser is turned off dur-
              ing  this procedure.  It is recommended to run sev-
              eral tests before actually  writing  to  a  Compact
              Disk  or  Digital Versatile Disk, if the timing and
              load response of the system is not known.

       --ddaaoo   Set SSAAOO ((SSeessssiioonn AAtt OOnnccee))  mode  which  is  usually
              called  DDiisskk  AAtt  OOnnccee  mode.   This currently only
              works with MMC drives that support SSeessssiioonn AAtt  OOnnccee
              mode.

       --rraaww   Set  RRAAWW  wwrriittiinngg mmooddee..  Using this option defaults
              to --rraaww9966rr.

       --rraaww9966rr
              Select Set RRAAWW wwrriittiinngg mmooddee with 2352 byte  sectors
              plus  96 bytes of raw P-W subchannel data resulting
              in a sector size of 2448 bytes.  This is  the  pre-
              ferred  raw  writing  mode as it gives best control
              over the CD writing process.  If you find any prob-
              lems  with the layout of a disk or with sub channel
              content (e.g. wrong times on the display when play-
              ing  the  CD)  and  your drive supports to write in
              --rraaww9966rr or --rraaww1166 mode, you should give it  a  try.
              There are several CD writers with bad firmware that
              result in broken disks when writing in TAO  or  SAO
              mode.  Writing data disks in raw mode needs signif-
              icantly more CPU time than other  write  modes.  If
              your  CPU  is  too  slow, this may result in buffer
              underruns.

       --rraaww9966pp
              Select Set RRAAWW wwrriittiinngg mmooddee with 2352 byte  sectors
              plus 96 bytes of packed P-W subchannel data result-
              ing in a sector size of 2448 bytes.   This  is  the
              less  preferred  raw  writing  mode  as  only a few
              recorders support it and some  of  these  recorders
              have  bugs  in  the firmware implementation.  Don't
              use this mode if your recorder supports --rraaww9966rr  or
              --rraaww1166.   Writing data disks in raw mode needs sig-
              nificantly more CPU time than other write modes. If
              your  CPU  is  too  slow, this may result in buffer
              underruns.

       --rraaww1166 Select Set RRAAWW wwrriittiinngg mmooddee with 2352 byte  sectors
              plus  6 bytes of P-Q subchannel data resulting in a
              sector size of 2368 bytes.  If a recorder does  not
              support  --rraaww9966rr, this is the preferred raw writing
              mode.  It  does  not  allow  to  write  _C_D_-_T_e_x_t  or
              _C_D_+_G_r_a_p_h_i_c_s  but it is the only raw writing mode in
              cheap CD writers.  As these cheap writers  in  most
              cases  do  not  support  --ddaaoo mode.  Don't use this
              mode if your recorder  supports  --rraaww9966rr.   Writing
              data disks in raw mode needs significantly more CPU
              time than other write modes. If  your  CPU  is  too
              slow, this may result in buffer underruns.

       --mmuullttii Allow  multi  session  CD's  to  be made. This flag
              needs to be present on all sessions of a multi ses-
              sion disk, except you want to create a session that
              will be the last session on the media.   The  fixa-
              tion  will  be  done  in  a way that allows the CD-
              Recorder to append additional sessions later.  This
              is done by generation a TOC with a link to the next
              program area. The so generated media  is  not  100%
              compatible   to   manufactured   CD's  (except  for
              CDplus).  Use only for recording of  multi  session
              CD's.  If this option is present, the default track
              type is CCDD--RROOMM XXAA mmooddee 22.  The _S_o_n_y drives have  no
              hardware support for CCDD--RROOMM XXAA mmooddee 22.  You have to
              specify the --ddaattaa option in order to  create  multi
              session disks on these drives.  As long as cdrecord
              does not have a coder for converting  data  sectors
              to  audio sectors, you need to force CCDD--RROOMM sectors
              by including the --ddaattaa option if you like to record
              a  multisession  disk  in SAO mode.  Not all drives
              allow multisession CD's in SAO mode.

       --mmssiinnffoo
              Retrieve multi session info in a form suitable  for
              mmkkiissooffss--11..1100 or later.

              This  option  makes  only sense with a CD that con-
              tains at least one closed session and is appendable
              (not finally closed yet).  Some drives create error
              messages if you try to get the multi  session  info
              for a disk that is not suitable for this operation.

       --ttoocc   Retrieve and print out the table of content or  PMA
              of a CD.  With this option, ccddrreeccoorrdd will work with
              CD-R drives and with CD-ROM drives.

       --aattiipp  Retrieve and print out the ATIP (absolute  Time  in
              Pregroove)  info  of  a CD/DVD recordable or CD/DVD
              rewritable media.  With this option, ccddrreeccoorrdd  will
              try  to retrieve the ATIP info. If the actual drive
              does not support to read the ATIP info, it  may  be
              that  only  a reduced set of information records or
              even nothing is displayed. Only a limited number of
              MMC compliant drives support to read the ATIP info.

              If ccddrreeccoorrdd is able to retrieve the  lead-in  start
              time  for  the first session, it will try to decode
              and print the manufacturer  info  from  the  media.
              DVD  media  dos not have atip information but there
              is equivalent prerecorded information that is  read
              out and printed.

       --ffiixx   The disk will only be fixated (i.e. a TOC for a CD-
              Reader will be written).  This may be used, if  for
              some  reason the disk has been written but not fix-
              ated. This option currently does not work with  old
              TEAC drives (CD-R50S and CD-R55S).

       --nnooffiixx Do  not  fixate  the disk after writing the tracks.
              This may be used to create an audio disk in  steps.
              An un-fixated disk can usually not be used on a non
              CD-writer type drive but there are audio CD players
              that will be able to play such a disk.

       --wwaaiittii Wait  for  input  to  become  available on standard
              input before trying to open the SCSI  driver.  This
              allows ccddrreeccoorrdd to read it's input from a pipe even
              when writing additional sessions to a multi session
              disk.  When writing another session to a multi ses-
              sion disk, mmkkiissooffss needs to read  the  old  session
              from the device before writing output.  This cannot
              be done if ccddrreeccoorrdd opens the SCSI  driver  at  the
              same time.

       --llooaadd  Load  the  media  and  exit. This only works with a
              tray loading mechanism but seems to be useful  when
              using the Kodak disk transporter.

       --eejjeecctt Eject  disk  after  doing  the  work.  Some Devices
              (e.g. Philips) need to eject the medium before cre-
              ating  a  new disk. Doing a -dummy test and immedi-
              ately creating a real disk would not work on  these
              devices.

       ssppeeeedd==#
              Set  the  speed factor of the writing process to #.
              # is an integer, representing  a  multiple  of  the
              audio speed.  This is about 150 KB/s for CD-ROM and
              about 172 KB/s for CD-Audio.  If no _s_p_e_e_d option is
              present,  ccddrreeccoorrdd  will try to get the speed value
              from the CCDDRR__SSPPEEEEDD environment.  If your drive  has
              problems  with  _s_p_e_e_d_=_2  or _s_p_e_e_d_=_4, you should try
              _s_p_e_e_d_=_0.

       bbllaannkk==_t_y_p_e
              Blank a CD-RW and exit  or  blank  a  CD-RW  before
              writing. The blanking type may be one of:

              help        Display  a  list  of  possible blanking
                          types.

              all         Blank the entire disk. This may take  a
                          long time.

              fast        Minimally  blank the disk. This results
                          in erasing the PMA,  the  TOC  and  the
                          pregap.

              track       Blank a track.

              unreserve   Unreserve a reserved track.

              trtail      Blank the tail of a track.

              unclose     Unclose last session.

              session     Blank the last session.
       Not  all drives support all blanking types. It may be nec-
       essary to use bbllaannkk==aallll if a  drive  reports  a  specified
       command  as  being  invalid.   If  used  together with the
       --ffoorrccee flag, this option may be used to blank CD-RW  disks
       that  otherwise  cannot be blanked. Note that you may need
       to specify bbllaannkk==_a_l_l because some drives will not continue
       with  certain  types  of  bad  CD-RW disks. Note also that
       ccddeeccoorrdd does it's best if the --ffoorrccee flag is used  but  it
       finally depends on the drive's firmware whether the blank-
       ing operation will succeed or not.

       ffss==#   Set the fifo (ring buffer) size to #.  You may  use
              the  same  method  as  in dddd(1), ssdddd(1) or ssttaarr(1).
              The number representing the size is taken in  bytes
              unless  otherwise  specified.   If a number is fol-
              lowed directly by the letter `b', `k', `m', `s'  of
              `f',   the   size   is  multiplied  by  512,  1024,
              1024*1024, 2048 or 2352.  If the size  consists  of
              numbers  separated by `x' or `*', multiplication of
              the two numbers is performed.  Thus _f_s_=_1_0_x_6_3_k  will
              specify a fifo size of 630 kBytes.

              The size specified by the _f_s_= argument includes the
              shared memory that is  needed  for  administration.
              This  is  at  least  one page of memory.  If no _f_s=
              option is present, ccddrreeccoorrdd will  try  to  get  the
              fifo  size value from the CCDDRR__FFIIFFOOSSIIZZEE environment.
              The default fifo size is currently 4 MB.

              The fifo is used to increase buffering for the real
              time writing process.  It allows to run a pipe from
              mmkkiissooffss directly into ccddrreeccoorrdd.   If  the  fifo  is
              active  and  a  pipe  from mmkkiissooffss into ccddrreeccoorrdd is
              used to create a CD, ccddrreeccoorrdd will abort  prior  to
              do  any  modifications  on the disk if mmkkiissooffss dies
              before it starts  writing.   The  recommended  fifo
              size  is  between  4  and  32 MBytes.  As a rule of
              thumb, the fifo size should be at  least  equal  to
              the  size of the internal buffer of the CD-Recorder
              and no more than half of the physical amount of RAM
              available  in the machine.  If the fifo size is big
              enough, the fifo statistics will print a fifo empty
              count  of  zero  and the fifo min fill is not below
              20%.  It is not wise to use too much space for  the
              fifo.  If  you need more than 8 MB to write a CD on
              an idle machine, your machine is  either  underpow-
              ered,  has  hardware problems or is mis-configured.
              The sun4c architecture (e.g. a Sparcstation-2)  has
              only  MMU page table entries for 16 MBytes per pro-
              cess. Using more than 14 MBytes for  the  fifo  may
              cause  the  operating  system in this case to spend
              much time to  constantly  reload  the  MMU  tables.
              Newer  machines from Sun do not have this MMU hard-
              ware problem. I have no information on  PC-hardware
              reflecting this problem.

              If  you  have  buffer underruns or similar problems
              and observe a zero _f_i_f_o _e_m_p_t_y _c_o_u_n_t, you have hard-
              ware problems. The fifo size in this case is suffi-
              cient.

       ddeevv==_t_a_r_g_e_t
              Sets the SCSI target for the CD-Recorder, see notes
              above.  A typical device specification is ddeevv==_6_,_0 .
              If a filename must be provided  together  with  the
              numerical  target  specification,  the  filename is
              implementation specific.  The correct  filename  in
              this case can be found in the system specific manu-
              als of the target operating system.  On  a  _F_r_e_e_B_S_D
              system  without  _C_A_M  support,  you need to use the
              control device (e.g.   _/_d_e_v_/_r_c_d_0_._c_t_l).   A  correct
              device   specification   in   this   case   may  be
              ddeevv==_/_d_e_v_/_r_c_d_0_._c_t_l_:_@ .

              On Linux,  drives  connected  to  a  parallel  port
              adapter are mapped to a virtual SCSI bus. Different
              adapters are mapped to different  targets  on  this
              virtual SCSI bus.

              If  no  _d_e_v option is present, ccddrreeccoorrdd will try to
              get the device from the CCDDRR__DDEEVVIICCEE environment.

              If the argument to the ddeevv== option does not contain
              the  characters  ',', '/', '@' or ':', it is inter-
              preted as an label name that may be  found  in  the
              file /etc/default/cdrecord (see FILES section).

       ggrraacceettiimmee==_#
              Set  the  grace  time before starting to write to _#
              seconds.  Values below 2 seconds are not allowed.

       ttiimmeeoouutt==_#
              Set the default SCSI command  timeout  value  to  _#
              seconds.   The  default SCSI command timeout is the
              minimum timeout used for sending SCSI commands.  If
              a  SCSI command fails due to a timeout, you may try
              to raise the default SCSI command timeout above the
              timeout  value  of the failed command.  If the com-
              mand runs correctly with a raised command  timeout,
              please report the better timeout value and the cor-
              responding command to the author  of  the  program.
              If  no _t_i_m_e_o_u_t option is present, a default timeout
              of 40 seconds is used.

       ddrriivveerr==_n_a_m_e
              Allows to use a user supplied driver name  for  the
              device.   To  get  a  list  of possible drivers use
              ddrriivveerr==hheellpp.  The reason for the existence of  this
              option  is  to  allow  users  to  use ccddrreeccoorrdd with
              drives that are similar to supported drives but not
              known  directly  by ccddrreeccoorrdd.  Use this option with
              extreme care. If a  wrong  driver  is  used  for  a
              device, the possibility of creating corrupted disks
              is high.  The minimum problem related  to  a  wrong
              driver  is that the --ssppeeeedd or --dduummmmyy will not work.

              There are two special driver entries in  the  list:
              ccddrr__ssiimmuull  and ddvvdd__ssiimmuull.  These driver entries are
              designed to make timing tests at any speed or  tim-
              ing tests for drives that do not support the --dduummmmyy
              option.  The simulation drivers implement  a  drive
              with  a  buffer size of 1MB that can be changed via
              the CCDDRR__SSIIMMUULL__BBUUFFSSIIZZEE  environment  variable.   The
              simulation driver correctly simulates even a buffer
              underrun condition.  If the --dduummmmyy option  is  pre-
              sent,  the  simulation  is not aborted in case of a
              buffer underrun.

       ddrriivveerrooppttss==_o_p_t_i_o_n _l_i_s_t
              Set driver specific options. The options are speci-
              fied  a  comma  separated  list.   To get a list of
              valid options use ddrriivveerrooppttss==_h_e_l_p together with the
              _-_c_h_e_c_k_d_r_i_v_e  option.   Currently implemented driver
              options are:

              bbuurrnnffrreeee
                     Turn the support for  Buffer  Underrun  Free
                     writing on.  This only works for drives that
                     support  Buffer  Underrun  Free  technology.
                     This  may be called: SSaannyyoo BBUURRNN--PPrrooooff, RRiiccoohh
                     JJuusstt--LLiinnkk, YYaammaahhaa LLoosssslleessss--LLiinnkk or  similar.

                     The   default  is  to  turn  BBUURRNN--FFrreeee  off,
                     regardless of the defaults of the drive.

              nnoobbuurrnnffrreeee
                     Turn the support for  Buffer  Underrun  Free
                     writing off.

              vvaarriirreecc==_v_a_l_u_e
                     Turn  on  the  PPlleexxttoorr VVaarriiRReecc writing mode.
                     The mandatory parameter _v_a_l_u_e is  the  laser
                     power  offset  and currently may be selected
                     from -2, -1, 0, 1, 2.  In addition, you need
                     to  set  the  write  speed  to 4 in order to
                     allow VVaarriiRReecc to work.

              aauuddiioommaasstteerr
                     Turn on the YYaahhaammaa AAuuddiioo MMaasstteerr QQ.. RR..   fea-
                     ture  which  usually  should  result in high
                     quality CDs that have less reading  problems
                     in  HiFi players.  As this is implemented as
                     a variant of the Session at Once write mode,
                     it  will  only  work if you select SAO write
                     mode and there is no need to  turn  it  off.
                     The  AAuuddiioo MMaasstteerr mode will work with a lim-
                     ited speed but may also be  used  with  data
                     CDs.  in  AAuuddiioo MMaasstteerr mode, the pits on the
                     CD will be written larger then usual so  the
                     capacity of the medium is reduced when turn-
                     ing this feature on.  A 74  minute  CD  will
                     only  have a capacity of 63 minutes if AAuuddiioo
                     MMaasstteerr is active and the capacity  of  a  80
                     minute CD will be reduced to 68 minutes.

              ffoorrcceessppeeeedd
                     Normally,  modern  drives  know  the highest
                     possible speed for different media  and  may
                     reduce  the  speed  in  order  to grant best
                     write quality.  Some drives (e.g. Ricoh  and
                     Yamaha)  allow to force the drive to use the
                     selected speed even if the medium is so  bad
                     that  the  write quality would be poor. This
                     option tells such a drive to  force  to  use
                     the  selected speed regardless of the medium
                     quality.

                     Use this option with extreme care  and  note
                     that  the  drive  should  know  better which
                     medium will work at full speed.  The default
                     is to turn ffoorrcceessppeeeedd off, regardless of the
                     defaults of the drive.

              nnooffoorrcceessppeeeedd
                     Turn off the ffoorrccee ssppeeeedd feature.

              ttaattttooooiinnffoo
                     Use this option together with --cchheecckkddrriivvee to
                     retrieve  the image size information for the
                     YYaammaahhaa DDiisskkTT@@22 feature.  The  images  always
                     have a line length of 3744 pixel.  Line num-
                     ber 0 (radius 0) is mapped to the center  of
                     the  disk.   If you know the inner and outer
                     radius you will be able to create a pre dis-
                     torted  image  that  later may appear undis-
                     torted on the disk.

              ttaattttooooffiillee==_n_a_m_e
                     Use this option together with --cchheecckkddrriivvee to
                     write  an  image  prepared  for  the  YYaammaahhaa
                     DDiisskkTT@@22 feature to  the  medium.   The  file
                     must  be a file with raw image B&W data (one
                     byte per pixel) in a size as retrieved by  a
                     previous  call  to ttaattttooooffiillee==_n_a_m_e .  If the
                     size of the image equals the maximum  possi-
                     ble  size  (3744 x 320 pixel), ccddrreeccoorrdd will
                     use the first part of the file.  This  first
                     part  then  will  be written to the leftover
                     space on the CD.

                     Note that the image must be mirrored  to  be
                     readable from the pick up side of the CD.

       --cchheecckkddrriivvee
              Checks if a driver for the current drive is present
              and exit.  If the drive is a known drive,  ccddrreeccoorrdd
              uses exit code 0.

       --pprrccaapp Print the drive capabilities for SCSI-3/mmc compli-
              ant drives as obtained from mode page 0x2A.  Values
              marked  with _k_B use 1000 bytes as kilo-byte, values
              marked with _K_B use 1024 bytes as Kilo-byte.

       --iinnqq   Do an inquiry for the drive, print the inquiry info
              and exit.

       --ssccaannbbuuss
              Scan  all SCSI devices on all SCSI busses and print
              the inquiry strings. This option  may  be  used  to
              find  SCSI  address of the CD-Recorder on a system.
              The numbers printed out as labels are computed  by:
              bbuuss ** 110000 ++ ttaarrggeett

       --rreesseett Try  to reset the SCSI bus where the CD recorder is
              located. This works not on all operating systems.

       --oovveerrbbuurrnn
              Allow ccddrreeccoorrdd to write more than the official size
              of  a  medium. This feature is usually called _o_v_e_r_-
              _b_u_r_n_i_n_g and depends on the  fact  that  most  blank
              media  may  hold more space than the official size.
              As the official size of the lead-out  area  on  the
              disk  is  90 seconds (6750 sectors) and a disk usu-
              ally works if there are at  least  150  sectors  of
              lead  out,  all media may be overburned by at least
              88 seconds (6600 sectors).  Most CD recorders  only
              do overburning in SSAAOO or RRAAWW mode. Known exceptions
              are TEAC CD-R50S, TEAC CD-R55S  and  the  Panasonic
              CW-7502.   Some  drives do now allow to overburn as
              much as you might like and limit the size of  a  CD
              to  e.g.  76  minutes.  This problem may be circum-
              vented by writing the CD in RAW mode  because  this
              way the drive has no chance to find the size before
              starting to burn.  There is no guarantee that  your
              drive  supports overburning at all.  Make a test to
              check if your drive implements the feature.

       --iiggnnssiizzee
              Ignore the known size of the medium.  This  options
              should  be  used  with extreme care, it exists only
              for debugging purposes don't use it for other  rea-
              sons.   It  is  not needed to write disks with more
              than the nominal  capacity.   This  option  implies
              --oovveerrbbuurrnn.

       --uusseeiinnffoo
              Use  *.inf  files  to  overwrite audio options.  If
              this option is used, the pregap size information is
              read  from  the  *.inf file that is associated with
              the file that contains the audio data for a  track.

       ddeeffpprreeggaapp==#
              Set  the default pre-gap size for all tracks except
              track number 1.  This option currently  only  makes
              sense  with  the TEAC drive when creating track-at-
              once disks without the 2 second silence before each
              track.
              This option may go away in future.

       --ppaacckkeett
              Set  PPaacckkeett  wwrriittiinngg mmooddee..  This is an experimental
              interface.

       ppkkttssiizzee==#
              Set the packet size to #, forces fixed packet mode.
              This is an experimental interface.

       --nnoocclloossee
              Do not close the current track, useful only when in
              packet  writing  mode.   This  is  an  experimental
              interface.

       mmccnn==_m_e_d___c_a_t___n_r
              Set   the   MMeeddiiaa  CCaattaalloogg  NNuummbbeerr  of  the  CD  to
              _m_e_d___c_a_t___n_r.

       --tteexxtt  Write CD-Text created  by  ccddrreeccoorrdd  and  based  on
              information  taken  from a file that contains ascii
              information for the text  strings.  Currently  only
              the  format  in the **..iinnff files created by ccddddaa22wwaavv
              is supported. You need to use the  --uusseeiinnffoo  option
              in addition in order to tell ccddrreeccoorrdd to read these
              files. If you like to write your own CD-Text infor-
              mation, edit the **..iinnff files with a text editor and
              change the field that are relevant for CD-Text.

       tteexxttffiillee==filename
              Write CD-Text based on  information  found  in  the
              binary  file  _f_i_l_e_n_a_m_e.   This  file  must  contain
              information in a data format defined in the  SCSI-3
              MMC-2  standard  and in the Red Book. The four byte
              size header that is defined in the SCSI standard is
              optional and allows to make the recognition of cor-
              rect data less ambiguous.  This is the best  option
              to  be  used to copy CD-Text data from existing CDs
              that already carry CD-Text information. To get data
              in  a  format suitable for this option use ccddrreeccoorrdd
              --vvvv --ttoocc to extract the information from disk.


TTRRAACCKK OOPPTTIIOONNSS
       Track options may be mixed with track file names.

       iissrrcc==_I_S_R_C___n_u_m_b_e_r
              Set the IInntteerrnnaattiioonnaall SSttaannddaarrdd RReeccoorrddiinngg NNuummbbeerr for
              the next track to _I_S_R_C___n_u_m_b_e_r.

       iinnddeexx==_l_i_s_t
              Sets  an  index  list for the next track.  In index
              list is a comma separated list of numbers that  are
              counting from index 1. The first entry in this list
              must contain a 0, the following numbers must be  an
              ascending  list  of  numbers (counting in 1/75 sec-
              onds) that represent the start of the  indices.  An
              index  list  in the form: 0,7500,15000 sets index 1
              to the start of the track, index 2 100 seconds from
              the start of the track and index 3 200 seconds from
              the start of the track.

       --aauuddiioo If this flag is present, all subsequent tracks  are
              written  in  CCDD--DDAA (similar to Red Book) audio for-
              mat.  The file with data  for  this  tracks  should
              contain  stereo,  16-bit  digital  audio with 44100
              samples/s.  The byte order should be the following:
              MSB  left, LSB left, MSB right, LSB right, MSB left
              and so on. The track should be a multiple  of  2352
              bytes.  It  is not possible to put the master image
              of an audio track on a raw disk because  data  will
              be  read  in  multiple  of  2352  bytes  during the
              recording process.

              If a filename ends in _._a_u or _._w_a_v the file is  con-
              sidered   to  be  a  structured  audio  data  file.
              CCddrreeccoorrdd assumes that the file in this  case  is  a
              Sun  audio  file  or  a  Microsoft  .WAV  file  and
              extracts the audio data from the files by  skipping
              over  the  non-audio  header  information.   In all
              other cases, cdrecord will only work  correctly  if
              the  audio  data  stream  does not have any header.
              Because many structured audio files do not have  an
              integral   number  of  blocks  (1/75th  second)  in
              length, it is often necessary to specify  the  --ppaadd
              option  as  well.   ccddrreeccoorrdd  recognizes that audio
              data in a .WAV file is  stored  in  Intel  (little-
              endian)  byte  order,  and will automatically byte-
              swap the data if  the  CD  recorder  requires  big-
              endian  data.   CCddrreeccoorrdd will reject any audio file
              that does not match the Red  Book  requirements  of
              16-bit  stereo  samples in PCM coding at 44100 sam-
              ples/second.

              Using other structured audio data formats as  input
              to  ccddrreeccoorrdd  will usually work if the structure of
              the data is the structure described above (raw  pcm
              data  in  big-endian  byte order).  However, if the
              data format includes a  header,  you  will  hear  a
              click at the start of a track.

              If  neither  _-_d_a_t_a  nor _-_a_u_d_i_o have been specified,
              ccddrreeccoorrdd defaults to _-_a_u_d_i_o for all filenames  that
              end  in  _._a_u  or  _._w_a_v  and  to _-_d_a_t_a for all other
              files.

       --sswwaabb  If this flag is present, audio data is  assumed  to
              be  in  byte-swapped  (little-endian)  order.  Some
              types of CD-Writers e.g. Yamaha, Sony and  the  new
              SCSI-3/mmc  drives  require  audio  data to be pre-
              sented in little-endian order, while other  writers
              require  audio  data  to  be  presented in the big-
              endian (network) byte order normally  used  by  the
              SCSI  protocol.   CCddrreeccoorrdd  knows  if a CD-Recorder
              needs audio data in big-  or  little-endian  order,
              and  corrects  the byte order of the data stream to
              match the needs of the recorder.  You only need the
              _-_s_w_a_b flag if your data stream is in Intel (little-
              endian) byte order.

              Note that the verbose output of ccddrreeccoorrdd will  show
              you if swapping is necessary to make the byte order
              of the input data fit the required  byte  order  of
              the  recorder.   CCddrreeccoorrdd  will not show you if the
              _-_s_w_a_b flag was actually present for a track.

       --ddaattaa  If this flag is present, all subsequent tracks  are
              written  in CCDD--RROOMM mmooddee 11 (Yellow Book) format. The
              data is a multiple of 2048 bytes.   The  file  with
              track data should contain an IISSOO--99666600 or RRoocckk RRiiddggee
              filesystem image (see mmkkiissooffss for more details). If
              the track data is an uuffss filesystem image, fragment
              size should be set to 2 KB or  more  to  allow  CR-
              drives  with  2  KB  sector  size to to be used for
              reading.

              -data is the default, if no other flag is  present.

              If  neither  _-_d_a_t_a  nor _-_a_u_d_i_o have been specified,
              ccddrreeccoorrdd defaults to _-_a_u_d_i_o for all filenames  that
              end  in  _._a_u  or  _._w_a_v  and  to _-_d_a_t_a for all other
              files.

       --mmooddee22 If this flag is present, all subsequent tracks  are
              written in CCDD--RROOMM mmooddee 22 format. The data is a mul-
              tiple of 2048 bytes.

       --xxaa11   If this flag is present, all subsequent tracks  are
              written  in  CCDD--RROOMM XXAA mmooddee 11 format. The data is a
              multiple of 2048 bytes.

       --xxaa22   If this flag is present, all subsequent tracks  are
              written  in  CCDD--RROOMM XXAA mmooddee 22 format. The data is a
              multiple of 2048 bytes.

       --ccddii   If this flag is present, all subsequent tracks  are
              written  in  CCDDII  format. The data is a multiple of
              2048 bytes.

       --iissoossiizzee
              Use the IISSOO--99666600 file system size as  the  size  of
              the  next track.  This option is needed if you want
              ccddrreeccoorrdd to directly read the image of a track from
              a  raw  disk  partition or from a _T_A_O master CD. In
              the first case the option  --iissoossiizzee  is  needed  to
              limit  the  size  of  the CD to the size of the ISO
              filesystem.  In the second case the option --iissoossiizzee
              is  needed to prevent ccddrreeccoorrdd from reading the two
              run out  blocks  that  are  appended  by  each  CD-
              recorder  in  track at once mode. These two run out
              blocks cannot be read  and  would  cause  a  buffer
              under  run  that  would cause a defective copy.  Do
              not use this option on files created by mmkkiissooffss and
              in  case  ccddrreeccoorrdd reads the track data from _s_t_d_i_n.
              In the first case, you would prevent ccddrreeccoorrdd  from
              writing   the  amount  of  padding  that  has  been
              appended by mmkkiissooffss and in the latter case, it will
              not work because _s_t_d_i_n is not seekable.

              If  --iissoossiizzee  is  used  for  a track, ccddrreeccoorrdd will
              automatically add padding for this track as if  the
              --ppaadd option has been used but the amount of padding
              may be less than the padding  written  by  mmkkiissooffss.
              Note  that if you use --iissoossiizzee on a track that con-
              tains Sparc boot information, the boot  information
              will be lost.

              Note also that this option cannot be used to deter-
              mine the size of a file system if the multi session
              option is present.

       --ppaadd   If  the track is a data track, 15 sectors of zeroed
              data will be added to the end of this and each sub-
              sequent  data track.  In this case, the --ppaadd option
              is superseded  by  the  ppaaddssiizzee==  option.  It  will
              remain  however as a shorthand for ppaaddssiizzee==_1_5_s_.  If
              the _-_p_a_d option refers to an audio track,  ccddrreeccoorrdd
              will  pad  the  audio data to be a multiple of 2352
              bytes.  The audio data padding is done with  binary
              zeroes which is equal to absolute silence.

              --ppaadd remains valid until disabled by --nnooppaadd.

       ppaaddssiizzee==#
              Set the amount of data to be appended as padding to
              the next track to #.  Opposed to  the  behavior  of
              the --ppaadd option, the value for _p_a_d_s_i_z_e_= is reset to
              zero for each new track.  Cdrecord assumes a sector
              size  of  2048 bytes for the _p_a_d_s_i_z_e_= option, inde-
              pendent from the real sector size  and  independent
              from  the  write  mode.  The megabytes mentioned in
              the verbose mode output however  are  counting  the
              output  sector  size  which is e.g. 2448 bytes when
              writing in RAW/RAW96 mode.  See ffss= option for pos-
              sible  arguments.  To pad the equivalent of 20 min-
              utes on a CD, you may write ppaaddssiizzee==20x60x75s.  Use
              this  option  if  your CD-drive is not able to read
              the last sectors of a track or if you  want  to  be
              able  to  read  the  CD  on a LLiinnuuxx system with the
              ISO-9660 filesystem read ahead bug.   If  an  empty
              file  is  used  for  track data, this option may be
              used to create a disk  that  is  entirely  made  of
              padding.   This  may  e.g.  be used to find out how
              much overburning is possible with a specific media.

       --nnooppaadd Do not pad the following tracks - the default.

       --sshhoorrttttrraacckk
              Allow  all  subsequent  tracks  to violate the Read
              Book track length standard which requires a minimum
              track  length  of  4  seconds.  This option is only
              useful when used in  SAO  or  RAW  mode.   Not  all
              drives  support  this  feature.  The  drive must be
              accept the resulting CUE sheet or support RAW writ-
              ing.

       --nnoosshhoorrttttrraacckk
              Re-enforce  the  Red  Book  track  length standard.
              Tracks must be at least 4 seconds.

       pprreeggaapp==#
              Set the  pre-gap size for  the  next  track.   This
              option  currently  only  makes  sense with the TEAC
              drive when creating track-at-once disks without the
              2 second silence before each track.
              This option may go away in future.

       --pprreeeemmpp
              If this flag is present, all TOC entries for subse-
              quent audio tracks will  indicate  that  the  audio
              data  has been sampled with 50/15 µsec preemphasis.
              The data, however is not modified during  the  pro-
              cess  of  transferring  from  file  to  disk.  This
              option has no effect on data tracks.

       --nnoopprreeeemmpp
              If this flag is present, all TOC entries for subse-
              quent  audio  tracks  will  indicate that the audio
              data has been mastered with linear data -  this  is
              the default.

       --ccooppyy  If this flag is present, all TOC entries for subse-
              quent audio tracks of the resulting CD  will  indi-
              cate  that  the  audio  data  has  permission to be
              copied without limit.  This option has no effect on
              data tracks.

       --nnooccooppyy
              If this flag is present, all TOC entries for subse-
              quent audio tracks of the resulting CD  will  indi-
              cate  that  the  audio  data  has  permission to be
              copied only once for personal use  -  this  is  the
              default.

       --ssccmmss  If this flag is present, all TOC entries for subse-
              quent audio tracks of the resulting CD  will  indi-
              cate  that  the  audio data has no permission to be
              copied anymore.

       ttssiizzee==#
              If the master image for the  next  track  has  been
              stored  on  a  raw disk, use this option to specify
              the valid amount of data on this disk. If the image
              of  the next track is stored in a regular file, the
              size of that file is taken to determine the  length
              of  this  track.  If the track contains an ISO 9660
              filesystem image use the _-_i_s_o_s_i_z_e option to  deter-
              mine the length of that filesystem image.
              In  Disk at Once mode and with some drives that use
              the TEAC programming interface, even  in  Track  at
              Once  mode, ccddrreeccoorrdd needs to know the size of each
              track before starting to write the disk.   Cdrecord
              now  checks  this  and  aborts  before  starting to
              write.  If  this  happens  you  will  need  to  run
              mmkkiissooffss --pprriinntt--ssiizzee before and use the output (with
              `s' appended) as an argument to the  ttssiizzee=  option
              of ccddrreeccoorrdd (e.g. tsize=250000s).
              See ffss= option for possible arguments.


EEXXAAMMPPLLEESS
       For  all  examples  below, it will be assumed that the CD-
       Recorder is connected to  the  primary  SCSI  bus  of  the
       machine. The SCSI target id is set to 2.

       To  record  a pure CD-ROM at double speed, using data from
       the file _c_d_i_m_a_g_e_._r_a_w:

           cdrecord -v speed=2 dev=2,0 cdimage.raw

       To create an image for a ISO  9660  filesystem  with  Rock
       Ridge extensions:

           mkisofs -R -o cdimage.raw /home/joerg/master/tree

       To  check  the  resulting  file  before  writing  to CD on
       Solaris:

           mount -r -F  fbk  -o  type=hsfs  /dev/fbk0:cdimage.raw
       /mnt

       On Linux:

           mount cdimage.raw -r -t iso9660 -o loop /mnt

       Go on with:
           ls -lR /mnt
           umount /mnt

       If  the  overall speed of the system is sufficient and the
       structure of the filesystem is not too  complex,  cdrecord
       will  run  without  creating  an  image  of  the  ISO 9660
       filesystem. Simply run the pipeline:

           mkisofs -R /master/tree | cdrecord  -v  fs=6m  speed=2
       dev=2,0 -

       The   recommended  minimum  fifo  size  for  running  this
       pipeline is 4 MBytes.  As the default fifo size is  4  MB,
       the  ffss== option needs only be present if you want to use a
       different fifo size.  If your system is loaded, you should
       run mkisofs in the real time class too.  To raise the pri-
       ority of mmkkiissooffss replace the command

           mkisofs -R /master/tree
       by
           priocntl -e -c RT -p 59 mkisofs -R /master/tree

       on Solaris and by

           nice --18 mkisofs -R /master/tree

       on systems that don't have  UUNNIIXX  IInntteerrnnaattiioonnaall  compliant
       realtime scheduling.

       Cdrecord  runs  at  priority 59 on Solaris, you should run
       mkisofs at no more than priority 58. On other systems, you
       should run mkisofs at no less than nice --18.

       Creating  a  CD-ROM  without file system image on disk has
       been tested on a Sparcstation-2 with a Yamaha CDR-400.  It
       did work up to quad speed when the machine was not loaded.
       A faster machine may be able to handle quad speed also  in
       the loaded case.

       To  record a pure CD-DA (audio) at single speed, with each
       track  contained  in   a   file   named   _t_r_a_c_k_0_1_._c_d_a_u_d_i_o,
       _t_r_a_c_k_0_2_._c_d_a_u_d_i_o, etc:

           cdrecord -v speed=1 dev=2,0 -audio track*.cdaudio

       To  check  if  it  will  be ok to use double speed for the
       example above.  Use the dummy write option:

           cdrecord -v -dummy speed=2 dev=2,0 -audio track*.cdau-
       dio

       To record a mixed-mode CD with an ISO 9660 filesystem from
       _c_d_i_m_a_g_e_._r_a_w on the first track,  the  other  tracks  being
       audio tracks from the files _t_r_a_c_k_0_1_._c_d_a_u_d_i_o, _t_r_a_c_k_0_2_._c_d_a_u_-
       _d_i_o, etc:

           cdrecord  -v   -dummy   dev=2,0   cdimage.raw   -audio
       track*.cdaudio

       To  handle  drives  that  need to know the size of a track
       before starting to write, first run

           mkisofs -R -q -print-size /master/tree

       and then run

           mkisofs -R /master/tree  |  cdrecord  speed=2  dev=2,0
       tsize=XXXs -

       where _X_X_X is replaced by the output of the previous run of
       mkisofs.

       To copy an audio CD in the most accurate way, first run

           cdda2wav -vall cddb=0 -D2,0 -B -Owav

       and then run

           cdrecord -v dev=2,0 -dao -useinfo -text  *.wav

       This will try copy  track  indices  and  to  read  CD-Text
       information  from  disk.   If there is no CD-Text informa-
       tion, ccddddaa22wwaavv  will  try  to  get  the  information  from
       freedb.org instead.


EENNVVIIRROONNMMEENNTT
       CCDDRR__DDEEVVIICCEE
              This  may  either  hold a device identifier that is
              suitable to the open call  of  the  SCSI  transport
              library     or     a     label    in    the    file
              /etc/default/cdrecord.

       CCDDRR__SSPPEEEEDD
              Sets the default speed value for writing (see  also
              --ssppeeeedd option).

       CCDDRR__FFIIFFOOSSIIZZEE
              Sets  the  default  size of the FIFO (see also ffss==#
              option).

       CCDDRR__FFOORRCCEERRAAWWSSPPEEEEDD
              If this environment variable is set, ccddrreeccoorrdd  will
              allow you to write at the full RAW encoding speed a
              single CPU supports.  This will create high  poten-
              tial of buffer underruns. Use with care.

       RRSSHH    If  the RRSSHH environment is present, the remote con-
              nection will not be  created  via  rrccmmdd(3)  but  by
              calling  the  program  pointed to by RRSSHH.  Use e.g.
              RRSSHH==/usr/bin/ssh to create a secure  shell  connec-
              tion.

              Note  that this forces ccddrreeccoorrdd to create a pipe to
              the  rrsshh((11))  program  and  disallows  ccddrreeccoorrdd   to
              directly  access  the  network socket to the remote
              server.  This makes it impossible to set up perfor-
              mance parameters and slows down the connection com-
              pared to a rroooott initiated rrccmmdd((33)) connection.

       RRSSCCSSII  If the RRSSCCSSII environment  is  present,  the  remote
              SCSI    server    will    not    be   the   program
              //oopptt//sscchhiillyy//ssbbiinn//rrssccssii but the program  pointed  to
              by RRSSCCSSII.  Note that the remote SCSI server program
              name will be ignored if you log in using an account
              that  has  been  created  with a remote SCSI server
              program as login shell.


FFIILLEESS
       /etc/default/cdrecord
              Default values can be set for the following options
              in  /etc/default/cdrecord.  For example: CDR_FIFOS-
              IZE=8m or CDR_SPEED=2

              CDR_DEVICE
                     This may either  hold  a  device  identifier
                     that  is  suitable  to  the open call of the
                     SCSI transport library or  a  label  in  the
                     file  /etc/default/cdrecord  that  allows to
                     identify a specific drive on the system.

              CDR_SPEED
                     Sets the default  speed  value  for  writing
                     (see also --ssppeeeedd option).

              CDR_FIFOSIZE
                     Sets  the default size of the FIFO (see also
                     ffss==# option).

              Any other label
                     is an identifier for a specific drive on the
                     system.   Such an identifier may not contain
                     the characters ',', '/', '@' or ':'.

                     Each line that follows a  label  contains  a
                     TAB  separated  list  of  items.  Currently,
                     three items are recognized: the SCSI  ID  of
                     the  drive, the default speed that should be
                     used for this drive  and  the  default  FIFO
                     size that should be used for this drive. The
                     values for _s_p_e_e_d and _f_i_f_o_s_i_z_e may be set  to
                     -1  to  tell  cdrecord  to  use  the  global
                     defaults.  A typical line may look this way:

                     teac1= 0,5,0   4    8m

                     yamaha= 1,6,0  -1   -1

                     This tells ccddrreeccoorrdd that a drive named _t_e_a_c_1
                     is at scsibus 0, target 5, lun 0 and  should
                     be  used  with  speed 4 and a FIFO size of 8
                     MB.  A second drive may be found at  scsibus
                     1,  target  6,  lun  0  and uses the default
                     speed and the default FIFO size.


SSEEEE AALLSSOO
       ccddddaa22wwaavv(1),  rreeaaddccdd(1),   ssccgg(7),   ffbbkk(7),   mmkkiissooffss(8),
       rrccmmdd(3), sssshh(1).


NNOOTTEESS
       On  Solaris  you need to stop the volume management if you
       like to use the USCSI fallback SCSI transport  code.  Even
       things  like ccddrreeccoorrdd --ssccaannbbuuss will not work if the volume
       management is running.

       Disks made in TTrraacckk AAtt OOnnccee mode are  not  suitable  as  a
       master  for  direct  mass  production by CD manufacturers.
       You will need the ddiisskk  aatt  oonnccee  option  to  record  such
       disks.   Nevertheless the disks made in TTrraacckk AAtt OOnnccee will
       normally be read in all CD  players.  Some  old  audio  CD
       players however may produce a two second click between two
       audio tracks.

       The minimal size of a track is 4 seconds or  300  sectors.
       If  you  write  smaller  tracks,  the CD-Recorder will add
       dummy blocks. This is not an error, even though the  SCSI-
       error message looks this way.

       CCddrreeccoorrdd  has  been  tested on an upgraded Philips CDD-521
       recorder at single and  double  speed  on  a  SparcStation
       20/502  with  no  problems, slower computer systems should
       work also.  The newer Philips/HP/Plasmon/Grundig drives as
       well  as Yamaha CDR-100 and CDR-102 work also. The Plasmon
       RF-4100 work, but has not  tested  in  multi  session.   A
       Philips  CDD-521 that has not been upgraded will not work.
       The Sony CDU-924 has been tested, but does not support XA-
       mode2  in hardware.  The sony therefore cannot create con-
       forming multi session disks.  The  Ricoh  RO-1420C  works,
       but  some  people  seem  to have problems to use them with
       speed=2, try speed=0 in this case.

       The Yamaha  CDR-400  and  all  new  SCSI-3/mmc  conforming
       drives are supported in single and multi-session.

       You  should  run  several tests in all supported speeds of
       your drive with the --dduummmmyy option turned  on  if  you  are
       using  ccddrreeccoorrdd  on  an  unknown system. Writing a CD is a
       realtime process.  NNFFSS will not always deliver  constantly
       the  needed  data rates.  If you want to use ccddrreeccoorrdd with
       CD-images that are located on a NNFFSS mounted filesystem, be
       sure  that  the  fifo size is big enough.  I used ccddrreeccoorrdd
       with with medium load on a SS20/502 and even at quad speed
       on  a  Sparcstation-2  which was heavily loaded, but it is
       recommended to leave the system as lightly loaded as  pos-
       sible  while  writing a CD.  If you want to make sure that
       buffer underruns are not caused by your source  disk,  you
       may use the command

           ccddrreeccoorrdd --dduummmmyy ddeevv==22,,00 ppaaddssiizzee==660000mm //ddeevv//nnuullll

       to  create  a  disk  that  is entirely made of dummy data.
       CCddrreeccoorrdd needs to  run  as  root  to  get  access  to  the
       //ddeevv//ssccgg??  device nodes and to be able to lock itself into
       memory.

       If you don't want to allow users to become  root  on  your
       system,  ccddrreeccoorrdd  may safely be installed suid root. This
       allows all users or a group of users with no  root  privi-
       leges  to  use ccddrreeccoorrdd..  CCddrreeccoorrdd in this case checks, if
       the real user would have been able to read  the  specified
       files.  To give all user access to use ccddrreeccoorrdd,, enter:

            chown root /usr/local/bin/cdrecord
            chmod 4711 /usr/local/bin/cdrecord

       To  give  a  restricted  group of users access to cdrecord
       enter:

            chown root /usr/local/bin/cdrecord
            chgrp cdburners /usr/local/bin/cdrecord
            chmod 4710 /usr/local/bin/cdrecord

       and add a group _c_d_b_u_r_n_e_r_s on your system.

       Never give write permissions for non  root  users  to  the
       _/_d_e_v_/_s_c_g_?   devices  unless  you  would  allow  anybody to
       read/write/format all your disks.

       You should not connect old drives that do not support dis-
       connect/reconnect to either the SCSI bus that is connected
       to the CD-Recorder or the source disk.

       A Compact Disc can have no more than 99 tracks.

       When creating a disc with both audio and data tracks,  the
       data  should  be  on track 1 otherwise you should create a
       CDplus disk which is a multi session disk with  the  first
       session containing the audio tracks and the following ses-
       sion containing the data track.

       Many operating systems are not able to read  more  than  a
       single data track, or need special software to do so.

       More  information  on  the  SCSI  command  set of a HP CD-
       Recorder can be found at:

            http://www.hp.com/isgsupport/cdr/index.html

       If you have more information or SCSI command  manuals  for
       currently  unsupported  CD-Recorders  please  contact  the
       author.

       The Philips CDD 521  CD-Recorder  (even  in  the  upgraded
       version)  has  several  firmware  bugs.  Some of them will
       force you to power cycle  the  device  or  to  reboot  the
       machine.

       When  using  ccddrreeccoorrdd  with  the broken LLiinnuuxx SSCCSSII ggeenneerriicc
       ddrriivveerr..  You should note that ccddrreeccoorrdd uses a  hack,  that
       tries  to  emulate  the  functionality  of the scg driver.
       Unfortunately, the sg driver on LLiinnuuxx has  several  severe
       bugs:

       +o      It  cannot  see if a SCSI command could not be sent
              at all.

       +o      It cannot get the SCSI status byte.   CCddrreeccoorrdd  for
              that  reason cannot report failing SCSI commands in
              some situations.

       +o      It cannot get real DMA count of transfer.  CCddrreeccoorrdd
              cannot  tell you if there is an DMA residual count.

       +o      It cannot get number of bytes valid in  auto  sense
              data.  CCddrreeccoorrdd cannot tell you if device transfers
              no sense data at all.

       +o      It fetches  to  few  data  in  auto  request  sense
              (CCS/SCSI-2/SCSI-3 needs >= 18).

       The  fifo percent output is computed just after a block of
       data has been written to the CD-Recorder. For this reason,
       there  will  never be 100% fifo fill, while the fifo is in
       streaming mode.


DDIIAAGGNNOOSSTTIICCSS
       You have 9 seconds to type ^C to abort ccddrreeccoorrdd after  you
       see the message:

       Starting  to  write  CD at speed %d in %s mode for %s ses-
       sion.

       A typical error message for a SCSI command looks like:

              cdrecord: I/O error. test unit ready: scsi sendcmd: no error
              CDB:  00 20 00 00 00 00
              status: 0x2 (CHECK CONDITION)
              Sense Bytes: 70 00 05 00 00 00 00 0A 00 00 00 00 25 00 00 00 00 00
              Sense Key: 0x5 Illegal Request, Segment 0
              Sense Code: 0x25 Qual 0x00 (logical unit not supported) Fru 0x0
              Sense flags: Blk 0 (not valid)
              cmd finished after 0.002s timeout 40s

       The first line gives information about  the  transport  of
       the  command.   The  text  after the first colon gives the
       error text for the system call from the view of  the  ker-
       nel.  It  usually is: II//OO eerrrroorr unless other problems hap-
       pen. The next words contain a short  description  for  the
       SCSI command that fails. The rest of the line tells you if
       there were any problems for the transport of  the  command
       over the SCSI bus.  ffaattaall eerrrroorr means that it was not pos-
       sible to transport the command (i.e. no device present  at
       the requested SCSI address).

       The  second  line prints the SCSI command descriptor block
       for the failed command.

       The third line gives information on the SCSI  status  code
       returned  by  the command, if the transport of the command
       succeeds.  This is error information from the SCSI device.

       The  fourth  line  is a hex dump of the auto request sense
       information for the command.

       The fifth line is the error text  for  the  sense  key  if
       available,  followed  by  the  segment number that is only
       valid if the command was a _c_o_p_y command. If the error mes-
       sage  is  not directly related to the current command, the
       text _d_e_f_e_r_r_e_d _e_r_r_o_r is appended.

       The sixth line is the error text for the  sense  code  and
       the  sense  qualifier  if  available.   If the type of the
       device is known, the sense data is decoded from tables  in
       _s_c_s_i_e_r_r_s_._c  .  The text is followed by the error value for
       a field replaceable unit.

       The seventh line prints the block number that  is  related
       to  the  failed  command and text for several error flags.
       The block number may not be valid.

       The eight line reports the timeout set up for this command
       and the time that the command really needed to complete.

       The following message is not an error:
              Track 01: Total bytes read/written: 2048/2048 (1 sectors).
              cdrecord: I/O error. flush cache: scsi sendcmd: no error
              CDB:  35 00 00 00 00 00 00 00 00 00
              status: 0x2 (CHECK CONDITION)
              Sense Bytes: F0 00 05 80 00 00 27 0A 00 00 00 00 B5 00 00 00 00 00
              Sense Key: 0x5 Illegal Request, Segment 0
              Sense Code: 0xB5 Qual 0x00 (dummy data blocks added) Fru 0x0
              Sense flags: Blk -2147483609 (valid)
              cmd finished after 0.002s timeout 40s

       It  simply notifies, that a track that is smaller than the
       minimum size has been expanded to 300 sectors.

BBUUGGSS
       CCddrreeccoorrdd has even more options than llss.

       There should be a recover option  to  make  disks  usable,
       that have been written during a power failure.


CCRREEDDIITTSS
       Bill Swartz    (Bill_Swartz@twolf.com)
                      For helping me with the TEAC driver support

       Aaron Newsome  (aaron.d.newsome@wdc.com)
                      For letting me develop Sony support on  his
                      drive

       Eric Youngdale (eric@andante.jic.com)
                      For supplying mkisofs

       Gadi Oxman     (gadio@netvision.net.il)
                      For tips on the ATAPI standard

       Finn Arne Gangstad  (finnag@guardian.no)
                      For the first FIFO implementation.

       Dave Platt     (dplatt@feghoot.ml.org)
                      For  creating the experimental packet writ-
                      ing support, the  first  implementation  of
                      CD-RW blanking support, the first .wav file
                      decoder  and  many  nice   discussions   on
                      cdrecord.

       Chris P. Ross (cross@eng.us.uu.net)
                      For the first implementation os a BSDI SCSI
                      transport.

       Grant R. Guenther   (grant@torque.net)
                      For creating the first parallel port trans-
                      port implementation for Linux.

       Kenneth D. Merry (ken@kdm.org)
                      for  providing  the  CAM  port  for FreeBSD
                      together      with      Michael       Smith
                      (msmith@freebsd.org)

       Heiko Eißfeldt (heiko@hexco.de)
                      for  making libedc_ecc available (needed to
                      write RAW data sectors).


MMAAIILLIINNGG LLIISSTTSS
       If you want to actively take part on  the  development  of
       cdrecord, you may join the developer mailing list via this
       URL:

       hhttttpp::////lliissttss..bbeerrlliiooss..ddee//mmaaiillmmaann//lliissttiinnffoo//ccddrreeccoorrdd--ddeevveelloopp--
       eerrss

       The mail address of the list is: ccddwwrriittee@@ootthheerr..ddeebbiiaann..oorrgg


AAUUTTHHOORR
       Joerg Schilling
       Seestr. 110
       D-13353 Berlin
       Germany

       Additional information can be found on:
       http://www.fokus.fhg.de/usr/schilling/cdrecord.html

       If you have support questions, send them to:

       ccddrreeccoorrdd--ssuuppppoorrtt@@bbeerrlliiooss..ddee
       or ccddwwrriittee@@ootthheerr..ddeebbiiaann..oorrgg

       Of you have definitely found a bug, send a mail to:

       ccddrreeccoorrdd--ddeevveellooppeerrss@@bbeerrlliiooss..ddee
       or sscchhiilllliinngg@@ffookkuuss..ffhhgg..ddee

       To subscribe, use:

       hhttttpp::////lliissttss..bbeerrlliiooss..ddee//mmaaiillmmaann//lliissttiinnffoo//ccddrreeccoorrdd--ddeevveelloopp--
       eerrss
       or  hhttttpp::////lliissttss..bbeerrlliiooss..ddee//mmaaiillmmaann//lliissttiinnffoo//ccddrreeccoorrdd--ssuupp--
       ppoorrtt

       The old cdwrite mailing list may be joined by sending mail
       to:

            cdwrite-request@other.debian.org

       and including the word _s_u_b_s_c_r_i_b_e in the  body.   The  mail
       address of the list is:

            cdwrite@other.debian.org



Joerg Schilling            Version 2.0                CDRECORD(1)