C++ Library to Parse Metadata in Media Files
http://taglib.github.io/
This package is based on the package 'taglib' from project 'openSUSE:Factory'.
libtag provides a C++ interface for reading additional data (stored in
TAGs) from MP3, Ogg Vorbis, and MPEG files.
- Sources inherited from project multimedia:libs
- Devel package for openSUSE:Factory
-
15
derived packages
- Links to openSUSE:Factory / taglib
- Download package
-
Checkout Package
osc -A https://api.opensuse.org checkout home:smarty12:multimedia/taglib && cd $_
- Create Badge
Refresh
Refresh
Source Files
Filename | Size | Changed |
---|---|---|
_link | 0000000200 200 Bytes | |
project.diff | 0000002443 2.39 KB | |
taglib-1.13.tar.gz | 0001371504 1.31 MB |
Revision 101 (latest revision is 115)
Danilo Spinella (dspinella)
accepted
request 1036511
from
Jonas Kvinge (jonaski)
(revision 101)
- Update to version 1.13: * Added interface StreamTypeResolver to support streams which cannot be fopen()'ed, e.g. network files. * Added MP4::File::strip() to remove meta atom from MP4 file. * Added Map::value() to look up without creating entry. * Use property "WORK" instead of "CONTENTGROUP" for ID3v2 "TIT1" frame, * use property "WORK" for ASF "WM/ContentGroupDescription", * use property "COMPILATION" for ID3v2 "TCMP" frame. * Build system improvements: option WITH_ZLIB, BUILD_TESTING instead of * BUILD_TESTS, GNUInstallDirs, FeatureSummary, tests with BUILD_SHARED_LIBS, * cross compilation with Buildroot, systems without HAVE_GCC_ATOMIC, Clang. * Fixed heap-buffer-overflows when handling ASF, APE, FLAC, ID3v2, MP4, MPC tags. * Fixed detection of invalid file by extension when correct type can be detected by contents. * Fixed unnecessary creation of map entries in APE and FLAC tags if looked up tag does not exist. * Fixed parsing of MP4 non-full meta atoms. * Fixed potential ID3v1 false positive in the presence of an APE tag. * Fixed ID3v2 version handling for frames embedded in CHAP or CTOC frames. * Fixed parsing of multiple strings with a single BOM in ID3v2.4.0. * Fixed several smaller issues reported by clang-tidy. - Remove build rpath from executables (boo#1199058) - Add missing zlib dependency in devel package - reference download url of tarball - Update to version 1.12: * Added support for WinRT. * Added support for Linux on POWER. * Added support for classical music tags of iTunes 12.5. * Added support for file descriptor to FileStream. * Added support for 'cmID', 'purl', 'egid' MP4 atoms. * Added support for 'GRP1' ID3v2 frame. * Added support for extensible WAV subformat. * Enabled FileRef to detect file types based on the stream content. * Dropped support for Windows 9x and NT 4.0 or older. * Check for mandatory header objects in ASF files. * More tolerant handling of RIFF padding, WAV files, broken MPEG streams. * Improved calculation of Ogg, Opus, Speex, WAV, MP4 bitrates. * Improved Windows compatibility by storing FLAC picture after comments. * Fixed numerical genres in ID3v2.3.0 'TCON' frames. * Fixed consistency of API removing MP4 items when empty values are set. * Fixed consistency of API preferring COMM frames with no description. * Fixed OOB read on invalid Ogg FLAC files (CVE-2018-11439). * Fixed handling of empty MPEG files. * Fixed parsing MP4 mdhd timescale. * Fixed reading MP4 atoms with zero length. * Fixed reading FLAC files with zero-sized seektables. * Fixed handling of lowercase field names in Vorbis Comments. * Fixed handling of 'rate' atoms in MP4 files. * Fixed handling of invalid UTF-8 sequences. * Fixed possible file corruptions when saving Ogg files. * Fixed handling of non-audio blocks, sampling rates, DSD audio in WavPack files. * TableOfContentsFrame::toString() improved. * UserTextIdentificationFrame::toString() improved. * Marked FileRef::create() deprecated. * Marked MPEG::File::save() with boolean parameters deprecated, provide overloads with enum parameters. * Several smaller bug fixes and performance improvements. - Remove obsolete patches: * taglib-versionbump.patch * 0001-Changed-libdir-includedir-variables-to-change-based-.patch - Add patch to get the right directories when running taglib-config: * 0001-Changed-libdir-includedir-variables-to-change-based-.patch - Update to version 1.11.2~git20190725.79bc9ccf: * Call fflush() before ftruncate() to drop all buffered data (#914) - Use version 1.11.2~git20190531.ba7adc2b to match up the update-version.patch - Install examples - Switch to service file for generating the package - Use conditions to enable the multibuild tests in other loop while also generating the docs - Make sure the tests are actually executed - Split API documentation from devel package, and convert it to multibuild - API documentation is significantly larger than library and headers - API documentation is noarch - Significantly reduced dependency chain for the library package - Use graphviz-gd instead of graphviz-gnome for API docs - Cleanup specfile - Update to 1.11.2~git20190601, which fixes a regression when reading/ writing MP4 "rate" tags. - Use proper package version, matching the header file version macros - Upstream changes: * Respect atom type when converting rate tag (#896) * Support ID3v2 GRP1 frame introduced with iTunes 12.5.4.42, #903. (#904) * Update mp4properties.cpp (#893) * Minor fix for mp4 media header v0 minimum size check (#895) - Update to 1.11.1+git20181028 and add taglib-versionbump.patch to enable qt5 clementine to build with system taglib. - Removed incorporated taglib-CVE-2017-12678.patch, taglib-CVE-2018-11439.patch and taglib-fix-ogg.patch. - Upstream changes: *Added support for DSF and DSDIFF files. *Added support for WinRT. *Added support for classical music tags of iTunes 12.5. *Added support for file descriptor to FileStream. *Added support for 'cmID', 'purl', 'egid' MP4 atoms. *Enabled FileRef to detect file types based on the stream content. *Check for mandatory header objects in ASF files. *Fixed OOB read on invalid Ogg FLAC files (CVE-2018-11439). *Fixed handling of empty MPEG files. *Fixed reading MP4 atoms with zero length. *Fixed reading FLAC files with zero-sized seektables. *Fixed handling of lowercase field names in Vorbis Comments. *Fixed handling of 'rate' atoms in MP4 files. *Fixed handling of invalid UTF-8 sequences. *Fixed possible file corruptions when saving Ogg files. *TableOfContentsFrame::toString() improved. *UserTextIdentificationFrame::toString() improved. *Marked FileRef::create() deprecated. *Several smaller bug fixes and performance improvements. - Add patch to fix Ogg corruption: * taglib-fix-ogg.patch - Added taglib-CVE-2018-11439.patch: Fix an out-of-bounds read when loading invalid ogg flac files (CVE-2018-11439, bsc#1096180). - Applied spec-cleaner to specfile - Cleanup bit with spec-cleaner - Drop librcc dependency as there is no actual code dependency in taglib - Update to versio 1.11.1: * Fixed binary incompatible change in TagLib::String. * Fixed reading ID3v2 CTOC frames with a lot of entries. * Fixed seeking ByteVectorStream from the end. - Prevent denial of service (bsc#1052699, CVE-2017-12678, taglib-CVE-2017-12678.patch). - Update to 1.11 * Fixed reading APE items with long keys. * Fixed reading ID3v2 SYLT frames when description is empty. 1.11 BETA 2: * Better handling of PCM WAV files with a 'fact' chunk. * Better handling of corrupted APE tags. * Efficient decoding of unsynchronized ID3v2 frames. * Fixed text encoding when saving certain frames in ID3v2.3 tags. * Fixed updating the size of RIFF files when removing chunks. * Several smaller bug fixes and performance improvements. 1.11 BETA: * New API for creating FileRef from IOStream. * Added support for ID3v2 PCST and WFED frames. * Added support for pictures in XiphComment. * Added String::clear(). * Added FLAC::File::strip() for removing non-standard tags. * Added alternative functions to XiphComment::removeField(). * Added BUILD_BINDINGS build option. * Added ENABLE_CCACHE build option. * Replaced ENABLE_STATIC build option with BUILD_SHARED_LIBS. * Better handling of duplicate ID3v2 tags in all kinds of files. * Better handling of duplicate tag chunks in WAV files. * Better handling of duplicate tag chunks in AIFF files. * Better handling of duplicate Vorbis comment blocks in FLAC files. * Better handling of broken MPEG audio frames. * Fixed crash when calling File::properties() after strip(). * Fixed crash when parsing certain MPEG files. * Fixed crash when saving Ogg files. * Fixed possible file corruptions when saving ASF files. * Fixed possible file corruptions when saving FLAC files. * Fixed possible file corruptions when saving MP4 files. * Fixed possible file corruptions when saving MPEG files. * Fixed possible file corruptions when saving APE files. * Fixed possible file corruptions when saving Musepack files. * Fixed possible file corruptions when saving WavPack files. * Fixed updating the comment field of Vorbis comments. * Fixed reading date and time in ID3v2.3 tags. * Marked ByteVector::null and ByteVector::isNull() deprecated. * Marked String::null and String::isNull() deprecated. * Marked XiphComment::removeField() deprecated. * Marked Ogg::Page::getCopyWithNewPageSequenceNumber() deprecated. It returns null. * Marked custom integer types deprecated. * Many smaller bug fixes and performance improvements. - Fix build in SLE_11 by disabling post-install - Cleanup spec file with spec-cleaner - Use cmake macros - Update to 1.10 * New API for the audio length in milliseconds. * Added new options to the tagwriter example. * Added support for ID3v2 ETCO and SYLT frames. * Added support for album artist in PropertyMap API of MP4 files. * Added support for embedded frames in ID3v2 CHAP and CTOC frames. * Added support for AIFF-C files. * Better handling of duplicate ID3v2 tags in MPEG files. * Allowed generating taglib.pc on Windows. * Added ZLIB_SOURCE build option. * Fixed backwards-incompatible change in TagLib::String when constructing UTF16 strings. * Fixed crash when parsing certain FLAC files. * Fixed crash when encoding empty strings. * Fixed saving of certain XM files on OS X. * Changed Xiph and APE generic getters to return space-concatenated values. * Fixed possible file corruptions when removing tags from WAV files. * Added support for MP4 files with 64-bit atoms in certain 64-bit environments. * Prevented ID3v2 padding from being too large. * Fixed crash when parsing corrupted APE files. * Fixed crash when parsing corrupted WAV files. * Fixed crash when parsing corrupted Ogg FLAC files. * Fixed crash when parsing corrupted MPEG files. * Fixed saving empty tags in WAV files. * Fixed crash when parsing corrupted Musepack files. * Fixed possible memory leaks when parsing AIFF and WAV files. * Fixed crash when parsing corrupted MP4 files. * Stopped writing empty ID3v2 frames. * Fixed possible file corruptions when saving WMA files. * Added TagLib::MP4::Tag::isEmpty(). * Added accessors to manipulate MP4 tags. * Fixed crash when parsing corrupted WavPack files. * Fixed seeking MPEG frames. * Fixed reading FLAC files with zero-sized padding blocks. * Added support for reading the encoder information of WMA files. * Added support for reading the codec of WAV files. * Added support for multi channel WavPack files. * Added support for reading the nominal bitrate of Ogg Speex files. * Added support for VBR headers in MPEG files. * Marked FLAC::File::streamInfoData() deprecated. It returns an empty ByteVector. * Marked FLAC::File::streamLength() deprecated. It returns zero. * Fixed possible file corruptions when adding an ID3v1 tag to FLAC files. * Fixed self-assignment operator in some types. * Fixed extraction of MP4 tag keys with an empty list. * Many smaller bug fixes and performance improvements. - Drop no longer needed patches: * taglib-1.7.2-doxygen.patch * taglib-1.8-strip-rpath.patch * taglib-1.9.1.uint.patch - BuildRequire cmake >= 2.8 - Fix build error in 11.4 taglib-1.9.1.uint.patch - Update to 1.9.1 * Fixed binary incompatible change in TagLib::Map and TagLib::List. * Fixed constructing String from ByteVector. * Fixed compilation on MSVC with the /Zc:wchar_t- option. * Fixed detecting of RIFF files with invalid chunk sizes. * Added TagLib::MP4::PropertyMap::codec(). - Update to 1.9 * Added support for the Ogg Opus file format. * Added support for INFO tags in WAV files. * Changed FileStream to use Windows file API. * Included taglib-config.cmd script for Windows. * New ID3v1::Tag methods for working directly with genre numbers. * New MPEG::File methods for checking which tags are saved in the file. * Added support for the PropertyMap API to ASF and MP4 files. * Added MusicBrainz identifiers to the PropertyMap API. * Allowed reading of MP4 cover art without an explicitly specified format. * Better parsing of corrupted FLAC files. * Fixed saving of PropertyMap comments without description into ID3v2 tags. * Fixed crash when parsing certain XM files. * Fixed compilation of unit test with clang. * Better handling of files that can't be open or have read-only permissions. * Improved atomic reference counting. * New hookable API for debug messages. * More complete Windows install instructions. * Many smaller bug fixes and performance improvements. - Dropped taglib-1.8-ds-rusxmms-r9.patch, not required anymore - Dropped Added-check-if-file-is-open-before-attempting-to-rea.patch and taglib-1.8-version_fix.patch, merged upstream - Added-check-if-file-is-open-before-attempting-to-rea.patch: Added check if file is open before attempting to read tags (bnc#826228) - Fixed Urls in .spec - JUst like the rest of the system, taglib has to be built with LFS support/ 64bit off_t in 32 bit archs. - Added taglib-1.8-ds-rusxmms-r9.patch and deleted taglib-1.8-ds-rusxmms-r8.patch to fix the reopened bnc#814814 - Added taglib-1.8-ds-rusxmms-r8.patch which fixes bnc#814814 - Removed old taglib-1.8-ds-rusxmms-r4.patch - Incorporated updated taglib-1.8-ds-rusxmms-r4.patch see bnc#814814 - Added built binary examples which manipulate tags from the command line to enable easier testing of libtag. These are in the taglib rpm. - Created taglib-1.8-strip-rpath.patch to remove rpath from binaries. - Replace taglib-1.6-ds-rusxmms.patch with taglib-1.8-ds-rusxmms-r2.patch: Update rusxmms patch to also work with non-Russian locale (bnc#780256). - Update rusxmms patch to version taglib-1.8-ds-rusxmms-r2 in order to fix bnc#780256 - update license to new format - Add patch taglib-1.8-version_fix.patch: fix version defines in taglib.h - Update to 1.8 * 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). * 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. - Drop taglib-noansiflags.patch (no longer relevant) -Update to 1.7.2: * Fixed division by zero while parsing corrupted MP4 files (CVE-2012-2396). * Fixed compilation on Haiku. * Improved parsing of corrupted WMA, RIFF and OGG files. * Fixed a memory leak in the WMA parser. * Fixed a memory leak in the FLAC parser. * Fixed a possible division by zero in the APE parser. * Added detection of TTA2 files. * Fixed saving of multiple identically named tags to Vorbis Comments. -Fixed a build failure related to doxygen. - Also, define GNU_SOURCE - No dont use -ansi gcc flag. - Add rusxmms patch to be fixed https://features.opensuse.org/313273 - Made taglib become a package again to satisfy the depencies of packages that still require it. - Conflict the last version of taglib that contained the libraries from the library subpackages. - Make sure the devel package obsoletes the last version of taglib-devel where the main package contained the libraries. - taglib is the name of the srcrpm, moved docs to devel subpackage. - obsolete the right version of taglib - make taglib become a package again, that has only one duty, to require libtag1 and libtag_c0 for packages that still require taglib instead of the new package names libtag1 and libtag_c0 - Update to version 1.7: * Fixed memory leaks in the FLAC file format parser. * Fixed bitrate calculation for WAV files. From 1.7 RC1 * 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". - Spec file updates: * Changes based on openSUSE shared library packaging policy (added libtag1, libtag_c0 and libtag-devel packages, removed taglib and taglib-devel packages). * Changes based on spec-cleaner run. * Changed License: to LGPLv2.1+ ; MPLv1.1 .. * Updates in Group, Summary and %description entries. * Added libcppunit-devel and pkg-config in BuildRequires. * Minor other updates. - Updated taglib.desktop for susehelp to point to libtag-devel. - update to version 1.6.3 * 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 successful. * Fixed parsing of incorrectly written lengths in ID3v2 (affects mainly compressed frames). - update to version 1.6.2 * Read Vorbis Comments from the first FLAC metadata block, if there are multipe ones. * Fixed a memory leak in FileRef's OGA format detection. * Fixed compilation with the Sun Studio compiler. * Handle WM/TrackNumber attributes with DWORD content in WMA files. * More strict check if something is a valid MP4 file. * Correctly save MP4 int-pair atoms with flags set to 0. * Fixed compilation of the test runner on Windows. * Store ASF attributes larger than 64k in the metadata library object. * Ignore trailing non-data atoms when parsing MP4 covr atoms. * Don't upgrade ID3v2.2 frame TDA to TDRC. - Package baselibs.conf - Update to version 1.6.1 * Better detection of the audio codec of .oga files in FileRef. * Fixed saving of Vorbis comments to Ogg FLAC files. TagLib tried to include the Vorbis framing bit, which is only correct for Ogg Vorbis. * Public symbols now have explicitly set visibility to "default" on GCC. * Added missing exports for static ID3v1 functions. * Fixed a typo in taglib_c.pc * Fixed a failing test on ppc64. * Support for binary 'covr' atom in MP4 files. TagLib 1.6 treated them as text atoms, which corrupted them in some cases. * Fixed ID3v1-style genre to string conversion in MP4 files. - Update to version 1.6 * New CMake option to build a static version - ENABLE_STATIC. * Added support for disabling dllimport/dllexport on Windows using the TAGLIB_STATIC macro. * Support for parsing the obsolete 'gnre' MP4 atom. * New cpp macros TAGLIB_WITH_MP4 and TAGLIB_WITH_ASF to determine if TagLib was built with MP4/ASF support. * Split Ogg packets larger than 64k into multiple pages. * TagLib can now use FLAC padding block. * ID3v2.2 frames are now not incorrectly saved. * Support for ID3v2.2 PIC frames. * Fixed a bug in ByteVectorList::split(). * XiphComment::year() now falls back to YEAR if DATE doesn't exist and XiphComment::year() falls back to TRACKNUM if TRACKNUMBER doesn't exist. * Improved ID3v2.3 genre parsing. * Better checking of corrupted ID3v2 APIC data. * Bitrate calculating using the Xing header now uses floating point numbers. * New TagLib::String method rfind(). * Added support for MP4 file format with iTunes-style metadata * Added support for ASF (WMA) file format. * Fixed crash when saving a Locator APEv2 tag. * Fixed a possible crash in the non-const version of String::operator[] and in String::operator+=. * Added support for PRIV ID3v2 frames. * Empty ID3v2 genres are no longer treated as numeric ID3v1 genres. * Added support for the POPM (rating/playcount) ID3v2 frame. * Generic RIFF file format support: * Support for AIFF files with ID3v2 tags. * Support for WAV files with ID3v2 tags. * Fixed crash on handling unsupported ID3v2 frames, e.g. on encrypted frames. * Fixed overflow while calculating bitrate of FLAC files with a very high bitrate - fix build with new cmake - obsolete old -XXbit packages (bnc#437293) - fix build for older distros - added baselibs.conf file to build xxbit packages for multilib support - build using Cmake - update to version 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 - fixed gcc4.3 build - fix more issues: - this package does NOT require libjpeg-devel for build - after adding missing zlib-devel on BuildRequires in the previous checkin, libtool archives causes bloat. - run ldconfig instead of using deprecated macro - move the docs to the devel packages - use fdupes to avoid duplicate files - run make check in the check section - fix build with automake 1.10 - fix include's in installed headers - fix build - build parallel - converted neededforbuild to BuildRequires - added fontconfig to nfb - make devel package require base package - fix filelist - don't package empty TODO file - update to version 1.4 - update to version 1.3.1 * 64bit OGG/Vorbis file lenght fixes * crash fixes with broken mp3 files - fix susehelp entry for API documentation - update to version 1.3 * support for AOE tags and MPC files * compressed ID3v2 frame support * several checks for SIGFPE - update to version 1.2 * flac in ogg support * support for relativ volume adjustement * support for attached picture - update to version 1.1 * bugfixes * some more supported tag types * speed improvements - update to version 1.0 final - generate and install API documentation - update to version 0.96 (beta 2) - update to current HEAD, to get kdemultimedia compiling again - package also taglib_c.so - update to version 0.95 (beta 1) - initial package from kdeextragear-2/taglib snapshot
Comments 0