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
|
Check http://mp3splt.sourceforge.net for latest release.
# Mp3splt v. 2.1
---------------------------------------------------------------
NOTE for people who already used mp3splt
From this version some important changes took place:
- A new option (-p) has been introduced to read
user parameters for -s and -a options, both without
arguments now. Not using -p is equivalent to use
-s auto or -a auto in the old version.
NO: mp3splt -s auto file.mp3
YES: mp3splt -s file.mp3
NO: mp3splt -s off=1,rm file.mp3
YES: mp3splt -s -p off=1,rm file.mp3
- Threshold parameter (th) is now in dB. It's always
a negative number between -96 dB and 0 dB.
Please read man page for more detail
---------------------------------------------------------------
- bug fixed (not exatctly a bug of mp3splt, but let's call it like this...):
"correct" handling of misplaced Xing header of CRC-protected mp3
- feature improved: -p option introduced. Some order in the caos... ;-)
- feature improved: threshold is now in dB
- feature improved: sound level showed during silence detection
- feature improved (Thanks Marco): when using -q, no more check
on presence of ALBW or MP3WRAP string.
- sources (Thanks Marco): each error is different with a own ret number.
# Mp3splt v. 2.0e
- bug fixed: filenamed specified with -o was truncated after 10 chars.
- bug fixed: max number of albums per search increased to 512.
# Mp3splt v. 2.0d
- bug fixed: long filename for performer in CUE file caused seg fault
- bug fixed: bad parsing of CUE files (again.. ;), for global artist and album
- bug fixed: "EOF" string introduced to reach end of file. Now minimum
splitpoint number changed back to 2.
# Mp3splt v. 2.0c
- feature improved: number of digits for @n number optimized.
- feature improved: new parameter ("min") for -s to specify a minimum length.
- feature improved: number of found silence points displayed during process.
- important bug fixed: corrected CUE time parsing and hundredths calculation.
- bug fixed: answering 'n' to -e option question, didn't abort ;-)
# Mp3splt v. 2.0
---------------------------------------------------------------
NOTE for people who already used mp3splt
From this version some important changes took place:
- to specify output filename:
NO: mp3splt file.mp3 0.0 1.0 output.mp3
YES: mp3splt file.mp3 0.0 1.0 -o output.mp3
- silence option with user threshold and track number:
NO: mp3splt -s 0.45 file.mp3 10
YES: mp3splt -s th=0.45,nt=10 file.mp3
- "mp3splt.log" file with -s option changed format, old logs
are now incompatible with new version, and viceversa.
Please read man page for more detail
---------------------------------------------------------------
- new feature added: new option -k, for input not seekable.
- feature improved: now it's allowed to specify STDIN and STDOUT ("-")
- feature improved: now also parameters for -s option must be specified in
unic argument using th, nt, off, rm. Keep in order! ;-)
- feature improved: it is possible to remove silence with -s option. ("rm")
- feature improved: new parameter ("off") for -s and -a to adjust splitpoint
- feature improved: mp3info() completely rewritten using mad library.
- feature improved: more than one file can be specified on command line
- feature improved: now -o option extended to all uses for filename format.
- feature improved: possibility to specify only one split time to mean to
split from time to end of file.
- feature improved: no more [outputfile], you always have to use -o option,
even for one single file.
- "bug" fixed: original vorbis comment preserved for all splitted files.
- bug fixed (Thanks Lukasz Czarniecki): now performer for cue is taken in
account for ID3.
- bug fixed: better handling of files with Xing header. Also "bytes" field is taken
- bug fixed: corrected dirty bug for cue files with minutes over 99.
- bug fixed: missing break instruction in a switch() statement ;-)
- bug fixed: error notice if input and output files are the same file.
- bug fixed: MAXTRACKS redefined to 1000 (do you really want to split more
than 1000 files?? ;-)
# Mp3splt v. 1.9
NOTE: From this version an important change for auto-adjust took place:
Don't use -sc any more to adjust splitpoints wiith cddb, but -a and -c:
NO: mp3splt -sc file.cddb file.mp3
YES: mp3splt -a auto -c file.cddb file.mp3
YES: mp3splt -a gap=20,th=1.0 -c file.cddb file.mp3
Please read man page for more details.
- new feature added: -t option introduced. To split by time length.
- feature improved: -a introduced instead of -sc, now can be used to adjust also in manual mode.
- feature improved: -a option allows to specify threshold and gap for all uses.
- feature improved: -s option now allows to specify a threshold value.
- feature improved: output file can be "-" to indicate standard out (stdout).
- feature improved: now "End of file reached" displayed.
- feature improved: flength() now more elegant (and correct).
- bug fixed: CUE files parsing was wrong, now works better.
- bug fixed: when outputfile was specified, ID3 had "From: To:" blank
# Mp3splt v. 1.8
- new feature added: -d option introduced. To put output files in a directory.
- new feature added: -o option introduced. For a user output filename creation with c.
- feature improved: output filenames now are automatically zero padded for a correct order.
- feature improved: no limits to minutes and c_seconds() more readable.
- feature improved: now performer field of cue files is saved for use with @p.
- bug fixed: cleanstring now cleans '\r' for cddb and cue file in DOS format.
- bug fixed: fixed search of xing header for variable position of xing informations.
- bug fixed: cddb files parsing now understands multi-line song titles.
- bug fixed: smarter option handler, now options can be specified at any point.
- bug fixed: better error management, splt_abort() introduced.
- bug fixed: now serial numbers of ogg files are a bit more randomic (were all the same :D)
# Mp3splt v. 1.7
- new important feature added: -s option introduced. To split mp3
and ogg files using silence detection.
- new important feature added: now it is possible to autoadjust
splitpoints using -sc option with silence detection.
- new feature added: -e option introduced. To split concatenated mp3
or damaged wrapped files.
- bug fixed: in ogg.c, fixed find_end_cutpoint() for multiple
split points. s->intialgranpos is now correct.
# Mp3splt v. 1.6
Not public. Experimental split of ogg files using silence detection.
# Mp3splt v. 1.5
Not public. Experimental split of mp3 files using silence detection.
# Mp3splt v. 1.4
- new important feature added: Ogg files now supported! You can split them like mp3.
- new feature added: multiple time split can be specified in command line.
- new feature added: noID3 option added. If you need clean files.
- feature improved: in cddb mode, last track has end = -1; split() now understands what to do.
- bug fixed: added check for AlbumWrap files to prevent infinite while loop when file is damaged.
- bug fixed: in cddb query, added mem clean for dest.hostname.
- bug fixed: cleanstring() modified to trim strings for cddb.
- bug fixed: getword() redefined (another time ;) with the possibility to give errors.
- bug fixed: little bug in filename creation if file did not contain .mp3 (rare case)
- bug fixed: now handles config file open failure: standard connection without proxy.
- optimizations:
+ IMPORTANT optimization of split(), now faster using fread/fwrite instead of fgetc/fputc, with
no len information, instead use of feof() to understand end of stream.
+ less importance to mp3file.len, only for Total time
+ IMPORTANT code clean-up: all functions are now reentrant, no more global varables, instead large
use of state structures to fill informations on split process.
+ findhead() optimized: valid header found is saved in mp3_state,
no redundant call of getword()
+ mp3splt.c source cleaned. All mp3 related functions exported to mp3.c.
+ changed mp3info() to have similar behaviour as ogginfo().
+ improved output informations of split process. (and less intro lines...)
+ no more encoder guessing (no use). Instead channels informations (same as ogg)
+ standard ID3 title field has old filename information
+ id3option removed! I think it was useless and dirty for mp3splt.
Use other better programs to edit id3!
+ automatic filename creation now discards directory informations.
File will be created in current directory
# Mp3splt v. 1.3
- feature improved: added support for 2GB files, you need fseeko().
(This time it's true, at least in Linux version ;)
- feature improved: Lame header supported. I don't know if will keep
this feature. It forces frame mode also for CBR!
- bug fixed: Xing header has now correct informations on all
fields (I forgot bytes field :p)
- bug fixed: now id3option is always ignored when in quiet mode.
Even if you specify -qi
- bug fixed: check for all mp3wrap case combinations. People should
not put his own mp3wrap string, grr...
- bug fixed (Thanks ~WHEREamI): wrong coefficient in getid3v2().
Bug would appear for ID3 bigger than 2^21 bytes.
- bug fixed: in getopt(); now -c option can specified after filename.
(mp3splt file.mp3 -c f.cddb)
- bug fixed: MAXSYNC redefined to 300. This should be safe also for Mp3Wrap files.
- optimizations:
+ mp3 informations optimized: Informations are printed before split
process starts. Total time is only
minutes.seconds (useful when splitting). No more vbr average
bitrate (useless), instead
Total time for VBR with a Xing Header printed. Sync errors printed
at the end of process.
+ Check on time format before starting to analyse mp3 file.
+ Added other checks for header validity.
+ Some code clean-up
# Mp3splt v. 1.2
- new feature added: now mp3splt supports files created with Mp3Wrap v. 0.5 or higher that uses CRC
- new feature added: now mp3splt supports .cue files! Follow the
instructions in man page.
- new feature added (Thanks Franois Revol): list option introduced for wrap mode
Both with Mp3Wrap and AlbumWrap it only lists files without extraction.
- new feature added: quiet option introduced. Allows to run mp3splt
without any kind of user interaction.
- feature improved: VBR splitted files now begin with a Xing header
- feature improved (Thanks Franois Revol): added support of BeOS platform
- feature improved: frame mode warns about sync errors. Too many could mean a not valid mp3 file.
- feature improved: in wrap mode, now searches for mp3wrap index for 16384 bytes. This should be enough.
- feature improved: added check for "mp3wrap" string in lower case for mp3wrap file identification.
- bug fixed: ID3v2 detection is now compatible with newer versions of ID3v2 tags.
- bug fixed: wrong error notice when split failed and not in cddb mode
- bug fixed: cleanstring() added also for id.artist field
- bug fixed: added check for "Search" string len when querying CDDB. This fixed another mysterious
bug in WIN32 version when using proxy authentication (not all Windows version).
My fake getpass() didn't give the possibility to enter the Search keyword when querying CDDB.
- bug fixed: in WIN32 version, bug in proxy authentication due to missing mem clean
- optimizations:
+ some IMPORTANT opt. of findhead(), makehead() and mp3info(). Lot of redundant
code cleaned. Now mp3splt is 5 time faster when it searches for a valid header.
+ now mp3splt notices file absence before querying CDDB.
# Mp3splt v. 1.1
- feature improved: when splitting using CDDB, ID3v1 tag contains track number
- feature improved: higher precision with hundreds selection
- bug fixed: now program automatically discards invalid characters when querying CDDB
# Mp3splt v. 1.0
- package has now the configure script to compile sources under several platforms
- each source file is now independent for easy mantainance
- feature improved: percentage added also for cddb mode
- bug fixed: added check for file wrapped with Windows using '\' for dirs.
- bug fixed: sometimes wrong use of strncpy() for artist field
- bug fixed: optimization of getword()
- bug fixed: fixed compile error for some distributions, included netinet/in.h
- bug fixed: memory clear for login()
# Mp3splt v. 0.9 beta
- New important feature introduced:
Now splitpoints and filenames can be determined automatically by querying CDDB.
You can use this feature with -c option with two possibilities:
1) Directly contact Freedb server, search the wanted album, and get informations. (-c query)
2) Get informations from a local cddb file. (Which must be specified after -c).
Please read man page for more infos and for some warning about using this option.
- proxy support added
- vbr splitting improved: FPS (frame per second) calculation more
precise (Thanks Robert Hegemann)
- wrap option improved: now can split archive where files are wrapped
in subfolders
- bug fixed: now program exits when an invalid option is specified.
- bug fixed: now getword() is not invoked when file is not long enough.
- bug fixed: if begin and first valid frame were at 0, program always
discarded the first frame.
- bug fixed: in frame mode program jumped over the first byte because
of wrong initialization of begin variable.
- some code optimizations
# Mp3splt v. 0.8 beta
Not public. Experimental use of cddb.
# Mp3splt v. 0.7 beta
- feature improved: now minutes can be up to 9999
- bug fixed: added check on file integrity in wrap option
- bug fixed: probable bug for bad minutes[] variable definition
- bug fixed: now if filename does not contain ".mp3" is not truncated
# Mp3splt v. 0.6 beta
- New feature added: Wrap mode introduced.
Mp3splt v. 0.6 will automatically detect wrap method between:
+ Mp3Wrap: you can now split a mp3 file created with Mp3Wrap
Mp3Wrap is an utility that joins two or more mp3 files
in one large mp3, without loosing filename, and ID3
informations. Usally mp3wrap files end with .._MP3WRAP.mp3
With mp3splt you can now split albums in few seconds!
Mp3Wrap is FAST, CLEAN, and of course FREE (GPL).
You can find it at: http://mp3wrap.sourceforge.net
+ AlbumWrap: mp3splt is compatible also with this utility, which is
quite used on the Internet. You can split mp3 files created
with this utility. Usually have filenames like .._ALBW.mp3
- bug fixed: file creation failure for filenames shorter than 4 letters
- bug fixed: anomalous behaviour with empty files
# Mp3splt v. 0.5 beta
Not public. Experimental split of Mp3Wrap files
# Mp3splt v. 0.4 beta
- New feature added: min.sec[.tenth] introduced.
Higher precision to find split points with 1/10 of second.
- bug fixed: large files up to 4 GB are now supported
- bug fixed: better check on length of ID3's artist field
- bug fixed: added another check on time format in command line
- documentation: man page added to package with complete informations
# Mp3splt v. 0.3 beta
- New feature added: output file can be specified by user
- Now ID3 has informations on split points (in Album field)
- bug fixed: better check on minute format in command line
- bug fixed: VBR average bitrate was wrong
# Mp3splt v. 0.2 beta
- Many bugs and errors corrected. Now in beta testing.
- bug fixed: problems with searching a valid header
# Mp3Splt v. 0.2 alpha2
- bug fixed: more efficient frame searching
# Mp3splt v. 0.2 alpha1
- Variable bitrate splitting now supported!
- "Frame mode" introduced. More precise splitting
- ID3v1 detection avoid to write 2 or more tags
- ID3v2 detection increases speed for search of first valid header
- Now files end with a complete frame
- Other infos on mp3 (i.e. Frequence, Encoder Guess, etc.)
- important bug fixed: wrong bitrate detection
- bug fixed: time format in command line now accepts min > 99
- bug fixed: added many checks of mp3 validity
- buf fixed: wrong id3v1 creation with long strings
# Mp3splt v. 0.1b
- More clean mp3 files (new splitted files begin only with a valid header)
- bugs fixed
# Mp3splt v. 0.1
- Automatic bitrate detection
- ID3 Writing (Auto or Manual)
- bugs fixed
# Mp3splt v. 0.0
- first release
|