Provided by: mp3splt_2.6.2+20170630-3_amd64 bug

NAME

       mp3splt, oggsplt, flacsplt - utility for mp3, ogg vorbis and native flac splitting without decoding

SYNOPSIS

       mp3splt [OPTIONS] FILE_OR_DIR1 [FILE_OR_DIR2] ... [BEGIN_TIME] [TIME2] ... [END_TIME]

       FILE_OR_DIR:  mp3, ogg vorbis, native flac file to be split or a directory.  If you want to specify STDIN
       as input, you can use "m-" (or "-") when input  is  mp3,  and  "o-"  when  ogg.  Multiple  files  can  be
       specified, all files will be split with the same criterion. If a directory is specified, a recursive scan
       is performed in that directory to find out all the supported file formats.

       TIME FORMAT:

       minutes.seconds[.hundredths] or EOF-minutes.seconds[.hundredths]

              Minutes (required): There is no limit to minutes. (You must use this format also for minutes  over
              59)

              Seconds (required): Must be between 0 and 59.

              Hundredths  (optional): Must be between 0 and 99. Use them for higher precision.

       Multiple  split  points  can be specified. After the minimal 2, another indefinite number of split points
       can be specified. Each split point will be an end time for the previous, and a begin for  the  following.
       If   you   want   to   reach   the   end   of   file,  you  can  use  "EOF"  as  last  splitpoint.   EOF-
       minutes.seconds[.hundredths] only works when input is seekable.

DESCRIPTION

       mp3splt is a free command-line utility that allows you to split mp3, ogg vorbis  and  native  flac  files
       from  several splitpoints, without need of decoding and reencoding.  It is useful to split large mp3, ogg
       vorbis and native flac to make smaller files or to split entire albums to obtain original tracks.

       If you are splitting an album you can  get  splitpoints  and  filenames  automatically  from  servers  on
       internet  like freedb.org, tracktype.org or from a local .XMCD (.CDDB) or .CUE file (see -c option), with
       the possibility to adjust them automatically with silence detection (see -a option).

       You can also try to split files automatically with silence detection (see -s option),  trim  files  using
       silence detection (see -r option), or by a fixed time length (see -t option)

       Or  if  you  have  a file created either with Mp3Wrap or AlbumWrap, you can easily split it just with one
       command (see -w option).

       IMPORTANT NOTE for FLAC: FLAC support is still  experimental.  Please  use  with  caution.  Missing  FLAC
       features are stdin (input not seekable) and stdout.

       NOTE for MP3: usually mp3splt understands if mp3 is VBR by checking the presence of a Xing or Info header
       and will consequently start in framemode, but if this is not present,  mp3splt  will  start  in  standard
       mode.   This means that splitting process will be quicker, but imprecise due to variable bitrate, you can
       split those VBR files only with framemode (see -f option).

       NOTE for OGG: in some cases, mp3splt does not manage to split ogg vorbis streams correctly. Splitting the
       input file from 0.0 to EOF might fix the issues.

       NOTES  about  TAGS: by default, mp3splt will put the original tags in the split files with one exception:
       the track number starts at 1 and is incremented along split files. When copying the original  file  tags,
       only  one  artist,  album,  title  are supported.  Custom tags for the split files can be set with the -g
       option.  Setting exactly the same tags as the original file is possible with -g %[@O] (mp3  only)  or  -g
       %[@o].

       NOTE  about  MP3  TAGS: in order to extract the original tags from mp3 files, libmp3splt must be compiled
       with 'id3tag' support. By default, the output files will have the same ID3 tag version as the input file;
       this  behaviour  can  be  changed  with the -T option. If the input file has no tags and the -g option is
       used, then both ID3v1 and ID3v2 are written. Total  tracknumber  is  not  yet  supported.   Only  writing
       ID3v2.4  is  supported for custom tags; note that some software only support ID3v2.3 and will not be able
       to read them. However, it is possible to write the exact original tags using %[@O], keeping the same tags
       version as in the original file.

       NOTE  about  the  OUTPUT  DIRECTORY: by default, mp3splt will put the split files in the directory of the
       input file. In order to change the output directory, you can use one of the following options: -d or  -o.
       Please note that directories from the -o option will be created relative to the input file directory.

OPTIONS

       -w        Wrap Mode. Use to split file created with:

                 Mp3Wrap  http://mp3wrap.sourceforge.net:  This  tool  joins  two or more mp3 files in one large
                 playable file that usually contains the string MP3WRAP in filename and  a  special  comment  in
                 ID3v2.  If the file you are splitting is a Mp3Wrap file the splitting process will be very fast
                 and you will obtain all files just with one command.  If your filename contains MP3WRAP and you
                 have errors or you don't want to use wrap mode, just remove it from the file.

                 AlbumWrap:  mp3splt  is  compatible also with albumwrap files, which usually contain the string
                 ALBW in filename and ID3v2 contains AlbumWrap.  But, as AlbumWrap  extractor,  mp3splt  doesn't
                 give any warranty.

       -l        List  mode  (Only  for  Wrap mode).  Lists all tracks wrapped in a Mp3Wrap or AlbumWrap archive
                 without any extraction.  Use this to view the content of the file or to test if file is a valid
                 wrapped file.

       -e        Error  mode  (mp3  only).   It  is useful to split large file derivated from a concatenation of
                 smaller files. It detects split points from the  so  called  "sync  errors"  (data  that  break
                 stream,  such  as  ID3  or  junk  data).   Examples  of applicable files are wrapped file (both
                 AlbumWrap and Mp3Wrap) or file created by appending many mp3 files together.  So, when you have
                 a file to split, you should always try to use this option.

       -A AUDACITY_FILE
                 Audacity  labels  mode.   Split  with  splitpoints  from  the  audacity labels file. Example of
                 audacity labels file (in seconds):
                    10.000000 67.000000 first_file
                    67.000000 127.000000 second_file
                    149.000000  206.000000 third_file

       -t TIME[>MIN_TIME]
                 Time mode.  This option will create an indefinite number of smaller files  with  a  fixed  time
                 length  specified  by  TIME  (which has the same format described above). It is useful to split
                 long files into smaller (for example with the time length of a CD). Adjust option (-a)  can  be
                 used  to  adjust  splitpoints  with  silence  detection.  >MIN_TIME  can be used to specify the
                 theoretical minimum track length of the last segment; it allows avoiding to create  very  small
                 files   as  the  last  segment.  Make  sure  to  quote  the  argument  when  using  MIN_TIME  -
                 "TIME>MIN_TIME".

       -S SPLIT_NUMBER
                 Equal time tracks mode.  Split in SPLIT_NUMBER files.

       -r        Trim using silence detection, to trim using silence detection. To trim using silence  detection
                 we  need to decode files, so this option can be really slow if used with big files.  It accepts
                 some parameters with -p option (see below for a detailed  description):  threshold  level  (th)
                 which  is  the  sound  level  to  be considered silence, min (min) which is the minimum silence
                 length to trigger a trimming; this amount of silence will be kept in  the  split  file  at  the
                 beginning and at the end.

       -s        Silence  mode,  to  split  with  silence detection. When you use -s option, mp3splt attempts to
                 detect silence points in all the file (or just in some parts, see -a and -c below for this). To
                 detect  silence  we  need  to  decode files, so this option can be really slow if used with big
                 files.  It accepts some parameters with -p option  (see  below  for  a  detailed  description):
                 threshold  level  (th) which is the sound level to be considered silence, number of tracks (nt)
                 which is the desired number of tracks, cutpoint offset (off) which is the offset of cutpoint in
                 silence,  minimum_length  (min)  which is the minimum silence length in seconds, remove silence
                 (rm) which allows you to remove the silence between split tracks.  If  you  don't  specify  any
                 parameter,  mp3splt  will use the default values. Of course if you specify the number of tracks
                 to split, you will help mp3splt to understand what are the most probable split  points,  anyway
                 once  you scan a file with -s option, mp3splt will write a file named "mp3splt.log" in which it
                 saves all silence points found. If this file exists in the current working  directory,  mp3splt
                 will  read the splitpoints from this file and will not recompute the silence splitpoints.  This
                 allows you to run mp3splt with different parameters (except th and min)  without  decoding  the
                 file  again.  Finally, if the number of silence points is not correct, you have many chances to
                 achieve right result. For example if a silence point was not detected because  too  short,  you
                 can manually split the long track in the two smaller ones.  Or if file is an MP3 (not with ogg)
                 and there are too many silence points that can't be discarded reducing  track  number  (because
                 are  longer  than  right points) you can safely concatenate them with 'cat' programs or similar
                 ('copy /b file1+file2' for dos) because split files are consecutive, no  data  is  lost.   This
                 option  is  intended to split small/medium size (but even large if you can wait ;)  mp3 and ogg
                 files where tracks are separated by a reasonable silence time. To try to split mixed albums  or
                 files with consecutive tracks (such as live performances) might be only a waste of time.

                 Note about "mp3splt.log":

                   The first line contains the name of the split file
                   The second line contains the threshold and the minimum silence length
                   The next lines contain each one three columns:
                       ‐the first column is the start position of the found silence (in seconds.fractions)
                       ‐the second column is the end position of the found silence (in seconds.fractions)
                       ‐the  third  column is the order of magnitude of the silence length; it is useful to find
                 out most probable silence points

       -c SOURCE CDDB mode. To get splitpoints and filenames automatically from SOURCE, that is the  name  of  a
                 ".CUE"  file  (note that it must end with ".cue", otherwise it will be wrongly interpreted as a
                 cddb file) or a local .XMCD (.CDDB) file on your hard disk.

                 Furthermore, if you want to  split  using  internal  sheets,  SOURCE  must  be  internal_sheet.
                 Currently  two internal sheets are supported: internal CUE sheet of native FLAC files and ID3v2
                 chapters for MP3 files (note that there is  a  limitation  on  ID3v2  chapters  for  overlapped
                 chapters).

                 If you want to get informations from Internet, SOURCE must have one of the following formats:

                     query
                     query{album}
                     query{album}(ALBUM_RESULT_NUMBER)
                     query[search=protocol://SITE:PORT, get=protocol://SITE:PORT]
                     query[search...]{album}
                     query[search...]{album}(ALBUM_RESULT_NUMBER)

                 If  a  string is specified between '{' and '}', then the internet search is made on this string
                 and the user will not be requested to interactively input a search string.  The number  between
                 '('  and  ')'  is for auto-selecting the result number ALBUM_RESULT_NUMBER; thus, the user will
                 not be requested to interactively input a result number.

                 The other parameters between '[' and ']' are used to specify the protocols and  the  sites.  If
                 those  parameters  are  not  specified, default values will be chosen, which are good enough in
                 most cases.  Inside the square brackets, 'search' defines the CDDB  search  protocol  and  site
                 (for  searching the disc ID from the album and title); 'get' defines the CDDB download protocol
                 and site (for downloading the CDDB file from the disc  ID).  Valid  'search'  protocols  are  :
                 'cddb_cgi' and 'cddb_protocol'.  Valid 'get' protocols are: 'cddb_cgi'.

                 Examples:

                   query[search=cddb_cgi://tracktype.org/~cddb/cddb.cgi:80,get=cddb_cgi://tracktype.org/~cddb/cddb.cgi:80]
                   query[get=cddb_protocol://freedb.org:8880]
                   query[get=cddb_cgi://freedb.org/~cddb/cddb.cgi:80]

                 Mp3splt will connect to the server and start to find the requested informations. If  the  right
                 album is found, then mp3splt will query the server to get the selected album and (if no problem
                 occurs) will write a file named "query.cddb" from which will get splitpoints and filenames.

                 Proxy support: The first time that the user queries the internet (and if the quiet mode is  not
                 enabled),   mp3splt   asks   for   some  information  about  proxy  usage.  Mp3splt  has  basic
                 authentification support using base64 for HTTP proxies. A file named ´.mp3splt´ is  created  in
                 the  user  home  directory containing the informations provided by the user. Deleting this file
                 will make mp3splt to query the user again. Please note that the authentification storage is not
                 secure. The 'username:password' is stored as base64 and can be easily decoded.

                 IMPORTANT NOTE FOR CDDB: File split with this option can be not very precise due to:

                 1)  Who  extracts  CD tracks may use "Remove silence" option. This means that the large file is
                 shorter than CD Total time. Never use this option.
                 2) Who burns CD may add extra pause seconds between tracks. Never do it.
                 3) Encoders may add some padding frames so that file is longer than CD.
                 4) There are several entries of the same cd on CDDB. In mp3splt they appears with "\=>" symbol.
                 Try  some of them and find the best for yours; usually you can find the correct splitpoints, so
                 good luck!

                 YOU CAN USE THE -a OPTION TO ADJUST SPLITPOINTS!

       -a        Auto-adjust mode.  This option uses silence detection to auto-adjust  splitpoints.  It  can  be
                 used  in standard mode, or with -t and -c option (of course if there is silence in the file ;).
                 It accepts some parameters with -p option (see below for  a  detailed  description):  threshold
                 level  (th)  which  is the sound level to be considered silence, cutpoint offset (off) which is
                 the offset of cutpoint in silence, min (min) which is the minimum silence  length  in  seconds,
                 gap (gap) which is the gap value around splitpoint to search for silence.  If you don't specify
                 any parameter, mp3splt will use the default values.  With -a option splitting  process  is  the
                 same, but for each splitpoint mp3splt will decode some time (gap) before and some after to find
                 silence and adjust splitpoints.

       -p PARAMETERS
                 Parameters for -a, -s and -r option. When using -a, -s and -r option some users parameters  can
                 be specified in the argument and must be in the form:

                 <name1=value,name2=value,..>

                 You  can specify an indefinite number of them, with no spaces and separated by comma. Available
                 parameters are:

       For -s, -a and -r

       th=FLOAT  Threshold level (dB) to be considered silence. It is a float number between -96 and 0.  Default
                 is -48 dB, which is a value found by tests and should be good in most cases.

       shots=INTEGER
                 Positive  integer of  the minimum number of shots to be found as non silence after the silence.
                 Default is 25. Decrease this value if you need to split files having closer silence points.

       min=FLOAT Positive float of the minimum number of seconds to be considered as valid silence. All silences
                 shorter  than  min  are discarded. Default is 0.  For the trim silence split, it is the minimum
                 silence length to trigger a trimming; this amount of silence will be kept in the split file  at
                 the beginning and at the end.

       Both -s and -a

       off=FLOAT Float  number between -2 and 2 and allows you to adjust the offset of cutpoint in silence time.
                 0 is the begin of silence, and 1 the end. Default is 0.8.  In most cases, you will only need to
                 use a value between 0 and 1.

                 Offset visualization:

                                                v off=0    v off=1
                  ++++ ... ++++++++++++++++++++++----------++++++++++  ... +++++
                                            ^off=-0.5          ^off=1.5
                                       ^off=-1                      ^off=2
                                  ^off=-1.5
                           ^off=-2

                 Legend: pluses are 'audio', minuses 'silence', 'v' down-arrow, '^' up-arrow and '...' a segment
                 of the audio file (silence or audio)

       Only -s

       nt=INTEGER
                 Positive integer number of tracks to be split when using -s option. By default all  tracks  are
                 split.

       rm[=FLOAT_FLOAT]
                 It  is used to remove silence when using the -s option.  Can be used without additional numbers
                 - by default it will cut all the silence found.  Users can keep some of the  silence  found  by
                 passing the number of seconds to be kept at the beginning of the output files and at the end of
                 the output files. For example, 'rm=2_6' will keep 2 seconds of silence at the beginning of  the
                 split files and 6 seconds at the end.  If the silence length is less than the sum of the number
                 of seconds passed to the rm parameter, the split will convert the values to a percentage of the
                 silence  length. Taking the previous example, if the silence length is less than 8 seconds, the
                 split will be done at 75% of the silence segment starting from the beginning of the  silence  (
                 75% = 6/(2+6) ).

       trackmin=FLOAT
                 Positive  float of the minimum number of seconds for a track to be written out.  Tracks shorter
                 than trackmin will be skipped during the output phase.  The default value 0.0 means to not skip
                 any tracks.

       trackjoin=FLOAT
                 Positive  float of the minimum number of seconds for a track to be written out.  Tracks shorter
                 than trackjoin will be joined with others. The  main  difference  between  this  parameter  and
                 trackmin  is that using this one, no part of the original file will be lost.  The default value
                 of 0.0 means to not join any tracks.  If using both trackmin and trackjoin, tracks shorter than
                 trackmin will be discarded, but after the join.

       Only -a

       gap=INTEGER
                 Positive  integer  for  the time to decode before and after splitpoint, increase if splitpoints
                 are completely wrong, or decrease if wrong for only few seconds. Of course the smaller the gap,
                 the  faster the process.  Default gap is 30 seconds (so for each song, total decode time is one
                 minute).

       warn_if_no_aa
                 Print a warning for each splitpoint if it has not been auto-adjusted.

       error_if_no_aa
                 Stop the split process with error if one of the splitpoints has not been auto-adjusted.

       -f        Frame mode (mp3 only). Process all frames, seeking split positions by counting frames  and  not
                 with  bitrate  guessing.  In  this  mode  you  have higher precision and you can split variable
                 bitrate (VBR) mp3.  (You can also split costant bitrate mp3, but it will take more time).  Note
                 also  that  "high"  precision  means  that  time  seeking is reliable, but may not coincide for
                 example with another player program that uses time seeking with bitrate guessing, so make  your
                 choice.  Frame mode will print extra info on split process, such as sync errors.  If you obtain
                 some sync errors, try also to split with -e option.

       -b        [Experimental] Bit reservoir handling for gapless playback (mp3 only).  Handles  bit  reservoir
                 issues when splitting mp3 files. This option also allows playback at the exact sample specified
                 by the input time, instead of the music data boundaries. Warning: split files will play gapless
                 only  on  players  supporting  mp3 gapless playback using the LAME tag delay and padding values
                 (example of gapless mp3 players: cmus, mpg123, foobar2000).  The feature is heavily inspired by
                 pcutmp3  developed by Sebastian Gesemann.  Use with caution because it is still an experimental
                 feature.

       -k        Input not seekable. Consider input not seekable (default when  using  STDIN  as  input).   This
                 allows  you  to  split  mp3  streams  which can be read only one time and can't be seeked. Both
                 framemode and standard mode are available, but framemode can be really slow if  used  with  big
                 files,  because  to seek splitpoints we need to process all bytes and all frames. -k option (so
                 STDIN as input too) can't be used together with -s -a -w -e, because input must be seekable for
                 those options. Copying original tags is not yet supported for the non seekable option.

       -M        Write  MD5 sum (FLAC only). Using this option, the frames are decoded just before being written
                 in the output files and MD5 sum of the unencoded data is computed  in  order  to  complete  the
                 STREAMINFO metadata block of the created files.  This option is disabled by default because the
                 decoding process makes the split to be much slower (it can be  twice  slower).   However,  even
                 when  using  this option, the process remains faster compared to splitting by decoding and then
                 re-encoding.

       -O TIME   Overlap split files. TIME will be added to each end splitpoint.  Current implementation of this
                 option makes the split slower.

       -o FORMAT Output  format.  FORMAT  is  a string that will be used as output directory and/or filename. If
                 FORMAT contains the DIRCHAR character ('\' on windows and '/' on  other  systems),  directories
                 will  be  created  for each DIRCHAR if they don't exist and the output files will be created in
                 the corresponding directory. If the -d option is not specified, the  output  directory  is  the
                 concatenation  of the input file directory and the extracted path from FORMAT. If the -d option
                 is also specified, the output directory will be the concatenation between the -d  option  value
                 and the extracted path from the -o FORMAT (characters up to the last DIRCHAR). Invalid filename
                 characters from the tags are transformed to '_'.

                 It can contain name variables, that must begin with @ char and that can be:

                 @A: performer if found, otherwise artist
                 @a: artist name
                 @p: performer of each song (only with .cue)
                 @b: album title
                 @g: genre
                 @t: song title*
                 @n: track number identifier* (not the real ID3 track number)**
                 @N: track tag number**
                 @l: track number identifier as lowercase letter* (not the real ID3 track number)**
                 @L: track tag number as lowercase letter**
                 @u: track number identifier as uppercase letter* (not the real ID3 track number)**
                 @U: track tag number as uppercase letter**
                 @f: input filename (without extension)
                 @d: last directory of the input filename or the filename itself if no directory
                 @m, @s or @h: the number of minutes, seconds or hundreths of seconds of the start splitpoint**
                 @M, @S or @H: the number of minutes, seconds or hundreths of seconds of the end splitpoint**

                 (**) One digit may follow defining the number of digits to output.
                 If the digit is 0, then a special rule is applied when the pattern value is equal to 0:
                 - the pattern is discarded
                 - all characters like : _ . and -. preceding it are discarded
                 - all characters following it are discarded up to the next @ or a separator like : _ . and -
                 This rule is useful for discarding the last part of the time when  equal  to  0.   For  example
                 @m_@s_@h0hundreths__@M_@S will only output @m_@s__@M_@S if the hundreths of seconds are 0.

                 When  split  files  are more than one, at least one of @t, @n, @N, @l, @L, @u or @U (*) must be
                 present to avoid ambiguous names.  You can put any prefix, separator, suffix in the string, for
                 more  elegance.   To  make easy the use spaces in output filename without interfering with line
                 parameters, you can use the char '+' that will be automatically replaced with a  space.   Valid
                 examples are:

                 @n_@a_@b_@t
                 @a+-+@n+-+@t (default if using -c and -o is not specified)
                 @a/@b/@t_@n (will create the directories '<artist>' and '<artist>/<album>')
                 @f_@n+@m:@s+@M:@S

       -d NAME   Output  directory.   To put all output files in the directory named NAME. If directory does not
                 exists, it will be created. The -o option can also be used to output files into a directory.

       -n        No tags. Does not write ID3 or Vorbis comment in output files. Use if  you  need  clean  files.
                 See also the -x option.

       -x        No  Xing header. Does not write the Xing header in output files. Use this option with -n if you
                 wish to concatenate the split files and obtain a similar file as the input file.

       -T TAGS_VERSION
                 Force output tags version. For mp3 files, force output ID3 tags  as  version  ID3v1,  ID3v2  or
                 ID3v1  and  ID3v2. TAGS_VERSION can be 1, 2 or 12. Default is to set the output tags version as
                 the tags version of the input file.

       -C ID3V2_TEXT_ENCODING
                 Set  encoding  of  the  ID3V2  tags.  For  mp3  files,  set  the  encoding   of   ID3V2   tags.
                 ID3V2_TEXT_ENCODING can be 1 for latin1 (iso-8859-1), 8 for UTF-8 or 16 for UTF-16.  Default is
                 UTF-16.

       -I INPUT_TAGS_ENCODING_FOR_ID3V2
                 Set encoding of the input tags for mp3  files.   INPUT_TAGS_ENCODING_FOR_ID3V2  can  be  1  for
                 latin1 (iso-8859-1), 8 for UTF-8 or 16 for UTF-16.  Default is UTF-8.

       -N        No silence log file. Don't create the 'mp3splt.log' log file when using silence detection. This
                 option cannot be used without the '-s' option.

       -K        Keep original tags for CDDB or CUE. When importing a CDDB or CUE file, set the  original  input
                 file tags and then replace them with those read from the imported file.

       -g TAGS   Custom  tags. Set custom tags to the split files.  If you want to set spaces in tags, you might
                 need to double quote the whole TAGS.  TAGS should contain a list of square brackets  pairs  [].
                 The  tags  defined  in  the  first pair of square brackets will be set on the first split file,
                 those defined in the second pair of square brackets will be set on the second split  file,  ...
                 Inside a pair of square brackets, each tag is defined as @variable=value and tags are separated
                 by comma. If a percent sign % is found before the open square bracket character, then the  pair
                 of  square  brackets  following  the  % character will define the default tags in the following
                 files. Multiple '%' can be defined. An optional 'r' character can be placed at  the  start,  to
                 replace tags in tags. The 'replace tags in tags' option is not recursive. The variables can be:

                 @a: artist name
                 @b: album title
                 @t: audio title
                 @y: year
                 @c: comment
                 @g: genre
                 @n: track number (set to -2 for none)
                 @o: set original tags
                 @O: set exactly the same original tag bytes and discard other variables (mp3 only)
                 @N:  auto  increment track number: this variable has to be placed inside the %[] field in order
                 to have the track number auto incremented for all the split files following it
                 @m, @s or @h: the number of minutes, seconds or hundreths of seconds of the start splitpoint
                 @M, @S or @H: the number of minutes, seconds or hundreths of seconds of the end splitpoint

                 Using the 'replace tags in tags' option, you can also use the following  variables,  which  are
                 replaced  by the data from the original tags: #a, #b, #t, #y, #c, #g.  Note that this will only
                 work if @o has been found before.

                 Example  of  tags  format:  %[@o,@N=1,@b=special_album][@a=foo,@b=bar][@t=footitle].  In   this
                 example,  the  first split file will have the original tags with album tag replaced by 'special
                 album'; the second split file will have the tags of  the  first  split,  with  the  artist  tag
                 replaced  by 'foo' and the album tag replaced by 'bar'; the third split file will have the tags
                 of the first split, with the title tag replaced by 'footitle'. The track number will start at 1
                 for the first split file and auto increment to the other files.

                 Example of replacing tags in tags: r%[@o,@N=1,@b=album,@a=artist_@b_@N]. Having the 'r' option,
                 the   replace   tags   in   tags   mode   is    activated;    thus,    output    artists    are
                 'artist_album_1','artist_album_2',   ...    Without   the   'r'   option,  output  artists  are
                 'artist_@b_@N'.

                 Replacement is  not  recursive:  r%[@o,@N=1,@b=album_@N,@a=artist_@b]  will  output  albums  as
                 'album_1', 'album_2', ... but artists as 'artist_album_@N'.

                 Example  of  replacing tags in tags with # variables: r%[@o,@N=1,@t=@N_#t]This will prepend the
                 auto incremented track number to the original input file title; supposing that the  input  file
                 title is 'one_title', this will set the titles as follows: '1_one_title', '2_one_title', ...

       -G regex=REGEX
                 Tags  from  filename regex. Set tags from input filename regular expression.  REGEX can contain
                 those variables:
                    (?<artist>), (?<album>), (?<title>), (?<tracknum>), (?<year>), (?<comment>), (?<genre>)

                 Example: if the input filename is artist1__album2__title3__comment4__2__2004__Samba.ogg,
                 the                      following                      regular                      expression
                 (?<artist>.*?)__(?<album>.*?)__(?<title>.*?)__(?<comment>.*?)__(?<tracknum>.*?)__(?<year>.*?)__(?<genre>.*)
                 extracts the tags:
                   (?<artist>): artist1
                   (?<album>): album2
                   (?<title>): title3
                   (?<genre>): Samba
                   (?<comment>): comment4
                   (?<tracknum>): 2
                   (?<year>): 2004

       -m M3U    Create .m3u file. Creates a .m3u file containing the split files. The generated .m3u file  only
                 contains  the  split filenames without the path. If an output directory is specified with -d or
                 -o, the file is created in this directory. The path of M3U is ignored. This  option  cannot  be
                 used with STDOUT output.

       -E CUE_FILE
                 Export  to  .cue  file.  Creates  a .cue file containing the splitpoints.  Use -P to export the
                 splitpoints without actually splitting.  The cue file contains the tags of the  splitpoints  as
                 comments  (for  example  REM  ALBUM, REM GENRE, REM DATE). There is however one limitation: REM
                 TRACK is not written if the track was auto incremented without user defined tags.

       -F FULL_SILENCE_LOG_FILE
                 Export the full log of silence detection. The full log filename is useful to draw the amplitude
                 wave of the input file (in dB) in order to choose a threshold.

                 Note about the file structure:
                      ‐the  first  column  is  a  dummy  column  which is always zero, for plotting on zero axis
                 purposes
                      ‐the second column is the time in seconds as double
                      ‐the third column is the dB level
                      ‐the fourth column is the silences shots counter
                      ‐the five column is the number of splitpoints found
                      ‐the sixth column is the start time of the silence spot found
                      ‐the seventh column is the end time of the silence spot found

                 Example of plotting the full log file with gnuplot:

                 gnuplot -e "file='silence_logs.txt'; set decimalsign locale; set xlabel 'Time in seconds'; plot
                 file  using  2:3 title 'Threshold', file using 2:4 title 'Silence shots' with linespoints, file
                 using 2:5 title 'Number of silence points found' with fsteps, file using 6:1  title  'Begin  of
                 silence', file using 7:1 title 'End of silence' with points; pause -1"

       -P        Pretend to split. Simulation of the process without creating any files or directories.

       -q        Quiet  mode.  Stays  quiet :) i.e. do not prompt the user for anything and print less messages.
                 When you use quiet option, mp3splt will try to end program without asking anything to the  user
                 (useful  for  scripts).   In  Wrap  mode  it will also skip CRC check, use if you are in such a
                 hurry.

       -Q        Very quiet mode. Enables the -q option and does not  print  anything  to  STDOUT.  This  option
                 cannot be used with STDOUT output.

       -D        Debug  mode.  Experimental  debug  support.  Print extra informations about what is being done.
                 Current print doesn't have a nice format.

       -v        Print version. Print the version of mp3splt and libmp3splt and exit.

       -h        Print help. Print a short usage of mp3splt and exit.

EXAMPLES

       mp3splt album.mp3 54.32.19 67.32 -o out
       mp3splt album.ogg 54.32.19 67.32 -o out

       This is the standard use of mp3splt for constant bitrate mp3 or for any ogg.  You specify  a  begin  time
       (which in this case uses hundredths, 54.32.19), an end time and an output file.

       mp3splt -f -d newdir album.mp3 album2.mp3 145.59  234.2

       This  is  frame  mode  for  variable  bitrate  mp3 and multiple files.  You can see that time format uses
       min.sec   even   if   minutes   are   over   60.     Output    files    in    this    case    will    be:
       album_145m_59s_0h__234m_2s_0h.mp3  and  album2_145m_59s_0h__234m_2s_0h.mp3 because user didn't specify it
       and they will be in the directory named newdir.

       mp3splt  -nf album.mp3  0.12  21.34.7  25.3  30.40  38.58

       This is the use of -n option and multiple splitpoints. Four files will be created and  will  not  contain
       ID3 informations.

       mp3splt  -w  album_MP3WRAP.mp3

       This  is  Wrap  mode.  You  can  use  this when mp3 is a file wrapped with Mp3Wrap or AlbumWrap.  You can
       specify an output directory with the -d option.

       mp3splt  -lq  album.mp3

       This is List mode. You can use this when you want to list all tracks of a wrapped file without extracting
       them.  With quiet option (-q), program will not calculate CRC!

       mp3splt -s f.mp3 or mp3splt -s -p th=-50,nt=10 f.mp3

       This  is  silence option. Mp3splt will try to automatically detect splitpoints with silence detection and
       in the first case will split all tracks found with default parameters, while in the second 10 tracks  (or
       less if too much) with the most probable silence points at a threshold of -50 dB.

       mp3splt  -c  file.cddb  album.mp3

       This is CDDB mode with a local file. Filenames and splitpoints will be taken from file.cddb.

       mp3splt  -c  query  album.mp3

       This  is CDDB mode with internet query. Will ask you the keyword to search and you will select the wanted
       cd.

       mp3splt  -a -c  file.cddb album.mp3

       This is CDDB mode with auto-adjust option (default parameters). Splitpoints will be adjusted with silence
       detection in a range of 30 seconds before and after cddb splitpoints.

       mp3splt  -a -p gap=15,th=-23,rm -c  file.cddb album.mp3

       This is CDDB mode with auto-adjust option. Splitpoints will be adjusted with silence detection in a range
       of 15 seconds before and after cddb splitpoints, with a threshold of -23 dB, and silence will be removed.

       mp3splt  -c  query  album.mp3 -n -o @n_@t

       This is CDDB mode with internet query with Frame mode, NoID3 and Output format.  Output filenames will be
       named like: 01_Title.mp3

       mp3splt  -t  10.00  album.mp3

       This is -t option. It will split album.mp3 in many files of 10 minutes each.

BUGS

       Report any bugs you find to authors (see below). Advices, support requests and contributions are welcome.

SEE ALSO

       mp3wrap(1)

AUTHORS

       Matteo Trotta <mtrotta@users.sourceforge.net>
       Alexandru Ionut Munteanu <m@ioalex.net>

DISTRIBUTION

       Visit http://mp3splt.sourceforge.net for latest release.

       mp3splt-project is

       (C) 2002-2005 by Matteo Trotta
       (C) 2005-2014 by Alexandru Ionut Munteanu

       Permission  is granted to copy, distribute and/or modify this document under the terms of the GNU General
       Public License.  This can be found as COPYING in mp3splt packages.

                                                                                                      MP3SPLT(1)