Changes between 1.3 and 1.3.1 are:
Fixed Ogg Vorbis length detection on AMD-64
Fixed crash on some invalid MP3s (regression from 1.2 to 1.3) where
corruped tags caused crashes or out of memory errors
Clear the ID3v1 track number when attempting to set it to a value greater
than 255 (8-bit value)
Fixed crash in invalid APE tags where the number of tag items didn't match
up with the number actually present
Added other additional sanity checks to the APE parsing code that should
make it more robust
Fixed Makefile problem that caused the apeitem.h header to not be
installed and made it impossible to use the APE API directly
Added support for APE tags
Added support for MPC files
Added support for APE tags in MP3 files
Added support for compressed ID3v2 frames
Added support for uniuque file identifier frames in ID3v2
Added checks for several potential divide by zero (SIGFPE) cases
Fixed support for custom text frames
Fixes PR 27061 (basically applied the patch in PR, but added the change to
buildlink3.mk and removed LIBTOOLIZE_PLIST option from Makefile.)
in the process. (More information on tech-pkg.)
Bump PKGREVISION and BUILDLINK_DEPENDS of all packages using libtool and
installing .la files.
Bump PKGREVISION (only) of all packages depending directly on the above
via a buildlink3 include.
All library names listed by *.la files no longer need to be listed
in the PLIST, e.g., instead of:
lib/libfoo.a
lib/libfoo.la
lib/libfoo.so
lib/libfoo.so.0
lib/libfoo.so.0.1
one simply needs:
lib/libfoo.la
and bsd.pkg.mk will automatically ensure that the additional library
names are listed in the installed package +CONTENTS file.
Also make LIBTOOLIZE_PLIST default to "yes".
Changes from 1.1 to 1.2
New Features:
Add support for FLAC data in Ogg containers ("Ogg FLAC" files)
Added support for relative volume adjustment (RVA2) ID3v2 frames
Added support for attached picture (APIC) ID3v2 frames
Return a bool on File::save() to indicate success or failure
Implemented support for reading ID3v2 frame header flags
Return false from isValid() for FLAC files that are not parsed properly
Move the Vorbis classes into the Ogg namespace (binary and source
compatibility preserved)
Added a convenience function fo accessing a list of ID3v2 frames of a
certain ID using ID3v2::Tag::frameList(const ByteVector &frameID)
Add access to the ID3v1, ID3v2 and XiphComments of FLAC files to the
public API
ByteVector optimizations to speed up copying
Add find() and erase() methods to Map
Added iterators and index operators to the string class
Plays nicely with ID3v2.4 tags generated by libid3tag
Plus bug fixes
Changes from 1.0 to 1.1
Added ID3v2.2 support (previous support was for ID3v2.3 and ID3v2.4) since
iTunes seems to still use this very old version of the ID3v2 standard
Fixed an API bug in MPEG::File that made it difficult to override the
default frame factory
Make it possible to override the default string handler for ID3v1 tags.
This makes it possible for applications to provide decoders that work with
something other than ISO-8859-1 ID3v1 tags
Switch from passing around a bool indicating whether to use synch-safe ints
or not and pass the ID3v2 revion number. This is more flexible and general
purpose
Optimizations in the toolkit that make several ByteVector operations faster
(and speeds up tag parsing and rendering by about 20%)
Fixed rendering of UTF-16 in ID3v2 tags
Added FLAC support to the C API
TagLib is a library for reading and editing the meta-data of several popular
audio formats. Currently it supports both ID3v1 and ID3v2 for MP3 files, Ogg
Vorbis comments and ID3 tags and Vorbis comments in FLAC files.