Commit Graph

466 Commits

Author SHA1 Message Date
Martchus f1656faa96 Fix TagValue::to{TimeSpan,DateTime}() for UTF-16 2018-06-02 19:23:07 +02:00
Martchus 09c1c6a232 Improve coding style in TagValue 2018-06-02 19:22:26 +02:00
Martchus fd1864c3df Make error messages in TagValue more specific 2018-06-02 19:21:15 +02:00
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 221409fdcf Make Vorbis Comments consistently case insensitive 2018-05-13 20:41:26 +02:00
Martchus 8887ae81cf Don't use exception in MatroskaTag::internallyGetKnownField() 2018-05-13 20:40:30 +02:00
Martchus 2431889b64 Apply clang-format 2018-05-13 00:25:14 +02:00
Martchus c377524850 Fix FieldMapBasedTag<ImplementationType>::knownField() 2018-05-13 00:25:02 +02:00
Martchus 7d65a91900 Update patch version 2018-05-08 18:47:03 +02:00
Martchus 62999e0be6 Fix usage of enable_if with GCC 8
Seems like the trick with the three dots isn't working
with GCC 8 anymore. So let's make it a default template
parameter then.

Not sure whether GCC 8 is here correct and whether this
workaround causes further trouble.
2018-05-07 23:52:38 +02:00
Martchus b58eac9302 Use CPPUNIT_ASSERT_EQUAL in tests where possible 2018-04-30 19:00:22 +02:00
Martchus e29f9bd4f8 Fix warnings in MediaFileInfo, make safe casts explicit 2018-04-30 19:00:02 +02:00
Martchus 1889afef8f Take over track parsing status when parsing FLAC tags 2018-04-30 18:59:17 +02:00
Martchus 9cbc708a56 Apply clang-format 2018-04-29 21:15:34 +02:00
Martchus ce4bd73037 Fix setting "isLast" flag when making FLAC header 2018-04-29 21:14:28 +02:00
Martchus 01a0c730ba Make operators for VorbisCommentFlags constexpr 2018-04-29 21:14:02 +02:00
Martchus 388945d2b4 Add diag message when padding not supported 2018-04-29 21:13:30 +02:00
Martchus 9b83cc37f6 Handle case when Vorbis Comment exceeds max. size in FLAC stream 2018-04-29 19:45:20 +02:00
Martchus 30553c947c Fix warnings and improve style in makeMp3File() 2018-04-29 18:58:41 +02:00
Martchus ae65ad0408 Fix removing tags from FLAC files 2018-04-29 18:17:24 +02:00
Martchus 96010768f0 Improve documentation in MediaFileInfo 2018-04-29 18:11:15 +02:00
Martchus b76c334606 Apply clang-format 2018-04-29 17:19:33 +02:00
Martchus 0f0260fb77 Fix parseTags() for FLAC, consider tags unsupported if container unknown
FLAC stores tags on track level. Hence we must parse the
tracks here in order to parse the tags. This hasn't been taken
into account when refactoring the tag editor CLI leading to
https://github.com/Martchus/tageditor/issues/36.

So let's handle these format specific details in the tagparser
library which will now internally parse tracks when calling
parseTags() on FLAC files.

This also fixes the weird behavior to consider tags supported
although the container format is unknown.
2018-04-29 17:18:17 +02:00
Martchus d856fb4c75 Use std::numeric_limits 2018-03-21 20:40:51 +01:00
Martchus 20b4cc833f Reorder enums 2018-03-21 20:31:29 +01:00
Martchus f5bd1dc4e8 Use unsigned int as underlying type for enums 2018-03-21 20:30:51 +01:00
Martchus cbb54d5aeb Allow custom writing application 2018-03-20 21:41:05 +01:00
Martchus 3e85eba00f Apply clang-format 2018-03-14 17:56:37 +01:00
Martchus 281d3e7952 Workaround GGC bug 66297 2018-03-13 22:06:32 +01:00
Martchus ca0b8e4d8c Improve coding style 2018-03-11 22:28:15 +01:00
Martchus 706c410edb Clear description encoding of TagValue 2018-03-11 22:27:55 +01:00
Martchus 59024a66a0 Don't clear field before parsing by default 2018-03-11 22:27:12 +01:00
Martchus 8d91886b14 Improve test output for TagValues 2018-03-11 22:24:57 +01:00
Martchus ed9939dc74 Support 'file://' protocol prefix 2018-03-11 19:15:13 +01:00
Martchus b47705ff81 Refactor MediaFileInfo::createAppropriateTags() 2018-03-11 18:57:22 +01:00
Martchus dabd18102e Remove out-commented code for nested tags 2018-03-11 16:15:46 +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 a26b98dcd7 Improve TagValue
* Make more functions inline
* Fix use of std::size_t
2018-03-11 15:16:09 +01:00
Martchus c0336ed4bb Apply clang-format 2018-03-07 01:17:50 +01:00
Martchus 27600642f1 Sort file names 2018-03-07 01:14:28 +01:00
Martchus a0986ad4a9 Fix style issues 2018-03-07 01:11:42 +01:00
Martchus efa67d6a1a Improve siblingById() and subelementByPath()
* Use 2 functions instead of flag parameter
* Support const correctness
2018-03-07 00:30:08 +01:00
Martchus 091fa1daf7 Use "..." to implement subelementByPath 2018-03-07 00:16:20 +01:00
Martchus 88edd43f8c Document usage, especially error handling 2018-03-06 23:50:40 +01:00
Martchus a5813f742e Re-add the WIP AAC parser
So it is considered when refactoring.
2018-03-06 23:17:35 +01:00
Martchus 0e15c74103 Move everything into namespace TagParser 2018-03-06 23:09:15 +01:00