From: Moritz Bunkus Date: Mon, 22 Jun 2020 07:32:58 +0000 (+0200) Subject: Merge pull request #45 from Matroska-Org/blockadd-mapping X-Git-Tag: release-1.6.0~27 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=c6744cdbbb8b001eafb881a6274aade5d5d0572a;p=libmatroska Merge pull request #45 from Matroska-Org/blockadd-mapping add BlockAdditionMapping support --- c6744cdbbb8b001eafb881a6274aade5d5d0572a diff --cc src/KaxSemantic.cpp index cd3ab1b,f5ba47c..c8708e5 --- a/src/KaxSemantic.cpp +++ b/src/KaxSemantic.cpp @@@ -223,13 -245,20 +223,14 @@@ DEFINE_SEMANTIC_ITEM(true, true, KaxTra DEFINE_SEMANTIC_ITEM(true, true, KaxTrackMinCache) DEFINE_SEMANTIC_ITEM(false, true, KaxTrackMaxCache) DEFINE_SEMANTIC_ITEM(false, true, KaxTrackDefaultDuration) -#if MATROSKA_VERSION >= 2 DEFINE_SEMANTIC_ITEM(false, true, KaxTrackDefaultDecodedFieldDuration) -#endif // MATROSKA_VERSION DEFINE_SEMANTIC_ITEM(true, true, KaxTrackTimecodeScale) -#if MATROSKA_VERSION >= 2 DEFINE_SEMANTIC_ITEM(false, true, KaxTrackOffset) // not supported -#endif // MATROSKA_VERSION DEFINE_SEMANTIC_ITEM(true, true, KaxMaxBlockAdditionID) + DEFINE_SEMANTIC_ITEM(false, false, KaxBlockAdditionMapping) DEFINE_SEMANTIC_ITEM(false, true, KaxTrackName) DEFINE_SEMANTIC_ITEM(false, true, KaxTrackLanguage) -#if MATROSKA_VERSION >= 2 DEFINE_SEMANTIC_ITEM(false, true, KaxLanguageIETF) -#endif // MATROSKA_VERSION DEFINE_SEMANTIC_ITEM(true, true, KaxCodecID) DEFINE_SEMANTIC_ITEM(false, true, KaxCodecPrivate) DEFINE_SEMANTIC_ITEM(false, true, KaxCodecName) @@@ -264,13 -301,32 +265,26 @@@ DEFINE_MKX_UINTEGER_DEF(KaxTrackFlagLac DEFINE_MKX_UINTEGER_DEF(KaxTrackMinCache, 0x6DE7, 2, KaxTrackEntry, "TrackMinCache", 0) DEFINE_MKX_UINTEGER(KaxTrackMaxCache, 0x6DF8, 2, KaxTrackEntry, "TrackMaxCache") DEFINE_MKX_UINTEGER(KaxTrackDefaultDuration, 0x23E383, 3, KaxTrackEntry, "TrackDefaultDuration") -#if MATROSKA_VERSION >= 2 DEFINE_MKX_UINTEGER(KaxTrackDefaultDecodedFieldDuration, 0x234E7A, 3, KaxTrackEntry, "TrackDefaultDecodedFieldDuration") -#endif DEFINE_MKX_FLOAT_DEF(KaxTrackTimecodeScale, 0x23314F, 3, KaxTrackEntry, "TrackTimecodeScale", 1) -#if MATROSKA_VERSION >= 2 DEFINE_MKX_SINTEGER_DEF(KaxTrackOffset, 0x537F, 2, KaxTrackEntry, "TrackOffset", 0) -#endif DEFINE_MKX_UINTEGER_DEF(KaxMaxBlockAdditionID, 0x55EE, 2, KaxTrackEntry, "MaxBlockAdditionID", 0) + + DEFINE_START_SEMANTIC(KaxBlockAdditionMapping) + DEFINE_SEMANTIC_ITEM(true, true, KaxBlockAddIDValue) + DEFINE_SEMANTIC_ITEM(false, true, KaxBlockAddIDName) + DEFINE_SEMANTIC_ITEM(true, true, KaxBlockAddIDType) + DEFINE_SEMANTIC_ITEM(false, true, KaxBlockAddIDExtraData) + DEFINE_END_SEMANTIC(KaxBlockAdditionMapping) + + DEFINE_MKX_MASTER(KaxBlockAdditionMapping, 0x41E4, 2, KaxTrackEntry, "BlockAdditionMapping") + DEFINE_MKX_UINTEGER(KaxBlockAddIDValue, 0x41F0, 2, KaxBlockAdditionMapping, "BlockAddIDValue") + DEFINE_MKX_STRING(KaxBlockAddIDName, 0x41A4, 2, KaxBlockAdditionMapping, "BlockAddIDName") + DEFINE_MKX_UINTEGER_DEF(KaxBlockAddIDType, 0x41E7, 2, KaxBlockAdditionMapping, "BlockAddIDType", 0) + DEFINE_MKX_BINARY (KaxBlockAddIDExtraData, 0x41ED, 2, KaxBlockAdditionMapping, "BlockAddIDExtraData") DEFINE_MKX_UNISTRING(KaxTrackName, 0x536E, 2, KaxTrackEntry, "TrackName") DEFINE_MKX_STRING_DEF(KaxTrackLanguage, 0x22B59C, 3, KaxTrackEntry, "TrackLanguage", "eng") -#if MATROSKA_VERSION >= 2 DEFINE_MKX_STRING(KaxLanguageIETF, 0x22B59D, 3, KaxTrackEntry, "LanguageIETF") -#endif DEFINE_MKX_STRING(KaxCodecID, 0x86, 1, KaxTrackEntry, "CodecID") DEFINE_MKX_BINARY (KaxCodecPrivate, 0x63A2, 2, KaxTrackEntry, "CodecPrivate") DEFINE_MKX_UNISTRING(KaxCodecName, 0x258688, 3, KaxTrackEntry, "CodecName")