Tsuda Kageyu
f310b1810d
Update NEWS.
2015-11-19 17:55:18 +09:00
Tsuda Kageyu
a3564d8c68
Efficient lookup for the MP4/ASF field name and ID3v1 genre tables.
...
Linear lookup is much faster and memory efficient when an array is very small.
2015-11-19 16:35:55 +09:00
Tsuda Kageyu
72a807def1
Fix a string conversion bug in tag_c.cpp.
2015-11-19 11:50:39 +09:00
Tsuda Kageyu
539d951277
Avoid using ByteVector::null where an empty vector is required.
...
ByteVector::null is not necessarily be empty or remains the same instance.
Using it in a public header may lead to a linkage error.
2015-11-19 10:52:46 +09:00
Tsuda Kageyu
21788f4a26
Efficient lookup for the ID3v2 frame ID table.
...
Linear lookup is much faster and memory efficient when an array is very small.
2015-11-19 10:07:10 +09:00
Tsuda Kageyu
74cb6f3fc7
Merge pull request #493 from TsudaKageyu/nested-refcounter
...
Simplify overly complicated ByteVector::mid() implementation.
2015-11-19 09:37:40 +09:00
Tsuda Kageyu
e0f1151c5c
Resolve some conflicts before merging.
2015-11-19 09:27:15 +09:00
Tsuda Kageyu
10e1fcd686
Consistent notations between ByteVector::data() and at().
2015-11-19 09:23:20 +09:00
Tsuda Kageyu
3bce77a359
Use linear search instead of the Knuth-Morris-Pratt algorithm in ByteVector::find().
...
In almost all cases, it handles too small data for KMP to work effectively.
2015-11-19 09:23:19 +09:00
Tsuda Kageyu
0ffd2e8ab9
Replace DATA macro with more straightforward notations.
2015-11-19 09:23:19 +09:00
Tsuda Kageyu
7e85d9b202
Simplify overly complicated ByteVector::mid() implementation.
...
Especially remove the useless nested RefCounters.
2015-11-19 09:23:19 +09:00
Tsuda Kageyu
c6443dabc6
Use the same type name between a List and its iterator.
2015-11-18 17:58:13 +09:00
Tsuda Kageyu
c5db39fbf4
Merge pull request #661 from ufleisch/podcast-frames
...
Support for Apple podcast frames
2015-11-18 17:48:14 +09:00
Tsuda Kageyu
b6469bda1a
Merge pull request #628 from RyanLucchese/rl-ConstReverseIterator-solaris-bug
...
return const correct reverse iterator for newer Sun compiler
2015-11-18 17:23:16 +09:00
Tsuda Kageyu
978a5f0a27
Merge pull request #629 from RyanLucchese/rl-fix-class-instantiation-solstudio
...
check SUNPRO_CC version before using Map workaround
2015-11-18 17:22:25 +09:00
Tsuda Kageyu
8203ccf04c
Merge pull request #608 from TsudaKageyu/mp4-has-tags
...
Add a method to check if an MP4 file on disk actually has a tag.
2015-11-18 17:14:26 +09:00
Tsuda Kageyu
47860c20f4
Make use of List iterators.
2015-11-18 17:06:49 +09:00
Tsuda Kageyu
6e6e11f21a
Use List::isEmpty() rather than size() to check if the list is empty.
...
std::list::empty() is guaranteed to be an O(1) operation.
2015-11-18 16:57:41 +09:00
Tsuda Kageyu
288e97ad44
Make use of List iterators.
2015-11-18 16:38:30 +09:00
Tsuda Kageyu
07b26ab3e4
Make use of List iterators and setAutoDelete().
2015-11-18 15:29:04 +09:00
Tsuda Kageyu
0f00dfc778
Add a comment to List::isEmpty().
2015-11-18 15:14:50 +09:00
Tsuda Kageyu
b01fecd280
Separate some tests for MP4::File::hasMP4Tag().
2015-11-18 14:25:22 +09:00
Tsuda Kageyu
69921b8090
Amend the comment on MP4::File::hasMP4Tag().
2015-11-18 14:17:29 +09:00
Tsuda Kageyu
4f3844114a
Mark some variables and functions deprecated.
...
ByteVector::null, ByteVector::isNull(), String::null, String::isNull() have got marked deprecated.
It's dangerous to use them, and they will be removed in taglib2.
2015-11-18 10:29:25 +09:00
Tsuda Kageyu
76de4234a1
Add a test for the CRC checksum of Ogg pages.
2015-11-17 15:05:43 +09:00
Tsuda Kageyu
4bac99e3da
Add some notes about ByteVector::isNull() and ByteVector::null.
2015-11-17 13:06:03 +09:00
Tsuda Kageyu
6b7a2c4cf7
Add some notes about String::isNull() and String::null.
2015-11-17 11:41:13 +09:00
Tsuda Kageyu
1a942627bf
Add String::clear() method to clear the string.
2015-11-17 11:29:52 +09:00
Tsuda Kageyu
3128f425b8
vsnprintf()/vsprintf() does not necessarily return -1 when failed.
2015-11-17 11:06:19 +09:00
Tsuda Kageyu
3f968933f4
Use std::wstring::empty() rather than size() == 0.
...
Depending on the implementation, empty() can be more efficient than size().
2015-11-17 10:49:30 +09:00
Tsuda Kageyu
67f44071cd
Fix the usage of boost::endian::endian_reverse().
2015-11-14 14:49:59 +09:00
Tsuda Kageyu
a25e1e9f90
Correct the ID3v2 padding size calculation.
2015-11-13 11:44:12 +09:00
Tsuda Kageyu
091ab9dee0
Reduce memory reallocation when rendering an ID3v2 tag.
...
Prevent an ID3v2 padding from being ridiculously large.
2015-11-13 11:35:37 +09:00
Tsuda Kageyu
c353a71ce5
Remove an unused private data member.
2015-11-13 11:23:27 +09:00
Tsuda Kageyu
762581fe3f
Add a method to check if an MP4 file on disk actually has a tag.
2015-11-13 11:14:12 +09:00
Tsuda Kageyu
6775cef651
Make use of the Boost Endian library for byte swapping.
...
It's likely to be better at choosing the most efficient method than our CMake tests.
2015-11-13 10:58:23 +09:00
Tsuda Kageyu
86c7e905ba
Silence some MSVC security warnings by replacing strdup() with _strdup().
...
Backported from taglib2.
2015-11-13 10:06:01 +09:00
Tsuda Kageyu
ec8e611909
Fix an instance reference to a static data member.
2015-11-12 14:48:24 +09:00
Tsuda Kageyu
c66e6b27d9
Small cleanups in CMakeLists.txt.
2015-11-12 14:41:15 +09:00
Tsuda Kageyu
1d379fdb2f
Small cleanups in audioproperties.cpp.
2015-11-12 14:24:04 +09:00
Tsuda Kageyu
47813c5a7f
A bit more accurate calculation of the AIFF audio length.
...
Actually, it's unlikely to improve the accuracy, but prevents a useless round-trip conversion between double and int.
2015-11-12 14:10:09 +09:00
Tsuda Kageyu
94ff9124c7
Skip both ID3v1 and APE tags when seeking the last MPEG frame.
2015-11-12 13:52:46 +09:00
Lukáš Lalinský
9f697fce8e
1.10
2015-11-11 22:41:59 +01:00
Tsuda Kageyu
320d0f5ad7
Use List::isEmpty() than size() > 0.
...
Small revision of pokowaka's fix. isEmpty() is a little better than size() > 0, since std::list::empty() is guaranteed to be an O(1) operation.
2015-11-06 16:13:43 +09:00
Tsuda Kageyu
77087cf865
Merge pull request #675 from garima-g/patch-1
...
Add self-assignment check in operator=
2015-11-05 15:43:03 +09:00
garima-g
8b4a27beb4
Add self-assignment check in operator=
...
Method 'operator=' should check its argument with 'this' pointer.
2015-11-05 11:19:44 +05:30
garima-g
998ebf4ce6
Add self-assignment check in operator=
...
Method 'operator=' should check its argument with 'this' pointer.
2015-11-05 11:16:34 +05:30
garima-g
ccaf650214
Add self-assignment check in operator=
...
Method 'operator=' should check its argument with 'this' pointer.
2015-11-05 11:12:24 +05:30
garima-g
9fad0b28a5
Add self-assignment check in operator=
...
Method 'operator=' should check its argument with 'this' pointer.
2015-11-05 11:09:20 +05:30
Lukáš Lalinský
153820bf12
Merge pull request #669 from pokowaka/bad_access
...
Fixes access violation
2015-10-12 14:30:00 +02:00