Provided by: ripit_4.0.0~rc20161009-1_all bug

NAME:

       Ripit  - Perl script to create flac, ogg, mp3, m4a (aac), als (mp4), mpc, wv or other files from an audio
       CD.

SYNOPSIS:

       ripit [options]

DESCRIPTION:

       This Perl script makes it a lot easier to extract and compress sound files from an audio CD  or  a  local
       directory  with  wav/flac  files.  Although  Ripit  ensures exact copy of the digital data with different
       verification possibilities, it aims to enhance the audio content  for  a  more  userfriendly  experience.
       Tracks  can  be merged or partially ripped, hidden tracks (aka pregap tracks or HTOA) and ghost songs are
       detected and can be split, like all other tracks, into chunks of sound where  silence  has  been  trimmed
       away. Data tracks can be omitted to prevent ripper failure or waste of time on such tracks.

       Ripit supports Flac, Lame, Oggenc, Faac, mp4als, Musepack, Wavpack and ffmpeg. Artist and song titles are
       retrieved either with the CDDB_get.pm perl module from  freedb.org  or  using  WebService::MusicBrainz.pm
       from MusicBrainz.org. Several encoder formats and qualities or compression levels can be used in the same
       run (even the same encoder) and encoded into different directories. Distributed encoding  and  launch  of
       more than one encoder process in the same time is possible.

       Retrieval  and  different modifications of metadata is possible to ensure highly customized tagging, e.g.
       adding coverart, detection of Various Artists style at different levels  of  strictness  or  album  gain,
       freedom  to  add  any kind of personal tags and change of encoding format for tags used in mp3.  External
       commands can be launched before and after ripping / encoding is done (providing access  to  all  internal
       variables   containing   metadata),   e.g.   to  ensure  presence  of  coverart  if  not  retrieved  from
       coverartarchive.org or discogs.com.

       Additional processes take care of calculation of md5sums, generation of playlist files, creation of  toc,
       cue  or inf files e.g. enableing to burn the WAV files with text and no gaps in DAO mode.  It is possible
       to submit and edit CDDB entries at freedb.org or submission of MusicBrainz data (ISRCs only)  provided  a
       login to access the MB site and of course to save this metadata locally for later use.

VERSION:

       Ripit Version 4.0.0

OPTIONS:

       [track_selection]
              Tracks to rip from.  If not specified,  all tracks will be ripped. Specify a single track by using
              a single number, or a selection of tracks using numbers separated by  commas  or  hyphens,  e.  g.
              2,6,10,  or 3,5,7-9.  Using a number followed by a comma or hyphen will rip from that track to the
              end of the CD i. e. 3,5- rips track 3 and from track 5 to the last one.

              To rip only audio tracks and to skip all data tracks (trailing or even  in  between)  the  tweeked
              argument  1-a  might  be  useful. In this case Ripit will try to detect the number of audio tracks
              using cdparanoia toc query.

              Default: not set.

       --merge ordered list of comma separated intervals.
              Place a hyphen (-) or a plus (+) between first and last track number to be  merged.  Omitting  the
              last  number will merge all subsequent tracks.  Separate several intervals with commas. Do not use
              this option to merge the whole disc  into  one  track,  use  option  --cdcue  or  --book  instead.
              Default: not set.

       -I, --span starttime-endtime
              Define  an  interval to be ripped when using cdda2wav or cdparanoia. The hyphen is mandatory.  The
              format   of   start    and    end-time    is    according    to    cdparanoia    hh:mm:ss.ff    in
              hours/minutes/seconds/frames, but precision is set to seconds, i. e.  frames will be ignored. Zero
              fields need not be specified and the value of seconds may be larger than  60  if  no  minutes  and
              hours  are  stated. When using cdda2wav this option translates the values to the -o and -d options
              of cdda2wav. When using option merge, end time is related to the  last  track  in  the  selection.
              Default: not set.

       -o, --outputdir dir
              Full  path  of  directory  where the sound should go. If not set, $HOME will be used. Default: not
              set.

       -d, --device cddevice
              Path of the device containing the audio CD, default: /dev/cdrom.

       --scsidevice cddevice
              Device name for special devices if the non ripping  commands  (except  eject  commands)  shall  be
              executed  on  a  different device node. This might be useful for some old SCSI devices. If not set
              the cddevice of option --device will be used. Default: not set.

       -r, --ripper number
              CD ripper to use, 0 - dagrab, 1  -  cdparanoia,  2  -  cdda2wav,  3  -  rip  (Morituri)  (breaking
              parallelism,  experimental),  4  -  cdd  (support  not ensured).  When data tracks are encountered
              because special track selection 1-a has not been used,  cdparanoia  and  dagrab  are  supposed  to
              immediately  fail and therefore allow Ripit to create an error.log so that the encoder process can
              terminate if problems were encountered.  This  might  not  be  the  case  depending  the  type  of
              "copyprotection"  is  used  and  on  the other hand it could be that cdd2wav may fail on such data
              tracks and enables Ripit  to  continue  to  rip  and  encode  without  endless  looping.  Use  the
              appropriate  ripper  according  to  your  needs and switch the ripper if needed or use the special
              track selection to omit data tracks.

              Note when using rip (Morituri)  alle  directories  must  be  defined  with  option  --dirtemplate,
              including a separate wav directory which will be created by rip (Morituri). Further inconveniences
              might be due to the programs limitations  and  its  recent  development  activity  with  behaviour
              changing almost dayly, breaking every wrappers capabilities.

              Default: 1 - cdparanoia.

       --ripopt options
              User definable options for specific ripper. Quote them if necessary. Note that changing the ripper
              implies to update this option. Default: not set.

       --offset number
              User definable sample offset for the CD ripper. This will trigger option -O when using  cdparanoia
              and  option -o when using rip (Morituri).  Icedax (cdda2wav) seems not to provide a sample offset.
              Default: not set.

       -Q, --accuracy number
              Check ripped files at AccurateRip using Morituri (rip) which must be installed. One might need  to
              specify a sample offset (see option --offset) to achieve accuracy. Default: off.

       -Y, --verify number
              When  using  cdparanoia rip track number times until md5sum for 2 rips match, maximum tries is the
              number given as argument, default: 1, i.e. no checks will be done.

       --nicerip number
              Set niceness of ripping process, default: 0.

       -Z, --disable-paranoia [number]
              When using dagrab, the number of retries will be set to 3, with cdparanoia this option is equal to
              the  -Z option of cdparanoia.  The number can be set to 0 (paranoia on), to 1 (paranoia off) or to
              2 to switch paranoia off if a track fails or gets a timeout. Ripit will retry  that  failed  track
              without paranoia or give up.  Ripping will then continue with paranoia on. Default: 0 ‐ off, i. e.
              use paranoia mode.

       --ghost
              Analyze each wav for gaps and split it into chunks if gaps are detected and/or try to  trim  lead-
              in/out.  This  may  override  option merge. Delete blank tracks if only silence ("zero bytes") are
              found. Experimental!  Default: off.

       --extend seconds
              When using option --ghost and only if a chunk of sound is detected, enlarge  chunk  by  amount  of
              seconds  at  end if possible (no silence will be added), or track may be trimmed if value is small
              (e.g. 0.3), use with caution. Default: 2.0.

       --prepend seconds
              When using option --ghost and only if a chunk of sound is detected, enlarge  chunk  by  amount  of
              seconds  at beginning, if possible (no silence will be added), or track may be trimmed if value is
              small (e.g. 0.3), use with caution. Default: 2.0.

       -c, --coder number
              Encoder(s) to use, 0 - Lame (for mp3), 1 - Oggenc, 2 - Flac, 3 - Faac, 4 - mp4als, 5 - Musepack, 6
              - Wavpack, 7 - ffmpeg, a comma separated list, or as an array. The same encoder may be stated more
              than once, but different output-directories must be specified (to prevent overwriting  files  with
              identical  path)  stating  the  --dirtemplate  for each encoder or using the $quality parameter in
              option --dirtemplate or stating the --tracktemplate for each encoder. See below.  Default: 0.

       --faacopt Faac-options
              Pass other options to the encoder. If the same encoder has been stated more than once, use a comma
              separated  list. Do not use this option for compression level, use option --quality instead. Quote
              them with double quotes if needed; default: not set.

       --flacopt Flac-options
              Pass other options to the encoder. If the same encoder has been stated more than once, use a comma
              separated  list. Do not use this option for compression level, use option --quality instead. Quote
              them with double quotes if needed; default: not set.

       --flacdecopt Flac decoding options
              Additional options for flac when used to decode flac  files.  Might  be  needed  to  force  (over)
              writing existing wav files: Default: -s (silent).

       --lameopt Lame-options
              Pass other options to the encoder. If the same encoder has been stated more than once, use a comma
              separated list. Do not use this option for quality settings, use option --quality  instead.  Quote
              them with double quotes if needed; default: not set.

       --museopt Musepack-options
              Pass other options to the encoder. If the same encoder has been stated more than once, use a comma
              separated list. Do not use this option for quality settings, use option --quality  instead.  Quote
              them with double quotes if needed; default: not set.

       --musenc Musepack-encoder
              Choose Musepack encoder to be used, either mpcenc or mppenc for older versions; default: mpcenc.

       --mp4opt Mp4als-options
              Pass other options to the encoder. Option -MP4 of encoder mp4als is mandatory to enable tagging of
              sound files. Use the appropriate options to alter compression level and speed. If the same encoder
              has  been  stated  more  than  once,  use a comma separated list. Quote them with double quotes if
              needed; default: not set.

       --oggencopt Oggenc-options
              Pass other options to the encoder. If the same encoder has been stated more than once, use a comma
              separated  list.  Do not use this option for quality settings, use option --quality instead. Quote
              them with double quotes if needed; default: not set.

       --wavpackopt Wavpack-options
              Pass other options to the encoder. If the same encoder has been stated more than once, use a comma
              separated list. Quote them with double quotes if needed; default: not set.

       --ffmpegopt ffmpeg-options
              Pass  other  options  to  the  encoder.  If the ffmpeg has been stated more than once, use a comma
              separated list. Quote them with double quotes if needed; default: not set.

       --ffmpegsuffix ffmpeg-suffix
              The suffix of the formats to be encoded. If ffmpeg has been stated more than  once,  use  a  comma
              separated list. Quote them with double quotes if needed; default: not set.

       -q, --quality quality
              A  comma  separated  list  of  values  or  the word "off", passed in the same order as the list of
              encoders. If no encoders passed, follow the order of the config file. This options name  might  be
              misleading  as  lossless encoders do not have a quality but a compression level instead. Depending
              the encoder it refers, this option means: quality for oggenc: (1-10), highest  =  10;  compression
              level  for Flac: (0-8), lowest (but fastest) compression = 0; quality for Lame in vbr mode: (0-9),
              best quality = 0; or quality for Faac: (10-500), highest = 500; mp4als seems  not  to  accept  any
              compression  level,  set  to  zero;  quality  for  Musepack:  (0-10),  best quality = 10; default:
              5,3,5,100,0,5. Wavpack and ffmpeg have no quality switch, use encoder options instead.  The  value
              "off"  turns  option  quality  off,  if supported by the encoder.  Encoders that need a quality or
              compression level will use default value in case "off" is used.
              E. g. --coder 2,0,1,3 --quality 3,4,5,300 sets compression level for Flac to 3, Lame-quality to 4,
              Oggenc-quality to 5 and Faac quality to 300.

       -v, --vbrmode mode
              Option  vbrmode  defines variable-bitrate, only used with Lame, the mode is either new or old, see
              the Lame manpage. The Lame-option quality will be changed to -V instead of -q if vbr-mode is used;
              default: not set.

       -b, --bitrate rate
              Encode  "mp3"  at  this  bitrate  for  Lame.  If option --vbrmode used, bitrate is equal to the -b
              option, so one might want to set it "off"; or set if "off" if all options are passed to --lameopt.
              Default: 128.

       -B, --maxrate rate
              Option  maxrate  (bitrate) for Lame when using --vbrmode is translated to the -B option in Lame or
              the -M option in Oggenc, default: 0.

       -S, --preset mode
              Use the preset switch when encoding with Lame. Combined with  option  --vbrmode  new  the  "preset
              fast"  setting  will  be used.  Use --vbrmode old not to use fast VBR. Mode is one of: insane (320
              kbps @ CBR), extreme (256 kbps), standard (192 kbps) or  medium (160  kbps)  or  any  other  valid
              bitrate. Default: off.

       -W, --chars [list]
              Exclude  special characters in file names and path. The argument is optional. The argument accepts
              a list of any characters. One might escape the characters or use double quotes to pass them on the
              command line. The argument also accepts the presets NTFS, HFS or off. Following characters will be
              erased, if no argument stated or the word NTFS is passed:  |\:*?$   plus  blanks  and  periods  at
              beginning  and  end  of  file  names and directories. When using the word HFS, only colons will be
              purged plus blanks and periods at beginning of file names and directories. Pass the word "off"  as
              argument to set the option off again. Default: off.

       --comment comment
              Specify a comment for the comment-tag for Lame, Faac, Musepack and Wavpack, or the description-tag
              for Oggenc and Flac. The special comment cddbid or discid will place the cddbid (used  by  freedb)
              or  the  discid  (used for MusicBrainz) into the comment. See also option --mp3tags, --flactags or
              --oggtags for more special tags to be added; default: not set.

       -g, --genre genre
              Specify (and override CDDB) genre, must be a valid ID3-genre if using Lame, can (but shouldn't) be
              anything if using other encoders; default: not set.

       -y, --year year
              Specify (and override CDDB) the year of year-tag for Lame, Faac, Musepack and Wavpack or the date-
              tag for Oggenc and Flac; default: not set.

       --coverart number
              A number or comma separated list of numbers (if several encoders are  used)  according  to  option
              --coder with values 0 (no) or 1 (yes); default 0.

       --coverpath path
              Path  to  the coverart picture to be included in the metadata of the sound files. The picture must
              be present or acquired using e.g. the --precmd option to call a specific script taking care of the
              process  finding  coverart  or option --coverorg in combination with option --mb (see below). This
              option is mandatory in case --coverart is used. The  full  path  might  be  given  with  variables
              according  to the --dirtemplate and using same quoting rules. Absolutely no checks about existence
              of path will happen and a missing path will not be created so that a wrong argument might lead  to
              failed  downloads  when  using  --coverorg.  No checks about existence of coverart will be done if
              --interaction is set off. In case of re-encoding the variable $inputdir can be  stated.   Default:
              not set.

       --coverorg number
              Retrieve  coverart  from  coverartarchive.org using the MusicBrainz release ID (not to be confused
              with the discid, used to find the release on MusicBrainz). Furthermore as an experimental  feature
              discogs.com  will be used in case a discogs release ID was listed on the MusicBrainz release page.
              But this might be out of order any time as discogs changes page layout frequently. If a  cover  is
              downloaded  from  coverartarchive.org all other files will get suffixes in their file names not to
              overwrite any files. Note that the --coverpath must be set to save the coverart and  must  reflect
              an existing path.  Possible values 0 (no) or 1 (yes), default 0.

       --coversize format
              Resize  the  provided  coverart  picture to a fix value according to ImageMagicks convert command,
              either values in the format XXXxYYY or only a width to keep aspect ratio.  The  original  coverart
              file will be renamed. Possible values: any valid format, default: not set.

       --copycover path
              Full  path  to  any  kind  of  file  (e.g. the coverart picture) to be copied into all directories
              containing encoded files. The argument might consist of variables according to  the  --dirtemplate
              and  using  same  quoting  rules.  In  case  of  re-encoding the variable $inputdir can be stated,
              default: not set.

       --flactags FRAME=tag
              Additional tags for flac not passed by the encoder to ensure evaluation of special tags similar to
              mp3tags.  Use  option  --flacopt  "--tag=FRAME=foo"  for additional hard coded tags instead.  When
              using MusicBrainz additional metadata provided can be added as tags using the scheme  FRAME=frame.
              Supported  are  ASIN,  BARCODE,  CATALOGNUMBER  (using  tag  "catalog"),  CDDID,  DGID, DISCID aka
              MUSICBRAINZ_DISCID (using tag "discid") and MBREID aka MUSICBRAINZ_ALBUMID (using tag mbreid) with
              the tag in lower case, e.g. adding an asin: --flactags=ASIN=asin will evaluate the lower case asin
              if the variable is defined. Nothing is added if the metadata is not available.  The option  is  an
              array, for each additional frame/tag to be added state the option once. Default: not set

       --mp3tags FRAME=[DESCRIPTION]tag
              Additional  tags  to be added to the mp3 file(s) if encoder does not provide options for the FRAME
              or if some unofficial FRAMEs shall be used (e.g. a compilation tag set to 1: TCMP=1). This  option
              only     supports     basic     (id3v2.4)     frames     in    the    format    FRAME=tag    (e.g.
              WCOP=http://id3.org/id3v2.4.0-frames)  or  FRAME=[DESCRIPTION]tag  (e.g.  a  user   defined   text
              annotation  for  the description ASIN: TXXX=[ASIN]B003ZYEQ30). Note that the braces must be stated
              with some content and do not stand for optional content.  More than one --mp3tags statement can be
              used  if  several  tags  shall  be added. Do not add a COMM frame here as this tag is supported by
              (older versions of) Lame and the corresponding option exists in Ripit. The same goes for the  APIC
              frame  which  has its own option in Ripit. Newer versions of Lame may support this tags using Lame
              option --tv to be passed with Ripits option --lameopt.
              No checks on encoding will happen on content stated here, in case option --utftag is switched  off
              operator has to ensure encoding of the tags.
              Special  tags  will be evaluated in case the metadata is provided e.g.  when using MB and the TXXX
              tag. Supported are ASIN, CATALOG, BARCODE, CDDBID, DGID, DISCID  aka  "MusicBrainz  Disc  Id"  and
              MBREID aka "MusicBrainz Album Id" with the tag in lower case, e.g. --mp3tags  TXXX=[ASIN]asin will
              replace asin with the value if the variable is defined. Default: not set.

       --oggtags FRAME=tag
              Additional tags for ogg files similar to --flactags. Default: not set.

       --vatag number
              Analyze track names for "various artists" style  and  split  the  metadata  in  case  one  of  the
              delimiters  (colon,  hyphen,  slash  or  parenthesis) are found. Use unpair numbers for the scheme
              "artist ? tracktitle" and pair numbers in the opposite case. The artist will be  compared  to  the
              argument  of  option --vastring (see below).  If the artist must be like --vastring and each track
              have a delimiter, use 1 (2), if the artist must be like --vastring while only some tracks  contain
              the  delimiter, use 3 (4), if no restrictions apply for the artist but all track names must have a
              delimiter, use 5 (6) and finally, if only a few tracks contain a delimiter to be used as splitting
              point, set --vatag to 7 (8). Default: not set.

       --vastring string
              A  string  (regular expression) that defines the "various artists" style, e.g. Varios|VA. Default:
              \bVA\b|Variou*s|Various\sArtists|Soundtrack|OST

       -D, --dirtemplate '"foo parameters"'
              Use single and double quotes to pass the parameters of  the  templates!   Allowed  are  any  legal
              characters,  slashes  for  multi-level  directories  and  following  parameters:  $album, $artist,
              $iletter, $genre, $quality, $suffix, $trackname, $tracknum, $year and $trackno; example: '"$suffix
              $quality/my_snd_dir/$iletter/$artist/$year  ‐  $album"'.   The  parameter  $iletter is the initial
              letter of the artist name; $trackno is the total number of tracks of the release,  this  might  be
              helpful to distinguish different releases with exactly the same name; $quality might be needed, if
              one wants to encode the same format at different qualities in the same  run.  Note  that  $quality
              reflects  the  encoder  options  and  not  the arguments of option --quality which might be set to
              "off". Or state different dirtemplates: the option is an array, so one can use  several  different
              dirtemplates in the same order as the encoders. If less dirtemplates than encoders are stated, the
              last dirtemplate will be used for subsequent encoders and the wav-directory, see  EXAMPLES  below,
              but  must  be  defined  for  all  formats  including  wav in case rip (Morituri) is used. Default:
              '"$artist - $album"'.

       -T, --tracktemplate '"foo parameters"'
              See above. The tracktemplate is not an array, only one can be stated.  Additionally it allows  two
              more  variables helpful in case VA-style is detected: $trackartist, $tracktitle; note: trackartist
              will be filled with the value of artist in case no track artist has  been  found  to  respect  the
              templates settings, and tracktitle will hold the pure trackname. Additional album-artist tags will
              be written, e.g. TPE2 tag for Lame and the  artist  field  will  contain  the  track  artist  tag.
              Default: '"$tracknum $trackname"'.

       --trackoffset number
              Give  a  trackoffset  to  be added to the $tracknum variable (see above).  Might be useful to join
              multi disc releases into one directory (and to switch option --overwrite to "y"). Default: 0.

       --addtrackoffset
              When using MusicBrainz, check  for  multi  discs  releases  and  automatically  add  a  calculated
              --trackoffset  to  the  track counter. Ripit will try to detect already ripped multi disc releases
              and temporarily switch option --overwrite to "y" in case the first track of a multi  disc  release
              is not present in an existing directory corresponding to the dirtemplate.
              Negate to switch option off again. Default: not set.

       --discno number
              Set a counter for the disc when using a multi disc release.  This option accepts any integer; when
              using MB and --discno is set to 1 the discnumber will be set to the discnumber  according  to  the
              presented data (read as: switch option on). Using a number > 1 will force this number and will not
              be altered if MB gives a different disc number. Default: 0.

       --sshlist list
              Comma separated list of remote machines where Ripit should encode. The output  path  must  be  the
              same  for  all  machines.  Specify  the  login (login@machine) only if not the same for the remote
              machine. Else just state the machine names. See EXAMPLES for more information, default: not set.

       --scp  If the file system can not be accessed on the remote machines, scp (copy) the  WAV  files  to  the
              remote machines, default: off.

       --local
              Only  used with option --sshlist; if all encoding shall be done on remote machines, use --nolocal,
              default: on.

       --mb   Access MusicBrainz DB via WebService::MusicBrainz module instead of freedb (see below). One  needs
              the  discid  calculation  perl module or command to be installed and in the path. Negate to switch
              option off again. A non interactive freedb look-up will be done to retrieve a genre. Default: off.

       --mbrels number
              Check each track for additional relationships, only vocal  and  work  relationships  are  handled.
              Possible values 0 (no) or 1 (yes); default: 0.

       --mbname login
              Give  the users MusicBrainz login name to submit ISRCs to the database.  Saved in plain when using
              a config, default: not set.

       --mbpass password
              Give the users MusicBrainz password to submit ISRCs to the database.  Saved in plain when using  a
              config, default: not set.

       --isrc number
              Enable  ISRC  detection  with  number  = 1 (using icedax) and submission to MusicBrainz. Note that
              option --mb must be switched on. Possible values 0 (no) or 1 (yes); default: 0.

       --cdtext numer
              Check for CD text if no DB entry found, possible values 0 (no) or 1 (yes); default 0; default: 0

       -C, --cddbserver server
              CDDB server, either freedb.org, freedb2.org or musicbrainz.org.   Default  freedb.org.  Note,  the
              full  address  is "mirror".freedb.org, i. e.  default is freedb.freedb.org. Exception: freedb2.org
              and   musicbrainz.org   have   no   mirrors,   their   full   addresses   are:   freedb2.org   and
              freedb.musicbrainz.org on port 80 (see transfer mode).

       -t, --transfer mode
              Transfer  mode, cddb or http, will set default port to 8880 or 80 (for http), default: cddb. Note:
              use http mode with CDDB servers freedb2.org or musicbrainz.org.

       -m, --mirror mirror
              Choose "freedb" or one of the possible freedb mirrors, default: freedb. For more information check
              the  web page www.freedb.org.  There is no list of mirrors available these days. This option might
              be obsolete as freedb uses random servers, but the default setting is mandatory.

       -L, --protocol level
              CDDB protocol level for CDDB query. Level = 6 supports UTF-8 and level = 5 not. Use level =  5  to
              suppress UTF-8. Cf. option --utftag below. Default: 6.

       -P, --proxy address
              The http proxy to use when accessing the cddb server. The CDDB protocol must be http. Default: not
              set.

       -n, --nice number
              Set niceness of encoding process, default: 0.

       -a, --archive
              Read and/or save CDDB files in $HOME/.cddb/"category" directory using the xmcd format,  where  the
              "category"  is one of the 11 CDDB categories or in case MusicBrainz is used an additional category
              "musicbrainz" will be used. Default: off.

       -e, --eject
              Ejects the CD when finished, if hardware supports it. Use --noeject to  switch  it  off.  Default:
              off.

       --ejectcmd command
              Command  to be used for ejection or loading of CD tray. Should be specified within FreeBSD even if
              option --eject is not used to enable Ripit to load the CD tray. One does not need to  mention  the
              words close or eject or options like -t, Ripit does it. Default: eject.

       --ejectopt options
              Options  for ejection command to be used for ejection or loading of CD tray.  Default: the path to
              the CD device.

       --halt Powers off the machine when finished if configuration supports it, default: off.

       -s, --submission
              Specify --nosubmission if the computer is offline and the created file cddb.toc shall be saved  in
              the home directory instead of being submitted. With option  --archive it will also be saved in the
              $HOME/.cddb directory. The purpose of this option is also to permit the user to edit the CDDB data
              for the own track names & tags and not to overwrite the original CDDB entry. Default: on.

       -M, --mail address
              Users return email address, needed for submitting an entry to freedb.org. Default: not set.

       --mailopt options
              Additional options, added to sendmail command. The reply-to address will be used with option -r as
              defined above. Default: -t

       -A, --book number
              Create an audiobook file, i. e. merge all tracks into one single  file,  option  --ghost  will  be
              switched off.
              If  encoder faac is used file suffix will be m4b instead of m4a and a chapter file will be written
              for chapter marks. The installed version of faac must support the -w option to write tags.
              Note that options --wav and --cdtoc should also be switched off.  Possible values  0  (off)  or  1
              (on); default: off.

       --cdcue number
              Number  n  =  1  or  2 to create cue sheets to burn the wavs with CD-Text.  The cue sheets will be
              copied to the other file formats. Number 1 will switch option --ghost on to  eliminate  chunks  of
              silence.  Number 2 is experimental but does not switch option --ghost on and may be used if number
              1 fails.  Default: off.

       --cdtoc number
              Number n = 1 to create a toc file to burn the wavs with CD-Text using cdrdao or cdrecord. Default:
              off.

       --inf number
              Number  n  = 1 to create inf files to burn the wavs with CD-Text using wodim or cdrecord. Default:
              off.

       -p, --playlist number
              Create the m3u playlist file, or  use  --playlist  0.   For  file  names  without  full  path  use
              --playlist 2.  Default is full path for file names. Default 1 - on.

       -i, --interaction
              Specify --nointeraction if ripit shall take the first entry found and rip without any questioning.
              Default: on.

       --lcd  Use lcdproc to display status, default: not set.

       --lcdhost
              Specify the lcdproc host, default: localhost.

       --lcdport
              Specify the lcdport, default: 13666.

       --infolog file
              Log operations (system calls, file/directory creation) to file given with full path; default:  not
              set.

       -l, --lowercase number
              Lowercase  file  names and or directories (from tracktemplate and dirtemplate): number n = 0, off,
              1, on for file names and directories, 2, only for file names, 3, only  for  directories,  default:
              off.

       -u, --underscore
              Use underscores (_) instead of spaces in file names, default: off.

       --uppercasefirst
              Uppercase  first  letter of each word in file names and tags. Use this option if the CDDB entry is
              uppercase only. Default: off.

       -U, --utftag
              Keep Lame-tags in UTF-8 or decode them (but not the file names) from UTF-8 to  ISO8859-1.  Applies
              only  to  mp3  (Lame).  May  be  useful for tags with special characters and if mp3-player doesn't
              support Unicode.  Using Musepack one might want to pass the Musepack option  --unicode  to  option
              museopt. Note that combining with options --threads (and or --sshlist) may lead to issues and must
              be regarded as experimental.  Default: off.

       --rip  Rip the CD, to be used as --norip if wav  (or  flac)  files  are  present.   Previously  used  for
              debugging,  may  be  useful  to  re-encode  existing  wav or flac files in a given --inputdir (see
              below). Option --inputdir is mandatory in case --norip is used.  Default:  not  set.   Note:  this
              option can not be defined in the config file.

       --inputdir directory
              Full  path to the directory with wav or flac files to be re-encoded using option --norip. See also
              option --cdid to get awereness on some unexpected behaviour. Default: not set. Note:  this  option
              can not be defined in the config file.

       --cdid id
              Give a freedb.ord CDDBID or a musicbrainz discid in case lookup shall be done when re-encoding wav
              or flac files and existing track names (of wavs) or tags (in flac files) should  be  updated  when
              using  --norip. If not stated, ripit will try to detect an ID in playlist, toc or log files or cue
              sheets to retrieve local or online metadata. This means: a look-up may happen even if this  option
              is  not  stated. This may lead to some unexpected effects, e.g. differing directory or track names
              from those stated in option --inputdir, new tracknumbers in case ghost songs are  present,  merged
              multi  disc  releases  and  so  on.  Default: not set. Note: this option can not be defined in the
              config file.

       --encode
              Do encode the wavs. If only the wav-files shall be created, prevent encoding with --noencode  (and
              use option --wav, see below). Default: on.

       -w, --wav
              Keep the wav files after encoding instead of deleting them, default: off.

       -N, --normalize
              Normalizes the wave-files to a given dB-value (default: -12dB). Default: off.
              This is useful when encoding

              *  for hardware or software that doesn't support the replaygain‐feature

              *  to audio formats without replaygain capabilities.

       --normcmd
              Command to use for normalizing, default: normalize.

       -z, --normopt
              Options to pass to normalize.  Possible values:

                  -a -nndB   :   Normalize to -nn dB, default is -12dB,
                  Value range:   All values <= 0dB
                  Example    :   normalize -a -20dB *.wav
                  -b         :   Batch mode ‐ loudness differences between
                                 individual tracks of a CD are maintained
                  -m         :   Mix mode ‐ all track are normalized to the
                                 same loudness
                  -v         :   Verbose operation
                  -q         :   Quiet operation

              For  further  options see normalize documentation (http://normalize.nongnu.org).  Please note that
              normalizing to a high dB value, e.g. -6dB or less will lead to severe  compression  of  the  audio
              signal, thus losing sound quality. Keeping the default value of -12dB is recommended.
              Default: -b Option v (q) will be set according to verbosity chosen.

       -h, --help
              Print this and exit.

       -V, --version
              Print version and exit.

       -x, --verbose number
              Run  silent  (do  not  output  comments, status etc.) (number n = 0), with minimal output (n = 1),
              normal without encoder messages (n = 2), normal (n = 3), verbose (n = 4), extremely verbose  (n  =
              5).  Default 3.

       --config
              Read  parameters from config file or specify --noconfig to prevent reading it. A local config file
              in $HOME/.ripit/ will have higher priority, only if the local file does not exist, ripit will  try
              to read /etc/ripit/config. Default: on.

       --confname
              Read  parameters  from  a specific configuration file if special options are needed, this might be
              useful if operator wants different settings for discs containing  music  than  e.g.  audio  books.
              Default: config.

       --confdir
              Read parameters from a config file in a specific directory, default is $HOME/.ripit/.

       --save Add  parameters  passed  on command line to an existing config file. This does not overwrite other
              existing settings. Options of an existing config file will be adopted and the old  file  saved  as
              config.old no matter if a file named config.old already exists. Default: off.

       --savenew
              Save  all  parameters  passed  on  command  line  to a new config file, backup an existing file to
              config.old  no matter if a file named config.old already exists. Creates a default config file  if
              no options are passed on command line. Default: off.

       --loop value
              After  ejection of the previous CD continue ripping and encoding as soon as a new CD has been fed.
              This option forces ejection (--eject). The value is either 0 for normal use (single run) or 1  for
              (standard)  looping.  Experimental value 2 might be used to force immediate restart of the ripping
              process even if encoder did not yet complete. This will spoil  the  output,  this  will  show  the
              prompt  although  a  child  process  is  running  (waiting  for  a  new CD) and must be terminated
              explicitly.
              The config file will be read out on each run just before ejection of the disc. In case one  alters
              the  config  file  after  ejection,  close  the tray with the disc already done for re-reading the
              config and re-ejection of the disc. Therefore it might  be  useful  to  pass  as  few  options  as
              possible on the CL when using option --loop, because options passed on the CL can of course not be
              alterd with the config file during a loop.
              Default: off.

       --quitnodb value
              Give up CD if no CDDB entry found. Useful if option --loop  or  --nointeraction  are  on.  Default
              behaviour  is to let operator enter data or to use default artist, album and track names. Possible
              values: 0 - off, 1 - on, default: off

       --resume
              Resume a previously started session. Default: off.

       -O, --overwrite argument
              Default behaviour of Ripit is not to overwrite existing directories, a suffix  will  be  added  if
              directory  name  exists.  Use option overwrite to prevent this and either overwrite a previous rip
              (y) or force Ripit to quit (q) or even eject the disc (e). If ejection is chosen, the disc will be
              ejected even if option --eject has not been switched on. Default: off (n)

       --dpermission number
              Change the directory permission to number. Default: 0755.

       --fpermission number
              Change the file permission to number. Default: 0644.

       --md5sum
              Create a MD5-sum file for each type of sound files.

       --threads number
              Comma  separated  list  of  numbers giving maximum of allowed encoders to run at the same time. In
              conjunction with option sshlist the number for the local machine is mandatory and must  be  stated
              first.  Default: 1.

       -X, --execmd command
              State  a  command to be executed when ripit finished. The same variables as in the dirtemplate can
              be stated. When using MusicBrainz one can try to use $cd{asin} to pass the ASIN to the command  to
              be executed. Make sure to escape the command if needed. Default: not set.

       --precmd command
              State  a  command  to be executed before ripping started. The same variables as in the dirtemplate
              can be stated. When using MusicBrainz one can try e.g. to use $cd{asin} to pass the  ASIN  to  the
              command  to be executed, which might be useful when executing a script to retrieve coverart from a
              site. Make sure to escape the command if needed.  Default: not set.

EXAMPLES

       To specify a CD device, type

              ripit --device /dev/sr1

       To specify the output directory, type

              ripit --outputdir /foo/paths/

       To rip and encode a special track selection, type

              ripit 1,3-6,8-11

       To use several encoders in the same run, type

              ripit --coder 1,0,2 --quality 3,5,6

       In case many encoders are desired, option --threads may be handy on a multicore CPU (omitting any quality
       settings in this example)

              ripit --coder 0,1,2,4 --threads 4

       To use Lame with variable bitrate (VBR), type

              ripit --vbrmode new --bitrate 0

       Note,  one  should  reset the --bitrate to 0 (zero) if the -b option of Lame is not desired. According to
       VBR mode in Lame, use "new" or "old".

       It is recommended to use the preset switches for Lame, (see Lame man-page) and specify fast encoding with
       --vbrmode new (use --vbrmode old to switch off the fast encoding)

              ripit --preset extreme --vbrmode new

       To  pass  options related to the encoder use the according encoder option switch: e.g. to use the managed
       mode with oggenc:

              ripit -c 1 --oggencopt "--managed -b 192 -M 224 -m 96" --quality "off"

       Check for ghost songs and trim very long lead-in/out of each track:

              ripit --ghost --prepend 2.0 --extend 2.0

       Encode the same format in 2 qualities, at low quality for a portable, at high quality for home:

              ripit --dirtemplate '"cbr/$artist/$year ‐ $album"' \
                    --dirtemplate '"preset/$artist ‐ $album"' \
                    --coder 0,0 --bitrate off --quality off,off \
                    --lameopt "-b 128 -q 2,--preset extreme"

       Force Ripit to use one and the same directory for all sound files:

              ripit --dirtemplate '"/"' --outputdir="/media/sound" \
                    --resume

       To normalize the wave-files prior to encoding:

              ripit --normalize

       To normalize the files to -18dB using "mix mode" (see normalize documentation)

              ripit --normalize --normopt "-m -a -18dB"

       Add coverart retrieved from coverartarchive to the encoded files.  Note  that  instead  of  a  full  path
       ('"/home/me/$artist - $album/cover.jpg"') the evaluated internal variable $wavdir has been used to ensure
       that the cover goes to the right place in case Ripit alters  the  $wavdir  with  some  suffix  to  preven
       overwriting.

              ripit --noconfig -d /dev/cdrom -r 1 -c 2 --mb \
                    --coverart 1 --coverorg 1 --coverpath '"/$wavdir/cover.jpg"'

       Update  a  config  file  in ~/home/.ripit/ with options: to use Lame and Oggenc, don't create a m3u file,
       archive the CDDB entry files in ~/.cddb/"category"/ and to eject CD when done, type

              ripit --coder 0,1 --playlist 0 --archive --eject --save

       To do the job without any interaction, type

              ripit --nointeraction

       Re-encode wav or flac files in inputdir using a special configuration file with  settings  according  for
       re-encoding (e.g. switched overwrite mode on and use MusicBrainz to enable detection of track-offsets)

              ripit --confname config_4.0.0_reenc --inputdir "/home/me/sound/2c - We shall see/flac" --norip

       Rip only first 30 seconds of each track (useful for testing)

              ripit --span 0-30

       To use a network for encoding, make sure that the output paths are equal on all machines.

              ripit --sshlist sun,saturn,earth

       where  sun,  saturn  and  earth  are remote machines on which a user can login via ssh without entering a
       password or passphrase! Note that the paths must be equal for the user on all remote  machines!   If  the
       login is different on some machines, try

              ripit --sshlist login1@sun,login2@saturn,login3@earth

       If  there  is  "no" identical path on the remote machines, then the user might enter e.g. /tmp/ as output
       directory.  If the file-system is not mounted on each remote machine, one can try to copy the wavs to the
       remote machines using option --scp.

              ripit --sshlist sun,saturn,earth --scp

FILES

       User config file (/etc/ripit/config will only be used if there is no $HOME/.ripit/config):

              $HOME/.ripit/config
              /etc/ripit/config

              /usr/share/doc/packages/ripit/README
              /usr/share/doc/packages/ripit/HISTORY
              /usr/share/doc/packages/ripit/LICENSE

BUGS

       Probably there are more than some.

SEE ALSO

       cdparanoia(1), lame(1), oggenc(1), flac(1), normalize(1), cdda2wav(1), ffmpeg(1)

AUTHORS

       Ripit  is  maintained  by  Felix Suwald, please send bugs, wishes comments to ripit_[at]_suwald_[dot]_com
       with a concise subject.
       For bugs, wishes and comments about lcdproc, please contact
       max.kaesbauer_[at]_gmail_[dot]_com.
       Former maintainer:  Mads Martin Joergensen;  RipIT was originally developed by Simon Quinn.

       This manpage was originally created for the Debian GNU/Linux system by help2man  1.36  and  optimized  by
       Elimar Riesebieter <riesebie@lxtec.de>, enhanced and updated by the maintainer.