13
I Use This!
Moderate Activity

News

Analyzed about 16 hours ago. based on code collected about 22 hours ago.
Posted over 11 years ago
I'm sorry this took longer than expected, but I've just released the final version of TagLib 1.8. There are a few changes compared to the beta version, see the change log below. Download: Source Code Tarball If you find any problems, please ... [More] report them at the GitHub bug tracker. Changes in 1.8 final: Added support for OWNE ID3 frames. Changed key validation in the new PropertyMap API. ID3v1::Tag::setStringHandler will no londer delete the previous handler, the caller is responsible for this. File objects will also no longer delete the passed IOStream objects. It should be done in the caller code after the File object is no longer used. Added ID3v2::Tag::setLatin1StringHandler for custom handling of latin1-encoded text in ID3v2 frames. Fixed validation of ID3v2 frame IDs (IDs with '0' were ignored). Changes in 1.8 beta: New API for accessing tags by name. New abstract I/O stream layer to allow custom I/O handlers. Support for writing ID3v2.3 tags. Support for various module file formats (MOD, S3M, IT, XM). Support for MP4 and ASF is now enabled by default. Started using atomic int operations for reference counting. Added methods for checking if WMA and MP4 files are DRM-protected. Added taglib\_free to the C bindings. New method to allow removing pictures from FLAC files. Support for reading audio properties from ALAC and Musepack SV8 files. Added replay-gain information to Musepack audio properties. Support for APEv2 binary tags. Many AudioProperties subclasses now provide information about the total number of samples. Various small bug fixes. [Less]
Posted over 11 years ago
I'm sorry this took longer than expected, but I've just released the final version of TagLib 1.8. There are a few changes compared to the beta version, see the change log below. Download: Source Code Tarball If you find any problems, please ... [More] report them at the GitHub bug tracker. Changes in 1.8 final: Added support for OWNE ID3 frames. Changed key validation in the new PropertyMap API. ID3v1::Tag::setStringHandler will no londer delete the previous handler, the caller is responsible for this. File objects will also no longer delete the passed IOStream objects. It should be done in the caller code after the File object is no longer used. Added ID3v2::Tag::setLatin1StringHandler for custom handling of latin1-encoded text in ID3v2 frames. Fixed validation of ID3v2 frame IDs (IDs with '0' were ignored). Changes in 1.8 beta: New API for accessing tags by name. New abstract I/O stream layer to allow custom I/O handlers. Support for writing ID3v2.3 tags. Support for various module file formats (MOD, S3M, IT, XM). Support for MP4 and ASF is now enabled by default. Started using atomic int operations for reference counting. Added methods for checking if WMA and MP4 files are DRM-protected. Added taglib\_free to the C bindings. New method to allow removing pictures from FLAC files. Support for reading audio properties from ALAC and Musepack SV8 files. Added replay-gain information to Musepack audio properties. Support for APEv2 binary tags. Many AudioProperties subclasses now provide information about the total number of samples. Various small bug fixes. [Less]
Posted about 13 years ago
... or why there are none. TagLib is a C++ library and as such, it's very dependant on the compiler. GCC (MinGW) and MSVC generate completely different symbol names, so you can't even think about using libraries built the other one. But even if you ... [More] use different versions of MSVC, you will most likely get into troubles. Different versions of the standard C++ library, different compiler switches and many other things can cause the library to be incompatible with your application. So, the best solution is to compile TagLib yourself, with the same compiler that you use to build your application. People usually have problems building TagLib with MSVC, so here is a simple guide how to do that. First, install CMake. Then download zlib 1.2.5 and TagLib 1.7, unpack both packages somewhere (let's assume you unpacked it to X:\code). You can then build TagLib with everything included using the following commands: cd X:\code\zlib-1.2.5 cmake -DCMAKE_BUILD_TYPE=Release -DBUILD_SHARED_LIBS=OFF . nmake cd ..\taglib-1.7 cmake -DZLIB_INCLUDE_DIR=X:\code\zlib-1.2.5\ -DZLIB_LIBRARY=X:\code\zlib-1.2.5\zlib.lib -DCMAKE_BUILD_TYPE=Release -DWITH_ASF=ON -DWITH_MP4=ON -DBUILD_EXAMPLES=ON . nmake Now you can verify that it worked by trying to read a MP3 file (or any format that TagLib supports): copy taglib\tag.dll examples\ examples\tagreader.exe X:\path\to\music\file.mp3 If any of this doesn't work for you, please let me know. You shouldn't need any hacks, the commands described above should work. If they don't, it's a bug and will be fixed. [Less]
Posted about 13 years ago by Lukáš Lalinský
… or why there are none. TagLib is a C++ library and as such, it’s very dependant on the compiler. GCC (MinGW) and MSVC generate completely different symbol names, so you can’t even think about using libraries built the other … Continue reading →
Posted about 13 years ago
TagLib 1.7 has been released. This release adds support for Monkey’s Audio files and cover art reading/writing for WMA and FLAC files. There is also a number of bug fixes, more details in the changelog. There are two important changes associated with ... [More] this release: Removed autoconf/automake support -- If you used ./configure && make to build TagLib, you will have to switch to the CMake-based build system. The INSTALL file has been updated with instruction on how to build TagLib using CMake. Source code moved to GitHub -- TagLib's source code is now hosted in a Git repository on GitHub. The KDE SVN repository will stay available for some time, to not break anything, as the decision about the migration has been done very quickly, but it will not get any updates and will get removed in near future. Download: Source Code Tarball (or here) (522K) Full changelog since version 1.6: Support for reading/writing tags from Monkey's Audio files. (BUG:210404) Support for reading/writing embedded pictures from WMA files. Support for reading/writing embedded pictures from FLAC files (BUG:218696). Implemented APE::Tag::isEmpty() to check for all APE tags, not just the basic ones. Added reading of WAV audio length. (BUG:116033) Exposed FLAC MD5 signature of the uncompressed audio stream via FLAC::Properties::signature(). (BUG:160172) Added function ByteVector::toHex() for hex-encoding of byte vectors. WavPack reader now tries to get the audio length by finding the final block, if the header doesn't have the information. (BUG:258016) Fixed a memory leak in the ID3v2.2 PIC frame parser. (BUG:257007) Fixed writing of RIFF files with even chunk sizes. (BUG:243954) Fixed compilation on MSVC 2010. Removed support for building using autoconf/automake. API docs can be now built using "make docs". Fixed bitrate calculation for WAV files. Changes since the 1.7 RC can be found in the NEWS file. [Less]
Posted about 13 years ago by Lukáš Lalinský
TagLib 1.7 has been released. This release adds support for Monkey’s Audio files and cover art reading/writing for WMA and FLAC files. There is also a number of bug fixes, more details in the changelog. There are two important changes … Continue reading →
Posted about 13 years ago
Even though I wasn't planning to make a 1.7 release by the time 1.6.3 was released, moving forward with the 1.x series seems to be the easiest way to go. There are many new features in this version. The biggest ones are full support for Monkey's ... [More] Audio files and cover art support for WMA and FLAC files. There are also a number of bug fixes. The reason why I decided to go with a RC is that some code had to be rewritten in order to add the new features, so I'd like more people to test it before there is a final release. Also, if I've forgotten about somebody's patch that should be included in the final release, please let me know. One important thing is that TagLib 1.7 no longer supports building using automake/autoconf. If you used this build system, try our CMake-based build system which was available in TagLib for a long time. The INSTALL document has been rewritten to cover the most important CMake options. Download: taglib-1.7rc1.tar.gz (530K) Full changelog for this release: Support for reading/writing tags from Monkey's Audio files. (BUG:210404) Support for reading/writing embedded pictures from WMA files. Support for reading/writing embedded pictures from FLAC files (BUG:218696). Implemented APE::Tag::isEmpty() to check for all APE tags, not just the basic ones. Added reading of WAV audio length. (BUG:116033) Exposed FLAC MD5 signature of the uncompressed audio stream via FLAC::Properties::signature(). (BUG:160172) Added function ByteVector::toHex() for hex-encoding of byte vectors. WavPack reader now tries to get the audio length by finding the final block, if the header doesn't have the information. (BUG:258016) Fixed a memory leak in the ID3v2.2 PIC frame parser. (BUG:257007) Fixed writing of RIFF files with even chunk sizes. (BUG:243954) Fixed compilation on MSVC 2010. Removed support for building using autoconf/automake. API docs can be now built using "make docs". [Less]
Posted about 13 years ago by Lukáš Lalinský
Even though I wasn’t planning to make a 1.7 release by the time 1.6.3 was released, moving forward with the 1.x series seems to be the easiest way to go. There are many new features in this version. The biggest … Continue reading →
Posted almost 14 years ago by Lukáš Lalinský
TagLib 1.6.3 was released this Monday, but somehow I forgot to post an update here. There isn’t many changes, the main reason for the release were configuration issues with 1.6.2. The 1.6.3 tarball can be downloaded here or here. Changes log: Fixed ... [More] definitions of the TAGLIB_WITH_MP4 and TAGLIB_WITH_ASF macros. Fixed upgrading of ID3v2.3 genre frame with ID3v1 code [...] [Less]
Posted almost 14 years ago
TagLib 1.6.3 was released this Monday, but somehow I forgot to post an update here. There isn't many changes, the main reason for the release were configuration issues with 1.6.2. The 1.6.3 tarball can be downloaded here or here. Changes log: ... [More] Fixed definitions of the TAGLIB_WITH_MP4 and TAGLIB_WITH_ASF macros. Fixed upgrading of ID3v2.3 genre frame with ID3v1 code 0 (Blues). New method int String::toInt(bool *ok) which can return whether the conversion to a number was successfull. Fixed parsing of incorrectly written lengths in ID3v2 (affects mainly compressed frames). (Bug #231075) [Less]