File: mp3splt.1

package info (click to toggle)
mp3splt 2.1c-4
  • links: PTS, VCS
  • area: main
  • in suites: lenny
  • size: 628 kB
  • ctags: 295
  • sloc: ansic: 4,196; sh: 675; makefile: 82
file content (420 lines) | stat: -rw-r--r-- 17,667 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
.\" This -*- nroff -*- file has been generated from
.\" DocBook SGML with docbook-to-man on Debian GNU/Linux.
.\"
.\"	transcript compatibility for postscript use.
.\"
.\"	synopsis:  .P! <file.ps>
.\"

.de IPs
.IP "\\$1" \n(SS
..
.\" begin of first level suboptions, end with .RE
.de RSs
.RS \n(IN+13
..
.\" begin of 2nd level suboptions
.de RSss
.PD 0
.RS \n(SS+3
..
.\" end of 2nd level suboptions
.de REss
.RE
.PD 1
..
.

.de P!
\\&.

.fl			\" force out current output buffer
\\!%PB
\\!/showpage{}def
...\" the following is from Ken Flowers -- it prevents dictionary overflows
\\!/tempdict 200 dict def tempdict begin
.fl			\" prolog
.sy cat \\$1\" bring in postscript file
...\" the following line matches the tempdict above
\\!end % tempdict %
\\!PE
\\!.
.sp \\$2u	\" move below the image
..
.de pF
.ie     \\*(f1 .ds f1 \\n(.f
.el .ie \\*(f2 .ds f2 \\n(.f
.el .ie \\*(f3 .ds f3 \\n(.f
.el .ie \\*(f4 .ds f4 \\n(.f
.el .tm ? font overflow
.ft \\$1
..
.de fP
.ie     !\\*(f4 \{\
.	ft \\*(f4
.	ds f4\"
'	br \}
.el .ie !\\*(f3 \{\
.	ft \\*(f3
.	ds f3\"
'	br \}
.el .ie !\\*(f2 \{\
.	ft \\*(f2
.	ds f2\"
'	br \}
.el .ie !\\*(f1 \{\
.	ft \\*(f1
.	ds f1\"
'	br \}
.el .tm ? font underflow
..
.ds f1\"
.ds f2\"
.ds f3\"
.ds f4\"
'\" t
.ta 8n 16n 24n 32n 40n 48n 56n 64n 72n
.TH "MP3SPLT" "1"
.SH "NAME"

mp3splt \(em Utility for mp3/ogg splitting without decoding
.SH "SYNOPSIS"
.PP
\fBmp3splt [OPTIONS] FILE... [BEGIN_TIME] [END_TIME...]\fP
.PP
\fBFILE\fP: mp3 or ogg file to be splitted. Note that mp3splt will recognize an ogg file
instead of mp3 only from extension. So if your file is Ogg Vorbis, it must end with ".ogg".
If you want to specify STDIN as input, you can use "-" when input is mp3, and "o-" when ogg.
Multiple files can be specified, all files will be splitted with the same criterion.

.PP
\fBTIME FORMAT\fP: begin_time and end_time must be in this form:
.PP
\fBminutes.seconds[.hundredths]\fP
.IP
\fBMinutes\fP (required): There is no limit to minutes. (You must use this format also for minutes over 59)
.IP
\fBSeconds\fP (required): Must be between 0 and 59.
.IP
\fBHundredths\fP  (optional): Must be between 0 and 99. Use them for higher precision.

.PP
Multiple split points can be specified. After the minimal 2, another indefinite number of split points (up to 1000) can
be specified. Each split point will be an end time for the previous, and a begin for the following.
An invalid time format (and the next ones) will be ignored (except for the one following filename
that will be considered another file to be splitted). If you want to reach the end of file,
you can use "EOF" as last splitpoint.

.SH "DESCRIPTION"
.PP
\fBmp3splt\fP is a free command-line utility that allows you to
split mp3 and ogg files from a begin time to an end time,
without need of decoding and reencoding.
It's useful to split large mp3/ogg 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 Freedb.org server on internet
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), 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).

.PP
\fBNOTE for MP3:\fP 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 will be imprecise due to variable bitrate,
you can split those VBR files only with framemode (see \-f option).
.SH "OPTIONS"
.IP "\fB-w\fP         " 10
\fBWrap Mode\fP. Use to split file created with:

\fBMp3Wrap (http://mp3wrap.sourceforge.net)\fP: 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 filename.

\fBAlbumWrap\fP: 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.

.IP "\fB-l\fP         " 10
\fBList mode\fP (Only for Wrap mode).
Lists all tracks wrapped in a Mp3Wrap or AlbumWrap archive without any extraction.
Use this to view only the content of the file or to test if file is a valid wrapped file.

.IP "\fB-e\fP         " 10
\fBError mode\fP (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.

.IP "\fB-t TIME\fP         " 10
\fBTime mode\fP.
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.

.IP "\fB-s\fP         " 10
\fBSilence mode\fP,
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):
.I threshold
level (th) which is the sound level to be considered silence,
.I number
of tracks (nt) which is the desired number of tracks, cutpoint
.I offset
(off) which is the offset of cutpoint in silence,
.I minimum_length
(min) which is the minimum silence length in seconds,
.I remove
silence (rm) which allows you to remove the silence between splitted 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. This allows you to run mp3splt with different parameters (except th and min)
without need of decoding 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 splitted files are consecutive,
no data is lost and no ID3 is written for this purpose.
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.

.IP "\fB-c SOURCE\fP         " 10
\fBCDDB mode\fP. 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.
If you want to get informations from Internet, just type "query" instead of filename. mp3splt will
connect to server, will ask you some keywords and will start to find the requested informations.
If you will find the right album, then mp3splt will finally query the server to get the selected album
and, if all is correct, will write a file named "query.cddb" from which will get splitpoints and filenames.
ID3v1 will be created automatically with taken informations. The first time you
run mp3splt with "query" option, it will ask you if you use a proxy, just fill out informations.

\fBIMPORTANT NOTE FOR CDDB\fP: File splitted 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.
.br
2) Who burns CD may add extra pause seconds between tracks. Never do it.
.br
3) Encoders may add some padding frames so that file is longer than CD.
.br
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 for your mp3, so good luck!

\fBYOU CAN USE \-a OPTION TO ADJUST SPLITPOINTS!\fP

.IP "\fB-a\fP         " 10
\fBAuto-adjust mode\fP.
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):
.I threshold
level (th) which is the sound level to be considered silence, cutpoint
.I offset
(off) which is the offset of cutpoint in silence,
.I 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.

.IP "\fB-p PARAMETERS\fP         " 10
\fBParameters for \-a and \-s option\fP. When using \-a and \-s option some users parameters can be specified in
the argument and must be in the form:

\fB<name1=value,name2=value,..>\fP

You can specify an indefinite number of them, with no spaces and separated by comma. You can let mp3splt
decide all values by writing just "auto", which will set all parameters to default values.
Available parameters are:

.IP "\fBBoth -s and -a\fP"

.IP \fBth=FLOAT\fP
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.
.IP \fBoff=FLOAT\fP
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.

.IP "\fBOnly \-s\fP"

.IP \fBnt=INTEGER\fP
Positive integer number of tracks to be splitted when using \-s option. By default all tracks are splitted.
.IP \fBmin=FLOAT\fP
Positive float of the minimum number of seconds to be considered a valid splitpoint. All silences shorter than min are discarded.
.IP \fBrm\fP
Does not require an additional number and it used to remove silence when using \-s option.

.IP "\fBOnly \-a\fP"

.IP \fBgap=INTEGER\fP
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).

.IP "\fB\-f\fP         " 10
\fBFrame mode (mp3 only)\fP. 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 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.

.IP "\fB\-k\fP         " 10
\fBInput not seekable\fP. Consider input not seekable (default when using STDIN as input).
This allows you to split mp3 and ogg 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.

.IP "\fB\-o FORMAT\fP         " 10
\fBOutput format\fP,
to specify an output filename. FORMAT is a string that will be used
as output filename. When using \-c option, it can contain name variables,
that must begin with @ char and that can be:

@a: artist name
.br
@p: performer of each song (only with .cue)
.br
@b: album title
.br
@t: song title*
.br
@n: track number* (valid also when not using \-c)

When splitted files are more than one, at least one between @t and @n (*) 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
.br
@a+-+@n+-+@t (default if using \-c and \-o is not specified)

.IP "\fB\-d NAME\fP         " 10
\fBOutput directory\fP.
To put all output files in the directory named NAME. If directory does not exists,
it will be created.

.IP "\fB\-n\fP         " 10
\fBNo Tag\fP. Does not write ID3 or Vorbis comment in outputfile. Use if you need clean files.
.IP "\fB\-q\fP         " 10
\fBQuiet mode\fP. 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.

.SH "EXAMPLES"
.PP
\fBmp3splt album.mp3 54.32.19 67.32 \-o out.mp3\fP
.br
\fBmp3splt album.ogg 54.32.19 67.32 \-o out.ogg\fP

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.
.PP
\fBmp3splt \-f \-d newdir album.mp3 album2.mp3 145.59  234.2\fP

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_145.59_234.2.mp3 and album2_145.59_234.2.mp3
because user didn't specify it and they will be in the directory named newdir.
.PP
\fBmp3splt  \-nf album.mp3  0.12  21.34.7  25.3  30.40  38.58\fP

This is the use of \-n option and multiple splitpoints. Four files will be created
and will not contain ID3 informations.
.PP
\fBmp3splt  \-w  album_MP3WRAP.mp3\fP

This is Wrap mode. You can use this when mp3 is a file wrapped with Mp3Wrap or AlbumWrap.
You have not to specify further arguments because all will be automatic.

.PP
\fBmp3splt  \-wlq  album.mp3\fP or just \fBmp3splt  \-lq  album.mp3\fP

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!

.PP
\fBmp3splt \-s f.mp3\fP or \fBmp3splt \-s \-p th=-50,nt=10 f.mp3\fP

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.

.PP
\fBmp3splt  \-c  file.cddb  album.mp3\fP

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

.PP
\fBmp3splt  \-c  query  album.mp3\fP

This is CDDB mode with internet query. Will ask you the keyword to search and you will select
the wanted cd.
.PP
\fBmp3splt  \-a \-c  file.cddb album.mp3\fP

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.

.PP
\fBmp3splt  \-a \-p gap=15,th=-23,rm \-c  file.cddb album.mp3\fP

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.
.PP
\fBmp3splt  \-c  query  album.mp3 \-n \-o @n_@t\fP

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

.PP
\fBmp3splt  \-t  10.00  album.mp3\fP

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

.SH "BUGS"
.PP
Report any bugs you find to Author (see below). Advices and info requests are welcome.
.SH "SEE ALSO"
.PP
\fBmp3wrap\fP(1)
.SH "AUTHOR"
.PP
Matteo Trotta <mtrotta@users.sourceforge.net>.
.SH "DISTRIBUTION"
.PP
Visit
.I http://mp3splt.sourceforge.net
for latest release.
.PP
.I mp3splt
is (C) 2002-2004 by Matteo Trotta
.PP
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.
.\" created by instant / docbook-to-man, Sun 17 Feb 2002, 11:18