b2c02e9acc
Fix childs -> children
2019-12-30 22:54:11 +01:00
7043c3d2a9
Don't suppress IO errors when writing files
...
* Close or flush streams explicitely so writing is not
deferred
* to catch errors in the right place
* to avoid suppressing errors completely when writing
would be deferred to the destructor invocation
* Improve comments
2019-12-15 19:43:16 +01:00
86b980f609
Apply clang-format
2019-06-20 22:56:59 +02:00
c8973c742c
Remove unused functions of MatroskaSeekInfo
2019-06-17 19:11:20 +02:00
480857b1b6
Parse "SeekHead" elements referenced by "Seek" elements
...
Follow at least one level of indirection by default
2019-06-17 19:11:00 +02:00
0c2056c2f9
Refactor WaveFormatHeader::parse()
2019-06-16 18:06:31 +02:00
c9e1dde70b
Adapt to changes in c++utilities
2019-06-12 20:40:45 +02:00
5ad00a083c
Adapt to changes in c++utilities
2019-06-10 23:11:39 +02:00
c17db5f2f6
Apply cmake-format and clang-format
2019-05-04 21:03:09 +02:00
3288d49d62
Support 'file://' URLs also when saving
2019-05-04 16:04:37 +02:00
7efa7a0d5a
Adapt to c++utilities v5
2019-05-04 16:04:21 +02:00
3332314eb6
Prepare logging errors when parsing AVC config
2018-08-23 23:20:17 +02:00
1dc8fb4839
Detect AV1 in MKV
2018-07-28 14:54:46 +02:00
a2ff0f418f
Fix typo occured -> occurred
2018-07-23 14:44:06 +02:00
7d709ce9af
Add Tag::supportsMultipleValues()
2018-07-13 12:25:00 +02:00
af4b43ff79
Replace typedef with using
2018-07-12 12:34:38 +02:00
e81c6bb169
Implement small TODOs for v8
2018-07-12 12:34:38 +02:00
a87ad5f5ec
Don't use global variable for backup directory
2018-07-12 12:34:38 +02:00
9361e0bc13
Use constexpr where possible
2018-07-12 12:34:38 +02:00
3265e0bea4
Fix documentation which was still using the old namespace
2018-06-03 20:38:32 +02:00
e87f788dce
Prevent multiple heap allocations in MatroskaEditionEntry::label()
2018-06-02 23:05:04 +02:00
b665d2557a
Fix missing break in MatroskaChapter::internalParse()
2018-06-02 23:05:04 +02:00
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
8887ae81cf
Don't use exception in MatroskaTag::internallyGetKnownField()
2018-05-13 20:40:30 +02:00
2431889b64
Apply clang-format
2018-05-13 00:25:14 +02:00
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
cbb54d5aeb
Allow custom writing application
2018-03-20 21:41:05 +01:00
59024a66a0
Don't clear field before parsing by default
2018-03-11 22:27:12 +01:00
c0336ed4bb
Apply clang-format
2018-03-07 01:17:50 +01:00
efa67d6a1a
Improve siblingById() and subelementByPath()
...
* Use 2 functions instead of flag parameter
* Support const correctness
2018-03-07 00:30:08 +01:00
0e15c74103
Move everything into namespace TagParser
2018-03-06 23:09:15 +01:00
36511fcc13
Add progress feedback and diagnostics replacing status provider
2018-03-06 22:44:01 +01:00
652e4809b4
Use unordered_map in MatroskaCuePositionUpdater
...
std::unordered_map should be faster than std::map
2018-03-06 22:44:01 +01:00
e705de3704
Handle Mkv files with unknown element sizes correctly
...
Those elements are still assumed to fill the max available
space. However, if it turns out one "child" is more likely
a sibling, the wrong assumption is fixed.
2018-03-06 22:44:01 +01:00
5ed20c7e8e
Add function to determine Mkv element level by ID
...
Does not cover all element IDs but should be more
than sufficient for its purpose.
2018-03-06 22:44:01 +01:00
038d30587c
Uniform spelling of Matroska IDs
2018-03-06 22:44:01 +01:00
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
0daabba17a
Use static polymorphism in FieldMapBasedTag
2018-03-06 22:44:01 +01:00
138fa32f29
Restructure FieldMapBasedTag to use CRTP
2018-03-06 22:44:01 +01:00
b55d956b83
Fix some warnings
2018-02-05 14:51:21 +01:00
6068bb09dc
Improve coding style in determineElementPosition()
2018-02-05 00:59:34 +01:00
ae4e46869d
Fix warning (signedness conversion)
2018-02-05 00:41:35 +01:00
2c4b0abbea
Use C++ random API
2018-02-05 00:40:11 +01:00
74054e6e87
Fix default timecode scale in Matroska
2018-02-05 00:11:28 +01:00
e5c93e8293
Update 100 % percentage correctly
2017-10-30 08:21:17 +01:00
c9b961d6b4
Remove some TODOs in MatroskaContainer and reindent accordingly
2017-10-09 21:16:11 +02:00
17c76a5f29
Allow to abort making Mkv file when calculating cues
2017-10-09 21:00:52 +02:00
b1f207303c
Fix warnings in MatroskaContainer
2017-10-09 20:59:43 +02:00
d717913e99
Improve progress updates when making Mkv file
2017-09-21 23:30:35 +02:00
dc32ca77fb
Use const in MatroskaCuePositionUpdater::updateSize
2017-09-21 23:30:35 +02:00