]> granicus.if.org Git - libmatroska/commitdiff
Merge pull request #45 from Matroska-Org/blockadd-mapping
authorMoritz Bunkus <moritz@bunkus.org>
Mon, 22 Jun 2020 07:32:58 +0000 (09:32 +0200)
committerGitHub <noreply@github.com>
Mon, 22 Jun 2020 07:32:58 +0000 (09:32 +0200)
add BlockAdditionMapping support

1  2 
matroska/KaxSemantic.h
src/KaxSemantic.cpp

Simple merge
index cd3ab1b312ff0db79ff72e183b3c5c62445a4adc,f5ba47c3c862992a9a4a695082385fef82354d63..c8708e5b6c496897fbbbe02de30936d9ba103f22
@@@ -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")