]>
granicus.if.org Git - libmatroska/log
Steve Lhomme [Sun, 16 Oct 2022 14:39:18 +0000 (16:39 +0200)]
add the tag writer to the built examples
And remove dead code.
Steve Lhomme [Sun, 16 Oct 2022 14:24:06 +0000 (16:24 +0200)]
CI: split general/libmatroska configure arguments
Steve Lhomme [Sun, 16 Oct 2022 14:15:11 +0000 (16:15 +0200)]
CI: simplify workflow names
Steve Lhomme [Sun, 16 Oct 2022 14:14:09 +0000 (16:14 +0200)]
CI: only build desktop builds with XP targets
If it can do XP (that we need for VLC 3), it can do Win10 that we also test in
UWP builds.
Steve Lhomme [Sun, 16 Oct 2022 14:13:16 +0000 (16:13 +0200)]
CI: add separate UWP target
It requires less targets
Steve Lhomme [Sat, 15 Oct 2022 14:00:21 +0000 (16:00 +0200)]
CI: build macos on multiple architectures
So we may spot differences/warnings/issues on both platforms.
Steve Lhomme [Sat, 15 Oct 2022 13:57:51 +0000 (15:57 +0200)]
CI: build Windows on multiple architectures
So we have a platform building on 32 bits and on arm.
Steve Lhomme [Sat, 15 Oct 2022 14:17:09 +0000 (16:17 +0200)]
CI: don't build C++ with any compiler extension
Use -std=c++14 instead of -std=gnu++14 so we can tell when using improper C++.
Steve Lhomme [Sun, 16 Oct 2022 12:19:24 +0000 (14:19 +0200)]
CI: use an extended map for the Static/Dynamic matrix option
Steve Lhomme [Sun, 16 Oct 2022 14:33:59 +0000 (16:33 +0200)]
test8: initialize all element levels
Fixes a warning/error with VS2022
Steve Lhomme [Sat, 22 Oct 2022 12:11:19 +0000 (14:11 +0200)]
KaxSemantic: update with latest spectool (using clean enum text)
Moritz Bunkus [Sun, 16 Oct 2022 11:05:16 +0000 (13:05 +0200)]
Merge remote-tracking branch 'origin/safe-access'
Moritz Bunkus [Sun, 16 Oct 2022 11:04:56 +0000 (13:04 +0200)]
Merge remote-tracking branch 'origin/test-build-examples'
Moritz Bunkus [Sun, 16 Oct 2022 11:00:54 +0000 (13:00 +0200)]
Merge remote-tracking branch 'neheb/clang'
Moritz Bunkus [Sun, 16 Oct 2022 10:43:00 +0000 (12:43 +0200)]
Merge remote-tracking branch 'neheb/clng'
Steve Lhomme [Sun, 16 Oct 2022 08:24:22 +0000 (10:24 +0200)]
CI: build test examples
This will help find linking issues and incompatible changes.
Steve Lhomme [Sun, 16 Oct 2022 08:21:43 +0000 (10:21 +0200)]
add an option to build example code
Off by default.
Steve Lhomme [Sun, 16 Oct 2022 08:22:41 +0000 (10:22 +0200)]
apply _CRT_SECURE_NO_WARNINGS on all Windows targets
That includes clang-cl. It will have no downside effect on mingw64 builds.
Steve Lhomme [Sun, 16 Oct 2022 07:55:04 +0000 (09:55 +0200)]
fix test00 compilation
Steve Lhomme [Sun, 16 Oct 2022 07:54:53 +0000 (09:54 +0200)]
fix test8 compilation
Steve Lhomme [Sun, 16 Oct 2022 06:58:58 +0000 (08:58 +0200)]
use GetEndPosition() to seek to the end of a Virtual element
Steve Lhomme [Sun, 16 Oct 2022 06:58:12 +0000 (08:58 +0200)]
avoid using protected member variables
If libebml is compiled in strict mode, these fields can't be accessed, but we
can still access them with the proper methods.
Rosen Penev [Tue, 4 Oct 2022 01:36:02 +0000 (18:36 -0700)]
use push_back
This is a vector. No need for iterators.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Rosen Penev [Sat, 15 Oct 2022 17:08:12 +0000 (10:08 -0700)]
remove const reference operators
They do the same as the non const ones.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Rosen Penev [Sat, 15 Oct 2022 16:53:24 +0000 (09:53 -0700)]
clang-tidy: remove non const operator
Found with readability-make-member-function-const
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Rosen Penev [Sat, 15 Oct 2022 16:00:56 +0000 (09:00 -0700)]
find_if conversion
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Moritz Bunkus [Sat, 15 Oct 2022 14:29:29 +0000 (16:29 +0200)]
Merge remote-tracking branch 'origin/int-literal'
Moritz Bunkus [Sat, 15 Oct 2022 14:26:51 +0000 (16:26 +0200)]
Merge remote-tracking branch 'origin/svn-tag'
Steve Lhomme [Sat, 15 Oct 2022 13:25:23 +0000 (15:25 +0200)]
replace EBML_PRETTYLONGINT with proper C++ integer literal
The suffix l/L and ll/LL can/should be used:
https://en.cppreference.com/w/cpp/language/integer_literal
This is equivalent to the previous code with gcc/clang. Theoretically it should
be used to write in a long( long) and for uint64_t values we should use
UINT64_C().
Steve Lhomme [Sat, 15 Oct 2022 09:05:15 +0000 (11:05 +0200)]
remove empty matroska/c headers
We're not going to make a C wrapper for libmatroska.
Steve Lhomme [Sat, 15 Oct 2022 09:03:07 +0000 (11:03 +0200)]
remove code marked as OLD
It's never compiled by anyone.
Steve Lhomme [Sat, 15 Oct 2022 09:01:00 +0000 (11:01 +0200)]
move libmatroska_t.h type definitions in KaxTypes.h
Steve Lhomme [Sat, 15 Oct 2022 08:58:03 +0000 (10:58 +0200)]
use std::size_t instead of size_t
They are supposed to be the same but it's more C++ friendly.
Steve Lhomme [Sat, 15 Oct 2022 08:57:09 +0000 (10:57 +0200)]
use standard C++ integer types instead of old libebml ones
Steve Lhomme [Sat, 15 Oct 2022 13:13:21 +0000 (15:13 +0200)]
remove confusing SVN version tag
The version text doesn't match the code anymore.
Steve Lhomme [Sat, 15 Oct 2022 08:41:59 +0000 (10:41 +0200)]
don't use local include pathes to find libebml headers
Steve Lhomme [Sat, 15 Oct 2022 08:41:51 +0000 (10:41 +0200)]
use EbmlTypes.h instead of libebml_t.h
Moritz Bunkus [Sun, 2 Oct 2022 18:24:28 +0000 (20:24 +0200)]
require libEBML 2.0.0 or newer
libEBML currently installs the cmake module config with "COMPATIBILITY
SameMajorVersion", meaning we cannot request "version 1.4.3 or 2.0.0
or newer" in libMatroska. As libEBML 2.0.0 is an API-breaking change
anyway, it libMatroska should not pretend to continue working with <
2.0.0 anyway.
Steve Lhomme [Sun, 2 Oct 2022 11:29:49 +0000 (13:29 +0200)]
CI: use better names for static/dynamic jobs
Steve Lhomme [Sun, 2 Oct 2022 07:40:08 +0000 (09:40 +0200)]
Action: build static and dynamic libraries on Windows
Steve Lhomme [Sun, 2 Oct 2022 07:34:25 +0000 (09:34 +0200)]
allow selecting the DLL vs static library build more
This is often done in CMake projects to show the option to the user.
Rosen Penev [Sun, 2 Oct 2022 21:10:25 +0000 (14:10 -0700)]
fix mistaken reference
The static cast clarifies this is a pointer.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Rosen Penev [Sun, 2 Oct 2022 21:14:08 +0000 (14:14 -0700)]
replace auto&& with const ref
auto&& is universal in that it evaluates to const and non const
references. Probably clearer to use regular ones.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Rosen Penev [Sun, 2 Oct 2022 20:49:09 +0000 (13:49 -0700)]
nullptr + const changes
Remove nullptr comparison. Just use bool.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Rosen Penev [Sun, 2 Oct 2022 20:37:13 +0000 (13:37 -0700)]
simplify return
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Rosen Penev [Thu, 29 Sep 2022 23:20:46 +0000 (16:20 -0700)]
clang-tidy: don't use else after return
Less indentation.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Rosen Penev [Tue, 27 Sep 2022 00:12:37 +0000 (17:12 -0700)]
manually convert some loops to range ones
Rosen Penev [Mon, 26 Sep 2022 22:59:28 +0000 (15:59 -0700)]
further simplify
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Rosen Penev [Mon, 26 Sep 2022 22:55:09 +0000 (15:55 -0700)]
manual find_if conversion
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Rosen Penev [Mon, 26 Sep 2022 22:32:19 +0000 (15:32 -0700)]
SonarLint: misc fixes
auto fixes were mostly to supress const pointer warnings
Some for range loop conversions that it saw through.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Rosen Penev [Mon, 26 Sep 2022 21:51:59 +0000 (14:51 -0700)]
clang-tidy: avoid some implicit conversions
Found by adding explicit for various operators
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Moritz Bunkus [Sat, 1 Oct 2022 09:50:51 +0000 (11:50 +0200)]
bump soname to 8 due to ABI-breaking changes & bump version number
libEBML needed an soname bump due to being compiled in C++14,
therefore libMatroska cannot stay on the same soname either. See
https://github.com/Matroska-Org/libebml/issues/104
Moritz Bunkus [Fri, 30 Sep 2022 09:39:26 +0000 (11:39 +0200)]
NEWS: add version number & release date
Rosen Penev [Sun, 25 Sep 2022 01:59:45 +0000 (18:59 -0700)]
remove unnecessary references
Pointers are already used.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Rosen Penev [Sat, 24 Sep 2022 21:34:44 +0000 (14:34 -0700)]
clang-tidy: do the same for pointers
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Rosen Penev [Sat, 24 Sep 2022 21:21:07 +0000 (14:21 -0700)]
clang-tidy: add const
Found with misc-const-correctness
Also manually simplified several any_of/find_if calls.
Also added manual auto with static_cast
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Rosen Penev [Sat, 24 Sep 2022 21:13:46 +0000 (14:13 -0700)]
clang-tidy: remove redundant init
Found with modernize-use-default-member-init
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Rosen Penev [Wed, 3 Mar 2021 23:44:06 +0000 (15:44 -0800)]
clang-tidy: remove redundant dereferences
Found with readability-redundant-function-ptr-dereference
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Steve Lhomme [Sun, 25 Sep 2022 05:41:50 +0000 (07:41 +0200)]
CI: add a basic compilation test
It needs to build libebml first.
Moritz Bunkus [Sun, 25 Sep 2022 11:19:37 +0000 (13:19 +0200)]
Revert "KaxSemantic: update with latest spectool (using C++-style enums)"
This reverts commit
829c6d7ea24213d5320a1cc87f4660cf8f43d602 .
Moritz Bunkus [Sun, 25 Sep 2022 10:34:46 +0000 (12:34 +0200)]
KaxSemantic: update with latest spectool (using C++-style enums)
Moritz Bunkus [Sat, 24 Sep 2022 20:12:13 +0000 (22:12 +0200)]
bump version number to v1.7.0
Even though the number had already been bumped to 1.6.4 after the last
release, all the changes in this release might need adjustments in the
applications using them for writing files, even though the libraries
should still be API and ABI backwards compatible.
Moritz Bunkus [Sat, 24 Sep 2022 20:11:25 +0000 (22:11 +0200)]
update NEWS
Moritz Bunkus [Sat, 24 Sep 2022 19:56:36 +0000 (21:56 +0200)]
bump libEBML version requirement to v1.4.3
Moritz Bunkus [Sat, 24 Sep 2022 19:27:21 +0000 (21:27 +0200)]
cosmetics: restore alignment/indentation
Moritz Bunkus [Sat, 24 Sep 2022 19:01:45 +0000 (21:01 +0200)]
Merge remote-tracking branch 'neheb/2'
Moritz Bunkus [Sat, 24 Sep 2022 18:47:53 +0000 (20:47 +0200)]
style: use override specifier in auto-generated code
Moritz Bunkus [Thu, 22 Sep 2022 12:59:25 +0000 (14:59 +0200)]
KaxSemantic: fix invalid element ID for KaxEmphasis
See https://github.com/ietf-wg-cellar/matroska-specification/pull/673
Moritz Bunkus [Thu, 22 Sep 2022 12:58:22 +0000 (14:58 +0200)]
KaxSemantic: re-enable KaxClusterPosition
Existing tools use that element.
See https://github.com/ietf-wg-cellar/matroska-specification/pull/670
Steve Lhomme [Sun, 11 Sep 2022 12:49:13 +0000 (14:49 +0200)]
KaxSemantic: add KaxEditionDisplay elements
Added in https://github.com/ietf-wg-cellar/matroska-specification/pull/606
Steve Lhomme [Sun, 11 Sep 2022 12:48:26 +0000 (14:48 +0200)]
KaxSemantic: add KaxChapterSkipType chapter element
Added in https://github.com/ietf-wg-cellar/matroska-specification/pull/318
Steve Lhomme [Sun, 11 Sep 2022 12:47:11 +0000 (14:47 +0200)]
KaxSemantic: add KaxEmphasis audio element
Add in https://github.com/ietf-wg-cellar/matroska-specification/pull/659
Moritz Bunkus [Sun, 18 Sep 2022 14:16:15 +0000 (16:16 +0200)]
Merge branch 'c++14'
Steve Lhomme [Sun, 18 Sep 2022 05:02:20 +0000 (07:02 +0200)]
KaxSemantic.cpp: make KaxChapters allowed multiple times
It should be unique but it's a 'recurring' elements which might be copied
multiple times in the same parent.
See https://github.com/ietf-wg-cellar/matroska-specification/pull/438
Steve Lhomme [Sun, 11 Sep 2022 12:07:28 +0000 (14:07 +0200)]
KaxSemantic: reorder elements to match the code generation and EBML Schema
Affected elements:
* KaxChapterTranslateID
* KaxChapterTranslateEditionUID
* KaxChapterTranslateCodec
* KaxBlockAdditional
* KaxBlockAddID
* KaxTrackTranslateTrackID
* KaxTrackTranslateEditionUID
* KaxTrackTranslateCodec
Steve Lhomme [Sun, 21 Aug 2022 15:16:20 +0000 (17:16 +0200)]
KaxSemantic: mark OldStereoMode as supported
It exists in Matroska v1 and v2 but we don't allow writing it as it's deprecated.
Steve Lhomme [Sun, 13 Mar 2022 08:47:28 +0000 (09:47 +0100)]
KaxSemantic: add TagDefaultBogus
The infamous libavformat TagDefault bogus value.
See https://github.com/ietf-wg-cellar/matroska-specification/commit/
31ce1cb593ed044d3e57b5a7258bef8c988be352
Steve Lhomme [Sun, 13 Mar 2022 09:21:29 +0000 (10:21 +0100)]
KaxSemantic.cpp: remove the default value of some new TrackEntry elements
See https://github.com/ietf-wg-cellar/matroska-specification/commit/
4dbdf03f04798584085b34236a750681c7d4a1a5
Steve Lhomme [Sun, 13 Mar 2022 09:17:41 +0000 (10:17 +0100)]
KaxSemantic.cpp: remove the KaxCueBlockNumber default value
See https://github.com/ietf-wg-cellar/matroska-specification/commit/
e5b6f222d5480d3bf4546222b38cce0c77cdf58a
Steve Lhomme [Sun, 13 Mar 2022 09:10:00 +0000 (10:10 +0100)]
KaxSemantic.cpp: make KaxVideoDisplayUnit elements mandatory
See https://github.com/ietf-wg-cellar/matroska-specification/commit/
22d23716f2ba61234449d5c5de509ecc14b37f76
Steve Lhomme [Sun, 13 Mar 2022 09:07:48 +0000 (10:07 +0100)]
KaxSemantic.cpp: make Video\Colour elements mandatory
See https://github.com/ietf-wg-cellar/matroska-specification/commit/
37b176e9fd11a201fcaa0223348adea78f2115d2
Steve Lhomme [Sun, 13 Mar 2022 09:06:09 +0000 (10:06 +0100)]
KaxSemantic.cpp: make Video\Colour elements mandatory
See https://github.com/ietf-wg-cellar/matroska-specification/commit/
3609e0d1ec5449d2c5b46d80363abd27d8943dbc
Steve Lhomme [Sun, 13 Mar 2022 09:01:01 +0000 (10:01 +0100)]
KaxSemantic.cpp: make KaxEditionFlagOrdered mandatory
See https://github.com/ietf-wg-cellar/matroska-specification/commit/
3082e56020bfd220efc26100180a449aa55bc2f8
Steve Lhomme [Sun, 13 Mar 2022 08:59:44 +0000 (09:59 +0100)]
KaxSemantic.cpp: make KaxVideoAlphaMode mandatory
See https://github.com/ietf-wg-cellar/matroska-specification/commit/
5aa6c928caac5300b0ab1a65522e9be31710b2b0
Steve Lhomme [Sun, 13 Mar 2022 08:57:50 +0000 (09:57 +0100)]
KaxSemantic.cpp: make StereoMode mandatory
See https://github.com/ietf-wg-cellar/matroska-specification/commit/
a096476f40ffa77ba26ce44fa259f04998bcd2fc
Steve Lhomme [Sun, 13 Mar 2022 08:56:10 +0000 (09:56 +0100)]
KaxSemantic.cpp: make TrackLanguage elements mandatory
See https://github.com/ietf-wg-cellar/matroska-specification/commit/
c98127cb523138c81be35c348f4dee70c3aa4c9e
Steve Lhomme [Sun, 13 Mar 2022 08:52:00 +0000 (09:52 +0100)]
KaxSemantic.cpp: make some elements mandatory
* CodecDelay: nothing to add/remove to track timestamps
* PixelCropXXX: no cropping by default
* CueCodecState
* Tag\Targets\TargetTypeValue: **tag is not usable without this value**
See https://github.com/ietf-wg-cellar/matroska-specification/commit/
f81cb9d339574ce2b00faa288cd466908e31b797
Steve Lhomme [Sun, 13 Mar 2022 08:45:02 +0000 (09:45 +0100)]
KaxSemantic: make more elements deprecated
* KaxClusterSilentTracks
* KaxClusterSilentTrackNumber
* KaxSlices
* KaxSliceLaceNumber
* KaxReferenceFrame
* KaxReferenceOffset
* KaxReferenceTimeCode
* KaxTrackTimecodeScale
* KaxCodecDecodeAll
* KaxVideoAspectRatio
* KaxTrickTrackUID
* KaxTrickTrackSegmentUID
* KaxTrickTrackFlag
* KaxTrickMasterTrackUID
* KaxTrickMasterTrackSegmentUID
* KaxContentSignature
* KaxContentSigKeyID
* KaxContentSigAlgo
* KaxContentSigHashAlgo
* KaxClusterPosition
Steve Lhomme [Sun, 11 Sep 2022 12:38:07 +0000 (14:38 +0200)]
KaxSemantic.h: add enum values from the specs with documentation
This provides some useful source for anyone parsing Matroska files.
The enum names are the same as in libmatroska2 (mkclean/mkvalidator).
The documentation doesn't look great but it still gives useful inline
information.
Steve Lhomme [Sat, 17 Sep 2022 10:43:21 +0000 (12:43 +0200)]
use the libebml namespace directly
There hasn't been a case where there's no namespace in a long time.
Steve Lhomme [Sat, 17 Sep 2022 10:42:03 +0000 (12:42 +0200)]
use the libmatroska namespace directly
No need to hide it behind a macro anymore. The macro is kept for existing
external code still using it.
Steve Lhomme [Sat, 17 Sep 2022 10:33:22 +0000 (12:33 +0200)]
remove unknown NO_NAMESPACE define
Rosen Penev [Sat, 21 May 2022 01:50:41 +0000 (18:50 -0700)]
use emplace_back
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Rosen Penev [Sat, 21 May 2022 00:32:12 +0000 (17:32 -0700)]
clang-tidy: default member init
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Rosen Penev [Thu, 19 May 2022 01:31:55 +0000 (18:31 -0700)]
clang-tidy: C++ casts
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Rosen Penev [Thu, 19 May 2022 01:18:15 +0000 (18:18 -0700)]
clang-tidy: default init variables
Found with modernize-use-default-member-init
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Rosen Penev [Thu, 19 May 2022 01:16:25 +0000 (18:16 -0700)]
clang-tidy: use auto
Found with modernize-use-auto
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Rosen Penev [Thu, 19 May 2022 00:28:54 +0000 (17:28 -0700)]
clang-tidy: use default
Found with modernize-use-equals-default
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Rosen Penev [Thu, 19 May 2022 00:28:04 +0000 (17:28 -0700)]
clang-tidy: use nullptr
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Rosen Penev [Thu, 19 May 2022 00:26:42 +0000 (17:26 -0700)]
clang-tidy: add missing override
Signed-off-by: Rosen Penev <rosenp@gmail.com>