Commit Graph

39 Commits

Author SHA1 Message Date
f77a84486e Fixed comments for File constructors 2013-05-30 02:04:10 +09:00
439f27640a ByteVector::toUInt() takes offset and length 2013-04-18 18:36:19 +09:00
f1d723077f Consistently handle invalid and deprecated tags in setProperties()
This commit reverts the use of strip() in setProperties() because the
latter function should not change the file before save() is called.
Instead, the following policy is now consistently applied for file formats
with multiple tag types:
- the recommended tag type is created, if it does not exist
- deprecated tags are updated, if they exist, but not created
- illegal tag types are ignored by setProperties(), but used in properties()
  if no others exist.

The only tag types considered "illegal" so far are APEv2 in MPEG and ID3 in FLAC.
2012-12-26 22:46:37 +01:00
b14e6a3570 Update for pull request #89: Change how setProperties() updates tags.
For file types supporting more than one tag format, setProperties() now always creates the most modern one. Deprecated tags are stripped.
2012-12-20 17:28:50 +01:00
c0ca5c97d5 Fix issue #88 by changing the behavior of setProperties().
For file types that support multiple tag standards (for example, FLAC
files can have ID3v1, ID3v2, and Vorbis comments) setProperties is now
called for all existing tags instead of only for the most recommended
one.
This fixes the problem that under some circumstances it was not possible
to delete a value using setProperties() because upon save() the call to
Tag::duplicate recovered that value from the ID3v1 tag.
2012-12-10 20:56:16 +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
f11b206fe8 Do not delete the IOStream object in TagLib::File 2012-09-06 19:43:52 +02:00
1c35918834 Merge remote-tracking branch 'TsudaKageyu/warnings' 2012-09-02 15:25:41 +02:00
590cd4c9f6 Fix warnings with VS2010 2012-08-23 20:54:18 +09:00
6c0227ee13 Fix compilation errors with Visual Studio 2010 2012-08-23 19:58:21 +09:00
930168f990 Refactoring of the Musepack SV8 properties code 2012-07-11 14:13:41 +02:00
291d925fc1 MPC v8 audio properties 2012-07-11 13:08:10 +02:00
742a3a1dbb Rename anonymous enumeration symbols to be unique in mpcfile.cpp 2012-04-15 02:39:19 -07:00
69ac59f5f0 Added sampleFrames() to audio properties 2012-04-06 18:30:13 -04:00
de51307de7 Added lots of missing includes 2012-02-15 21:54:19 +01:00
a5e45f196b Started to work on ID3v2. 2012-01-21 23:05:59 +01:00
5647b2e293 Made im/export functions nonvirtual. Added similar functions to File and
its subclasses. TagLib::File contains a bunch of dynamic_casts to call
the correct specializations.
2011-08-28 22:58:40 +02:00
8eb32577bd Merge branch 'abstract-io' 2011-06-09 18:58:05 +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
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
299e3f0ad6 Define a macro to properly construct std::bitset
git-svn-id: svn://anonsvn.kde.org/home/kde/trunk/kdesupport/taglib@1216679 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
2011-01-24 07:32:31 +00:00
df86f45dad Back to unsigned long, it breaks compilation on Solaris
git-svn-id: svn://anonsvn.kde.org/home/kde/trunk/kdesupport/taglib@1216598 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
2011-01-24 06:02:15 +00:00
b051df0062 Fix compilation on MSVC 2010 with the C++0x version of std::bitset
Hopefuly it doesn't break anything on older compilers...


git-svn-id: svn://anonsvn.kde.org/home/kde/trunk/kdesupport/taglib@1216365 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
2011-01-22 21:07:16 +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
cf83551c93 Define MAKE_TAGLIB_LIB from the automake build system
git-svn-id: svn://anonsvn.kde.org/home/kde/trunk/kdesupport/taglib@1019659 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
2009-09-04 09:07:27 +00:00
37e2d6293f Ok, think I've got this all sorted out a bit. Code is much simpler now,
though much of this could be moved into the base class as there's a lot
of copy-paste action going on.


git-svn-id: svn://anonsvn.kde.org/home/kde/trunk/kdesupport/taglib@768992 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
2008-01-31 05:46:13 +00:00
458b2b3335 rename "remove()" to "strip()" to be consistent with MPEG::File
git-svn-id: svn://anonsvn.kde.org/home/kde/trunk/kdesupport/taglib@768450 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
2008-01-30 03:31:41 +00:00
b2e2f0bdba These were missing private copy constructors / assignment operators to make them non-copyable.
git-svn-id: svn://anonsvn.kde.org/home/kde/trunk/kdesupport/taglib@738702 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
2007-11-19 13:59:33 +00:00
bb438484da Use Unicode filenames on Windows (this time the correct patch).
git-svn-id: svn://anonsvn.kde.org/home/kde/trunk/kdesupport/taglib@734975 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
2007-11-10 16:06:16 +00:00
7b0c053359 Revert r734944 -- this one wasn't meant to go in.
git-svn-id: svn://anonsvn.kde.org/home/kde/trunk/kdesupport/taglib@734973 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
2007-11-10 16:05:18 +00:00
b98be427f9 Use Unicode filenames on Windows.
git-svn-id: svn://anonsvn.kde.org/home/kde/trunk/kdesupport/taglib@734944 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
2007-11-10 15:16:49 +00:00
1bdb67fafa More TAGLIB_EXPORTs from Lukas.
git-svn-id: svn://anonsvn.kde.org/home/kde/trunk/kdesupport/taglib@727755 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
2007-10-21 17:35:40 +00:00
5b03541038 Got permission from all (non-trivial) contributors to dual license under the MPL.
git-svn-id: svn://anonsvn.kde.org/home/kde/trunk/kdesupport/taglib@723791 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
2007-10-10 18:22:58 +00:00
52bc496d05 exported the rest of the classes (hope I got all)
git-svn-id: svn://anonsvn.kde.org/home/kde/trunk/kdesupport/taglib@698836 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
2007-08-11 08:33:49 +00:00
838114d093 Fix SV4 MPC file length. (Read the length at the correct offset.)
BUG:133959


git-svn-id: svn://anonsvn.kde.org/home/kde/trunk/kdesupport/taglib@689576 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
2007-07-18 15:50:52 +00:00
f162c5f5f9 And now get everything building again...
git-svn-id: svn://anonsvn.kde.org/home/kde/trunk/kdesupport/taglib@588037 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
2006-09-24 18:10:30 +00:00
60a3f993b5 This is starting to look more sane.
git-svn-id: svn://anonsvn.kde.org/home/kde/trunk/kdesupport/taglib@588022 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
2006-09-24 17:12:40 +00:00