Commit Graph

65 Commits

Author SHA1 Message Date
29f535dc8d Remove *file argument to private members
This is already covered by d->file, so there's no reason to pass a pointer
to the member dozens of times.
2015-05-18 23:11:51 +02:00
592522d34c Moar const fixes 2015-05-18 23:00:16 +02:00
6b9e4e4403 1001 Const fixes (plus iterator rename) 2015-05-18 22:48:55 +02:00
089e44f3db Remove unnecessary checks for null before delete
Closes #343
2015-05-18 21:40:21 +02:00
bba562b557 Add accessors to manipulate MP4 tags without modifying the internal structure
This brings the MP4 API in line closer to other tag formats and makes it
possible to access the tag data from const functions.

"ItemListMap" has been renamed to "ItemMap" (with the old version
deprecated).  It seems that the "ListMap" notion was copied probably
from Allan's ApeTag implementation, which incorrectly copied the term
from the XiphTag.  Notably, in XiphTag, because a field can have multiple
values, the "ListMap" is a map of lists.  Calling things a "ListMap" where
there can be only one value doesn't fit.

Closes #255
2015-05-18 21:18:33 +02:00
451d23ca37 Add isEmpty() to MP4
Closes #457
2015-05-18 20:30:19 +02:00
b69973bcf2 Fix infinite loops when parsing MP4 files. 2015-02-18 11:33:10 +09:00
0731bc7b2e Remove CMake check for sizeof(long). 2014-12-09 08:55:46 +09:00
f29c5f45f8 Workaround for 64-bit MP4 atoms. 2014-08-23 00:04:33 +09:00
2971891c69 Reduce useless detach operations by making some non-const iterators const. 2014-08-21 16:35:35 +09:00
95a59c416b Add ALBUMARTIST property mapping for MP4
https://code.google.com/p/mp4v2/wiki/iTunesMetadata
2014-04-10 17:33:29 +01:00
2d5abd46d2 Added TagLib::MP4::PropertyMap::codec() 2013-10-08 17:41:09 +02:00
fdb8a6b065 Reintroduce HAVE_CONFIG_H so that TagLib can be built without CMake 2013-06-20 15:07:25 +02:00
f77a84486e Fixed comments for File constructors 2013-05-30 02:04:10 +09:00
198530547d Removed RefCounter implementation from a public header 2013-05-03 13:53:32 +09:00
b0938a3cf1 Removed config.h and moved macros into taglib_config.h 2013-05-02 20:41:59 +09:00
49b07a2662 Refactor out some stuff to CMake tests 2013-04-21 22:24:12 +09:00
439f27640a ByteVector::toUInt() takes offset and length 2013-04-18 18:36:19 +09:00
1f4e06ea7c Revert changes concerning the smart pointer 2013-04-17 22:54:56 +09:00
b14dc1572d Replace RefCounter with a smart pointer 2013-04-17 10:10:25 +09:00
a3352fd899 Use the first instance of a MP4 atom (#126)
When a file contains multiple MP4 atoms with the same name, use the first
one. This is consistent with iTunes and other popular software.
2013-04-15 10:13:47 +02:00
86142343ee Fix VC++ specific warnings 2013-04-15 05:23:39 +09:00
353eb9f00f Implement the PropertyMap interface for MP4 2012-11-22 10:40:22 +01:00
c6f7ad3e83 Revert "Add a tool to inspect audio files, only MP4 is implemented for now"
This reverts commit 45b0279b41.
2012-11-12 16:14:32 +01:00
45b0279b41 Add a tool to inspect audio files, only MP4 is implemented for now 2012-11-11 16:43:36 +01:00
3a5aeb4573 Parse covr atoms with type 0 (fixes issue #84) 2012-11-11 16:04:08 +01:00
6b9ef6421f Fixed indents 2012-10-11 22:10:19 -04:00
d15c8453ac Added check if file is open before attempting to read tags 2012-10-11 21:20:03 -04:00
a9df3e48f7 Fix a bug in updating MP4 tags 2012-10-10 21:17:05 +09:00
f11b206fe8 Do not delete the IOStream object in TagLib::File 2012-09-06 19:43:52 +02:00
40bf52e70f Reverse the version check, similarly to what mp4v2 does 2012-01-10 17:18:20 +01:00
b981b6dde7 Check also for the deprecated GIF type 2012-01-08 15:54:15 +01:00
c237998983 Support non-UTF8 free-form atoms 2012-01-08 13:17:42 +01:00
ce53d13af1 Add suport for more MP4 metadata atoms
https://bugs.kde.org/show_bug.cgi?id=275784
2011-08-13 17:07:41 +02:00
dd846904cb Remove the options to disable MP4/ASF support 2011-06-24 08:49:50 +02:00
b2517aa4a0 default constructor MP4::Tag::Tag() 2011-06-21 00:54:39 +07:00
8eb32577bd Merge branch 'abstract-io' 2011-06-09 18:58:05 +02:00
8ed9b0da2c Support for reading ALAC audio properties 2011-06-09 18:41:43 +02:00
d03ef3c312 Use the PUBLIC_HEADER property to prepare for building an OS X framework 2011-04-18 16:52:47 +02:00
26c130c387 Duplicate contructors of File subclasses to accept IOStream* 2011-04-11 23:31:44 +02:00
97cd58bc65 Check for the presence of the drms atom in MP4 files 2011-03-29 15:41:17 +02:00
2f9838a440 *poof*
I've warned people about removing autoconf/automake support for a long time,
so let's make it happen for 1.7. CMake is now the only supported build system.
I'll update build docs in a following commit.

CCMAIL:taglib-devel@kde.org


git-svn-id: svn://anonsvn.kde.org/home/kde/trunk/kdesupport/taglib@1220235 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
2011-02-13 11:50:25 +00:00
393e9c5572 Fix FSF address
git-svn-id: svn://anonsvn.kde.org/home/kde/trunk/kdesupport/taglib@1212872 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
2011-01-08 11:20:09 +00:00
3741c39295 Full read/write support for FLAC pictures
NEEDS MORE TESTING

BUG:218696


git-svn-id: svn://anonsvn.kde.org/home/kde/trunk/kdesupport/taglib@1212863 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
2011-01-08 10:36:26 +00:00
ab7e997bc6 Don't try to save read-only MP4 files
git-svn-id: svn://anonsvn.kde.org/home/kde/trunk/kdesupport/taglib@1145556 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
2010-07-03 11:36:08 +00:00
3943668603 Ignore trailing non-data atoms when parsing MP4 covr atoms
git-svn-id: svn://anonsvn.kde.org/home/kde/trunk/kdesupport/taglib@1110209 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
2010-04-02 12:14:32 +00:00
d394317767 MP4 int pair atoms should have flags set to 0
git-svn-id: svn://anonsvn.kde.org/home/kde/trunk/kdesupport/taglib@1078611 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
2010-01-22 13:28:14 +00:00
9e9077d1e0 Be more paranoid about checking MP4 files
To consider something a valid MP4 file, it must have a 'moov' atom. Otherwise
it's marked as invalid and we won't try to read/write tags.

CCBUG:216819


git-svn-id: svn://anonsvn.kde.org/home/kde/trunk/kdesupport/taglib@1062426 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
2009-12-14 18:42:40 +00:00
0f0f2f7288 Explicitly say that we are using TagLib::File (CCBUG:213544)
git-svn-id: svn://anonsvn.kde.org/home/kde/trunk/kdesupport/taglib@1046111 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
2009-11-07 15:05:25 +00:00
f1abbf33f2 A little more complex checking for broken files
git-svn-id: svn://anonsvn.kde.org/home/kde/trunk/kdesupport/taglib@1042948 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
2009-10-31 08:59:40 +00:00