Martchus
0a041f6ad2
Fix warnings
2021-03-20 21:26:25 +01:00
Martchus
65597fd71e
Add API to allow aborting overall/expensive parsing functions
...
* Not really implemented within the various code paths of the parsers at
this point; this commit mainly adds the API.
* Adjust example in README
2021-02-04 23:21:50 +01:00
Martchus
6b469f1c26
Add Locale class to deal with differently specified languages/countries
...
Different media/tag formats specify languages and countries
differently. This change introduces a Locale class to keep track
of the format being used. So far there are no automatic conversions
implemented so it is entirely up to the user to pass valid values using
a format which matches the one required by the media/tag format.
This change also adds support for Matroska's IETF elements so at least the
raw value can be read, written and is preserved.
2020-12-16 17:48:08 +01:00
Martchus
4cc2dbd9e6
Use flags instead of tons of boolean fields in AbstractTrack
2020-12-16 17:48:08 +01:00
Martchus
b2c02e9acc
Fix childs -> children
2019-12-30 22:54:11 +01:00
Martchus
9299c58c22
Detect VP9 in MP4
2019-09-25 22:05:25 +02:00
Martchus
eb9ab514eb
Detect Opus and FLAC in MP4
2019-09-25 21:52:44 +02:00
Martchus
48ee8023b2
Remove useless remarks
2019-06-16 18:04:31 +02:00
Martchus
c9e1dde70b
Adapt to changes in c++utilities
2019-06-12 20:40:45 +02:00
Martchus
5ad00a083c
Adapt to changes in c++utilities
2019-06-10 23:11:39 +02:00
Martchus
c17db5f2f6
Apply cmake-format and clang-format
2019-05-04 21:03:09 +02:00
Martchus
7efa7a0d5a
Adapt to c++utilities v5
2019-05-04 16:04:21 +02:00
Martchus
f687618002
Reduce compiler warnings in Mp4Track code
2019-04-21 18:18:56 +02:00
Martchus
bfb460d4fd
Preserve empty/zero language in MP4 tracks
2019-04-21 18:15:53 +02:00
Martchus
66895e8e2c
Distinguish text and "meta" tracks in MP4
2019-04-19 21:59:46 +02:00
Martchus
48166bde9e
Prevent updating tkhd atom to version 1 for compatibility
2019-04-19 21:59:42 +02:00
Martchus
8588edaa2e
Write preferably version 0 of mdhd atom for compatibility
2019-04-18 17:56:03 +02:00
Martchus
27d7a182d9
Preserve all child elements within trak element
2019-04-17 17:52:04 +02:00
Martchus
da15530f53
Remove obsolete code
2019-04-16 21:49:16 +02:00
Martchus
2d306b1a5f
Preserve all children of minf atom
...
See https://github.com/Martchus/tageditor/issues/45
2019-04-15 18:21:33 +02:00
Martchus
0024d5e115
Make message about parsing AV1 config not supported an info
...
rather than a critical error
2018-11-08 14:31:35 +01:00
Martchus
60f1288e42
Fix some warnings
2018-08-23 23:20:29 +02:00
Martchus
3332314eb6
Prepare logging errors when parsing AVC config
2018-08-23 23:20:17 +02:00
Martchus
534cb2a6f7
Prepare parsing AV1 config
2018-08-23 23:18:57 +02:00
Martchus
c4adad4297
Detect AV1 in IVF stream
2018-07-28 14:56:00 +02:00
Martchus
e81c6bb169
Implement small TODOs for v8
2018-07-12 12:34:38 +02:00
Martchus
9361e0bc13
Use constexpr where possible
2018-07-12 12:34:38 +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
3265e0bea4
Fix documentation which was still using the old namespace
2018-06-03 20:38:32 +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
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
efa67d6a1a
Improve siblingById() and subelementByPath()
...
* Use 2 functions instead of flag parameter
* Support const correctness
2018-03-07 00:30:08 +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
d968b7cfd1
Prevent comparison of signed and unsigned
2017-09-21 23:30:35 +02:00
Martchus
fe5ac296b3
Fix unused lambda capture
2017-09-20 19:39:04 +02:00
Martchus
ba8c9204a9
Fix messing track header of MP4 files (tkhd atom)
2017-09-14 01:37:15 +02:00
Martchus
99b177a9ff
Handle invalid language for MP4 track better
2017-06-17 00:32:38 +02:00
Martchus
f323061767
Apply MP4 track meta-data also when not writing chunk-by-chunk
2017-06-17 00:31:35 +02:00
Martchus
b4de493b56
Prevent warning about unused variable
2017-06-11 01:22:30 +02:00
Martchus
d8d3fbd487
Enable code for parsing MP4 chunk-offsets from fragments
2017-05-29 00:58:44 +02:00
Martchus
4faef55906
Fix writing MP4 chunk-by-chunk
...
This also involves finally implementing
Mp4Track::makeTrack(). Mp4Track::makeSampleTable()
which would enable modifying stbl atom is still not
fully implemented yet, though.
2017-05-29 00:58:08 +02:00
Martchus
c3394acdb2
Fix typos
2017-03-01 18:21:00 +01:00
Martchus
541f14039b
Make use of string builder
2017-01-27 18:59:22 +01:00
Martchus
817a8e25e6
Improve documentation and consistency
2016-08-04 00:16:19 +02:00
Martchus
cf5b021180
Use workaround for GCC Bug 66145
2016-06-14 22:53:43 +02:00
Martchus
ddf9ef02f8
improved handling of unsupported files
...
additionally:
- added detection for QuickTime files
- minor adjustments
2016-03-14 21:56:27 +01:00
Martchus
19593d4c24
added media format MPEG-4 Timed Text
2016-02-20 01:42:01 +01:00
Martchus
488fce3ab8
parsing AVC config
2016-02-17 20:19:05 +01:00