Commit Graph

454 Commits

Author SHA1 Message Date
Martchus e81c6bb169 Implement small TODOs for v8 2018-07-12 12:34:38 +02:00
Martchus a87ad5f5ec Don't use global variable for backup directory 2018-07-12 12:34:38 +02:00
Martchus 1a9f71a3ea Remove DiagPtr 2018-07-12 12:34:38 +02:00
Martchus 9361e0bc13 Use constexpr where possible 2018-07-12 12:34:38 +02:00
Martchus 1a97d91b27 Preserve multiple strings in ID3v2 text frames 2018-07-12 12:34:38 +02:00
Martchus e9386cfed5 Use values.front() instead of *values.begin() 2018-07-12 12:34:16 +02:00
Martchus c71a497f2b Don't generate testfiles during testrun
Instead, all additional files are generated in
download_testfiles.sh.
2018-07-11 12:02:30 +02:00
Martchus f7ce79ca47 Don't check encoder version for test file generated with ffmpeg 2018-07-11 12:00:53 +02:00
Martchus 105d8ac83a Test tagging recoding from Android camera app 2018-07-09 16:03:26 +02:00
Martchus 93bd1b2814 Don't warn about invalid language when making MP4 track if empty 2018-07-09 15:57:48 +02:00
Martchus 761b380c03 tests: Fix mkvmerge path 2018-07-09 15:37:48 +02:00
Martchus 687bd976f9 Adjust child offset of meta atom only if within udat
Not sure how meta atoms outside of udat are structured. But
the files from my Android camera puts a meta atom directly under
move which doesn't have 4 additional bytes before the first child.
2018-07-09 14:03:41 +02:00
Martchus f27dbd8934 Update documentation 2018-07-09 12:42:14 +02:00
Martchus 42d4d5ec5a Improve scripts for downloading testfiles
* Download only required files so it is < 400 MiB
* Download everything from the same server rather than
  relying on multiple sources
2018-07-09 12:41:54 +02:00
Martchus 403df73c1c Bump minor release 2018-07-01 23:07:37 +02:00
Martchus 5b8ce47270 Use CPPUNIT_ASSERT_EQUAL in OverallTests::checkMp3TestMetaData() 2018-07-01 22:20:44 +02:00
Martchus d64084ec78 Refactor formatting list of values 2018-07-01 22:11:34 +02:00
Martchus 943123afa1 Warn about ID3v2 text frame with multiple strings
First step to support multiple strings within ID3v2 text
frame.

See
* https://github.com/Martchus/tagparser/issues/10
* https://github.com/Martchus/tageditor/issues/38
2018-07-01 02:04:29 +02:00
Martchus 262b823030 Disable (so far) unused unsignedCb 2018-06-05 22:40:02 +02:00
Martchus bfe8979812 Fix 2 refs in documentation 2018-06-03 21:00:49 +02:00
Martchus 6944f858c4 Fix some warnings in AAC parser 2018-06-03 20:59:38 +02:00
Martchus 74671b5a6d Exclude unfinished AAC stuff from documentation 2018-06-03 20:41:23 +02:00
Martchus 3265e0bea4 Fix documentation which was still using the old namespace 2018-06-03 20:38:32 +02:00
Martchus b7d47cd374 Extend tests for utilities 2018-06-03 20:32:52 +02:00
Martchus 27d3acad9a Document progress feedback 2018-06-03 20:32:35 +02:00
Martchus a7066c27e1 Document diagnostics 2018-06-03 20:32:15 +02:00
Martchus ddff764aa3 Make c'tors of ProgressFeedback public 2018-06-03 19:40:27 +02:00
Martchus 3c29430790 Extend TagValueTests to cover recent fixes 2018-06-03 19:20:02 +02:00
Martchus 60c757dcf6 Add c'tor overload to TagValue to prevent conversion to string 2018-06-03 19:04:48 +02:00
Martchus 8756c8b267 Use std::size_t in TagValue consistently 2018-06-03 18:58:23 +02:00
Martchus a065412d98 Add support for disk position in ID3v2.0 2018-06-02 23:08:38 +02:00
Martchus e87f788dce Prevent multiple heap allocations in MatroskaEditionEntry::label() 2018-06-02 23:05:04 +02:00
Martchus b665d2557a Fix missing break in MatroskaChapter::internalParse() 2018-06-02 23:05:04 +02:00
Martchus 0a640c9f7f Fix warnings, mostly about implicit int conversions
This should fix all non-erros, leaving only warnings which
are indeed potential problems.

The following warnings should be safe to ignore:

* Conversions of various offsets from uint64 to
  std::streamoff/int64 are safe because such offsets have
  been obtained via tellg() and other functions
  returning std::streamoff in the first place.
* It also works vice-versa since tellg() should not
  return negative offsets with exceptions enabled.
* Conversions from char to unsigned char are also ok.
* Unused diag arguments can be ignored (those might be
  useful later).
* Annotate all intended fallthoughs.
2018-06-02 23:04:53 +02:00
Martchus 404e4f751f Improve comments and accessing the value in Id3v2FrameMaker 2018-06-02 19:34:07 +02:00
Martchus 710b7b420a Prevent writing float/e-notation to Id3v2 duration field 2018-06-02 19:31:39 +02:00
Martchus 878b3a3c4e Make diag msg on conversion error in Id3v2FrameMaker more specific 2018-06-02 19:29:43 +02:00
Martchus ba23b49d39 Ensure iostream is included in id3v2tag.cpp 2018-06-02 19:27:29 +02:00
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