Martchus
bf7428d066
Fix warnings, improve coding style
2018-05-31 00:25:32 +02:00
Martchus
a3bf8267ac
Fix treating short and long ID3v2 frame IDs as equal
2018-05-31 00:25:06 +02:00
Martchus
047e9f7fd0
ID3v2: Warn if specified string is no valid position
2018-05-31 00:23:01 +02:00
Martchus
38da0c796b
ID1v1: Allow conversion from int/string to position
2018-05-31 00:21:54 +02:00
Martchus
ca0b8e4d8c
Improve coding style
2018-03-11 22:28:15 +01:00
Martchus
59024a66a0
Don't clear field before parsing by default
2018-03-11 22:27:12 +01:00
Martchus
b35fc2ff0d
Improve some structure layouts
2018-03-11 16:14:42 +01:00
Martchus
0215b89057
Improve Id3v2Frame
2018-03-11 16:03:22 +01:00
Martchus
c0336ed4bb
Apply clang-format
2018-03-07 01:17:50 +01:00
Martchus
a0986ad4a9
Fix style issues
2018-03-07 01:11:42 +01:00
Martchus
0e15c74103
Move everything into namespace TagParser
2018-03-06 23:09:15 +01:00
Martchus
36511fcc13
Add progress feedback and diagnostics replacing status provider
2018-03-06 22:44:01 +01:00
Martchus
7a02e8a325
Uniform/simplify typedefs in templates
...
* Begin type names with capital letter
* Remove typedefs for implementation type
* Remove useless/obsolete comments
* Simplify relevant code
2018-03-06 22:44:01 +01:00
Martchus
0daabba17a
Use static polymorphism in FieldMapBasedTag
2018-03-06 22:44:01 +01:00
Martchus
138fa32f29
Restructure FieldMapBasedTag to use CRTP
2018-03-06 22:44:01 +01:00
Martchus
6a62ef7fc2
Fix typo
2018-01-29 16:33:55 +01:00
Martchus
f65b90885a
Improve coding style
2017-10-09 21:49:04 +02:00
Martchus
8ae3dd6f6f
Specify behaviour of Id3Genres::indexFromString() in error case
2017-06-03 21:00:36 +02:00
Martchus
6b705d5652
Mind encoding when converting TagValue to pos
2017-06-03 21:00:26 +02:00
Martchus
79845b96dc
Remove friend class from Id3v2Frame
2017-05-29 14:36:22 +02:00
Martchus
0d39a70b5f
Improve making picture/comment frames
2017-05-29 14:05:15 +02:00
Martchus
8f5f61c85e
Fix finding termination in ID3v2 description
...
This check is only to prevent writing bad frame
when given description contains termination
2017-05-21 00:09:09 +02:00
Martchus
e925e15533
Improve handling of Unicode and BOM in ID3v2
...
* Convert UTF-8 text fields automatically to UTF-16
when version is ID3v2.3 or below
-> so conversion from ID3v2.4 to ID3v2.3 or below
doesn't require manual conversion of possibly
UTF-8 encoded fields
* Don't use magic numbers for ID3v2 encoding byte
* Don't warn about UTF-16 Big Endian with BOM
2017-05-20 23:34:45 +02:00
Martchus
23e84886d4
Id3v2Frame: Write BOM explicitely
...
* Instead of leaving this up to the application
* So the BOM isn't missing anymore when using
CLI of Tag Editor
2017-05-18 02:27:08 +02:00
Martchus
909d21c076
Don't treat TXXX ID3v2 frames as text frames
2017-05-18 02:27:08 +02:00
Martchus
c3394acdb2
Fix typos
2017-03-01 18:21:00 +01:00
Martchus
424b238539
Make context static const where possible
2017-02-06 18:53:09 +01:00
Martchus
add833f87f
Fix conversion of ID3v2 length frame using UTF-16
2017-02-05 22:51:27 +01:00
Martchus
b97192abd3
Use std::make_unique provided by C++14
2017-02-05 21:02:40 +01:00
Martchus
5037713071
Remove numberToString() where possible
2017-01-30 00:42:35 +01:00
Martchus
230a14fcf1
Use string builder rather than stringstream
2017-01-27 21:27:24 +01:00
Martchus
541f14039b
Make use of string builder
2017-01-27 18:59:22 +01:00
Martchus
b4e167bd71
Ease dealing with native field IDs
...
In particular, this allow conversion from native field IDs
to readible string representation and vice verca
2017-01-23 00:25:53 +01:00
Martchus
e13263143d
Consider long and short ID3v2 IDs equal
2016-12-27 23:57:21 +01:00
Martchus
e9166c19a5
Don't allow using UTF-8 in ID3v1
2016-12-21 00:41:53 +01:00
Martchus
1ddaa4f693
Fix indentation in id3v2frame.cpp
2016-11-13 23:57:59 +01:00
Martchus
633d68f4c9
Ensure parseWideString() returns host byte order
2016-11-13 23:56:49 +01:00
Martchus
f39d8abcd4
Don't use UTF-8 for ID3 v2.3 or older
...
Support for UTF-8 is not mentioned in specification
for ID3v2.3 (only in ID3v2.4).
http://id3.org/id3v2.3.0#Text_information_frames
http://id3.org/id3v2.4.0-structure
2016-11-12 16:24:37 +01:00
Martchus
0cf30edbff
Fix decoration for static builds
2016-08-29 15:43:05 +02:00
Martchus
d5c8086230
Improve misc details
2016-08-05 01:46:31 +02:00
Martchus
1e17bf47d3
Fix size calculation of ID3v2.2 frames
2016-08-05 01:30:46 +02:00
Martchus
817a8e25e6
Improve documentation and consistency
2016-08-04 00:16:19 +02:00
Martchus
7e058f289c
Improve API doc
2016-06-15 22:53:39 +02:00
Martchus
2c5d463a9f
Improve API doc
2016-06-10 23:08:01 +02:00
Martchus
a84ac37dbe
Add support for raw FLAC streams
2016-05-16 20:56:53 +02:00
Martchus
12000f826e
ID3v2: don't consider comment frame without actual text incomplete
2016-05-06 21:59:19 +02:00
Martchus
899e2a97fe
small improvements
...
- fixed some mostly ID3/MP3 related bugs
- added convenience methods/operators
2016-03-18 21:43:09 +01:00
Martchus
617679e001
improved parsing ID3 genres
2016-02-23 20:33:00 +01:00
Martchus
6f0adce661
make use of padding when applying changes to MP3 files
2015-12-22 23:54:35 +01:00
Martchus
979427beb3
improved ID3v2 implementation
2015-12-22 17:01:25 +01:00