
Source (link to git-repo or to original if based on someone elses unmodified work): Add the source-code for this project on opencode.net
TagLib is a C++ library for reading and modifying audio meta data, commonly called "tags". TagLib has been used since KDE 3.2 for reading audio metadata.
12 years ago
Changes from 1.4 to 1.5
- Support for Mac OS X and Microsoft Windows
- Distributed under the MPL (in addition to the previous LGPL license)
- Added support for Speex files
- Added support for TrueAudio files
- Added support for WavPack files
- Added support for ID3v2 general encapsulated object frames
- Added support for ID3v2 unsynchronized lyrics frames
- Added support for ID3v2 URL frames
- Propper exports of all public classes / functions
- Updated the APE::Item API to work with value lists
- Added support to the FileRef class for new Xiph (Ogg) extensions
- Made the samples per frame for MPEG headers accessible
- Made MP3 Xing headers accessible
- Prevent invalid encodings from being written to ID3v1 tags
- Non-Latin1 ID3v2 text frames are automatically converted to UTF-8 on write (if they are not explicitly set to UTF-16)
- Added support for reading ID3v2.2/3 unsynchronized tags
- Made it possible to search for ID3v2 comment frames by description
- Fixed a number of bugs in ID3v2 relative volume adjustment reading and writing
- Added work arounds for iTunes writing invalid ID3v2 frame lengths
- Added work arounds for iTunes not being able to correctly parse numerical ID3v2 genres
- Added work arounds for iTunes putting non-text information in ID3v2 comment frames
- Added a function to export strings to std::wstring
- Added a function to check ASCII compatibility of strings
- Added a function to check Latin1 compatibility of strings
12 years ago
Changes from 1.4 to 1.5
- Support for Mac OS X and Microsoft Windows
- Distributed under the MPL (in addition to the previous LGPL license)
- Added support for Speex files
- Added support for TrueAudio files
- Added support for WavPack files
- Added support for ID3v2 general encapsulated object frames
- Added support for ID3v2 unsynchronized lyrics frames
- Added support for ID3v2 URL frames
- Propper exports of all public classes / functions
- Updated the APE::Item API to work with value lists
- Added support to the FileRef class for new Xiph (Ogg) extensions
- Made the samples per frame for MPEG headers accessible
- Made MP3 Xing headers accessible
- Prevent invalid encodings from being written to ID3v1 tags
- Non-Latin1 ID3v2 text frames are automatically converted to UTF-8 on write (if they are not explicitly set to UTF-16)
- Added support for reading ID3v2.2/3 unsynchronized tags
- Made it possible to search for ID3v2 comment frames by description
- Fixed a number of bugs in ID3v2 relative volume adjustment reading and writing
- Added work arounds for iTunes writing invalid ID3v2 frame lengths
- Added work arounds for iTunes not being able to correctly parse numerical ID3v2 genres
- Added work arounds for iTunes putting non-text information in ID3v2 comment frames
- Added a function to export strings to std::wstring
- Added a function to check ASCII compatibility of strings
- Added a function to check Latin1 compatibility of strings
wheeler
16 years ago
That said there's been very little improvement made in id3lib in the last several years. The API is ugly and inconcistant and the implementation is full of hacks. There have been bugfixes here and there, but the code really was at the point that major portions of it need to be rewritten for it to be maintainable.
But in maintaining id3lib I learned what it did write and what it did wrong and incorperated that into TagLib. I also got a pretty good feel for what users are looking for in such a library.
It's also worth noting that TagLib has a wider goal than id3lib -- it supports MP3s, Ogg Vorbis files and FLAC files (and in fact makes it so that the same code will work for all three formats).
As for the things still relying on id3lib -- well, based on the feedback that I've heard people would love to be able to not rely on id3lib and I expect that many of these tools will switch to TagLib. If not, well, this is a "behind the scenes" piece of the framework and can easily coexist with id3lib.
Report
forestie
16 years ago
Report
markey
16 years ago
Without TagLib our playlist handling wouldn't be as snappy as it is. Also, the lib has been quite reliable for us, and when we had the odd problem with it, wheels has always been quick with fixing things.
Report
sarath
16 years ago
Report
wheeler
16 years ago
ftp://ftp.suse.com/pub/suse/i386/supplementary/KDE/update_for_9.0/base/taglib-0.96-0.i586.rpm
Report
sarath
16 years ago
Report
binner
16 years ago
I'm not convinced that libraries which KDE depends on are appropriate to be listed on kde-apps.org.
Report
wheeler
16 years ago
Report