diff options
| author | jhurst <jhurst@cinecert.com> | 2018-08-06 22:07:03 +0000 |
|---|---|---|
| committer | jhurst <> | 2018-08-06 22:07:03 +0000 |
| commit | f4061a21fffad4fdf8dbb2f193f0f0960b25421c (patch) | |
| tree | c66e09ce3c57e263690bc0c0f37d37e9a3aa75f8 /src/MDD.cpp | |
| parent | 38954bfe8dd72a817fb070c58327cd111b9bd282 (diff) | |
o Added support for SMPTE RDD 47 "ISXD Track File"
o Added generic support for SMPTE RP 2057 "Text-Based Metadata Carriage in MXF"
o Re-factored AS-02 frame-wrap index write to use a common implementation
o Re-factored support for SMPTE ST 410 to use a common implementation (affects
o AS-DCP and AS-02 timed-text MXF (SMPTE 429-5)
o Patched several ambiguous integer casts.
o Added new essence type identifiers ESS_AS02_ISXD and ESS_AS02_ACES
o Fixed a bug wherein the Generic Container data tarck clip was instead being
o written as a DM track
o Fixed UL values DCDataDescriptor and ContainerConstraintSubDescriptor to have
o a byte 6 value of 0x53 (Tag Set) instead of 0x07 (coding sentinel)
o Added UL values 492 - 511 to the dictionary
o Added ApplicationSchemes and ConformsToSpecifications to the Preface set
o Added default initializer to MXF::LineMapPair
o Added sets DescriptiveFramework, DescriptiveObject, TextBasedDMFramework,
o TextBasedObject, GenericStreamTextBasedSet and ISXDDataEssenceDescriptor
o Added ISXD support and options '-G', '-u' to as-02-wrap
o Added ISXD support and option '-g' to as-02-unwrap
Diffstat (limited to 'src/MDD.cpp')
| -rw-r--r-- | src/MDD.cpp | 69 |
1 files changed, 64 insertions, 5 deletions
diff --git a/src/MDD.cpp b/src/MDD.cpp index de71401..bae0f2b 100644 --- a/src/MDD.cpp +++ b/src/MDD.cpp @@ -1,5 +1,5 @@ /* -Copyright (c) 2006-2016, John Hurst +Copyright (c) 2006-2018, John Hurst All rights reserved. Redistribution and use in source and binary forms, with or without @@ -766,7 +766,7 @@ static const ASDCP::MDDEntry s_MDD_Table[] = { {0}, true, "JPEG2000PictureSubDescriptor_QuantizationDefault" }, { { 0x06, 0x0e, 0x2b, 0x34, 0x02, 0x53, 0x01, 0x01, // 243 0x0d, 0x01, 0x04, 0x01, 0x00, 0x00, 0x00, 0x00 }, - {0}, false, "DM_Framework" }, + {0}, false, "DescriptiveFramework" }, { { 0x06, 0x0e, 0x2b, 0x34, 0x02, 0x53, 0x01, 0x01, // 244 0x0d, 0x01, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00 }, {0}, false, "DM_Set" }, @@ -923,7 +923,7 @@ static const ASDCP::MDDEntry s_MDD_Table[] = { { { 0x06, 0x0e, 0x2b, 0x34, 0x01, 0x02, 0x01, 0x0d, // 295 0x0d, 0x01, 0x03, 0x01, 0x17, 0x01, 0x0d, 0x00 }, {0}, false, "DCDataEssence" }, - { { 0x06, 0x0e, 0x2b, 0x34, 0x02, 0x7f, 0x01, 0x01, // 296 + { { 0x06, 0x0e, 0x2b, 0x34, 0x02, 0x53, 0x01, 0x01, // 296 0x0d, 0x01, 0x01, 0x01, 0x01, 0x01, 0x73, 0x00 }, {0}, false, "DCDataDescriptor" }, { { 0x06, 0x0e, 0x2b, 0x34, 0x02, 0x53, 0x01, 0x05, // 297 @@ -1159,7 +1159,7 @@ static const ASDCP::MDDEntry s_MDD_Table[] = { // ContainerConstraintSubDescriptor to the GenericDescriptor::SubDescriptors // property of the top-most File Descriptor that describes the essence // container. - { { 0x06, 0x0e, 0x2b, 0x34, 0x02, 0x7f, 0x01, 0x01, // 373 + { { 0x06, 0x0e, 0x2b, 0x34, 0x02, 0x53, 0x01, 0x01, // 373 0x0d, 0x01, 0x01, 0x01, 0x01, 0x01, 0x67, 0x00 }, {0}, false, "ContainerConstraintSubDescriptor" }, @@ -1528,7 +1528,66 @@ static const ASDCP::MDDEntry s_MDD_Table[] = { { { 0x06, 0x0e, 0x2b, 0x34, 0x04, 0x01, 0x01, 0x0d, // 491 0x04, 0x10, 0x01, 0x01, 0x01, 0x03, 0x00, 0x00 }, {0}, false, "HDRReferenceViewingEnvironment" }, - + { { 0x06, 0x0e, 0x2b, 0x34, 0x01, 0x02, 0x01, 0x05, // 492 + 0x0e, 0x09, 0x05, 0x02, 0x01, 0x00, 0x01, 0x00 }, + {0}, false, "FrameWrappedISXDData" }, + { { 0x06, 0x0e, 0x2b, 0x34, 0x04, 0x01, 0x01, 0x05, // 493 + 0x0e, 0x09, 0x06, 0x07, 0x01, 0x01, 0x01, 0x03 }, + {0}, false, "FrameWrappedISXDContainer" }, + { { 0x06, 0x0e, 0x2b, 0x34, 0x02, 0x53, 0x01, 0x05, // 494 + 0x0e, 0x09, 0x05, 0x02, 0x00, 0x00, 0x00, 0x00 }, + {0}, false, "ISXDDataEssenceDescriptor" }, + { { 0x06, 0x0e, 0x2b, 0x34, 0x04, 0x01, 0x01, 0x05, // 495 + 0x0e, 0x09, 0x06, 0x06, 0x00, 0x00, 0x00, 0x00 }, + {0}, false, "ISXDDataEssenceDescriptor_NamespaceURI" }, + { { 0x06, 0x0e, 0x2b, 0x34, 0x04, 0x01, 0x01, 0x05, // 496 + 0x0e, 0x09, 0x06, 0x06, 0x00, 0x00, 0x00, 0xff }, + {0}, false, "UTF_8_Text_DataEssenceCoding" }, + { { 0x06, 0x0e, 0x2b, 0x34, 0x02, 0x53, 0x01, 0x01, // 497-chk + 0x0D, 0x01, 0x04, 0x01, 0x04, 0x01, 0x01, 0x00 }, + {0}, false, "TextBasedDMFramework" }, + { { 0x06, 0x0e, 0x2b, 0x34, 0x01, 0x01, 0x01, 0x0D, // 498-chk + 0x06, 0x01, 0x01, 0x04, 0x05, 0x41, 0x01, 0x00 }, + {0}, true, "TextBasedDMFramework_ObjectRef" }, + { { 0x06, 0x0e, 0x2b, 0x34, 0x02, 0x53, 0x01, 0x01, // 499 + 0x0d, 0x01, 0x04, 0x01, 0x04, 0x03, 0x01, 0x00 }, + {0}, false, "TextBasedObject" }, + { { 0x06, 0x0e, 0x2b, 0x34, 0x01, 0x01, 0x01, 0x0d, // 500 + 0x04, 0x06, 0x08, 0x06, 0x00, 0x00, 0x00, 0x00 }, + {0}, false, "TextBasedObject_PayloadSchemeID" }, + { { 0x06, 0x0e, 0x2b, 0x34, 0x01, 0x01, 0x01, 0x0d, // 501 + 0x04, 0x09, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00 }, + {0}, false, "TextBasedObject_TextMIMEMediaType" }, + { { 0x06, 0x0e, 0x2b, 0x34, 0x01, 0x01, 0x01, 0x0d, // 502 + 0x03, 0x01, 0x01, 0x02, 0x02, 0x14, 0x00, 0x00 }, + {0}, false, "TextBasedObject_RFC5646TextLanguageCode" }, + { { 0x06, 0x0e, 0x2b, 0x34, 0x01, 0x01, 0x01, 0x0d, // 503 + 0x03, 0x02, 0x01, 0x06, 0x03, 0x02, 0x00, 0x00 }, + {0}, true, "TextBasedObject_TextDataDescription" }, + { { 0x06, 0x0e, 0x2b, 0x34, 0x02, 0x53, 0x01, 0x01, // 504 + 0x0d, 0x01, 0x04, 0x01, 0x04, 0x02, 0x01, 0x00 }, + {0}, false, "GenericStreamTextBasedSet" }, + { { 0x06, 0x0e, 0x2b, 0x34, 0x01, 0x01, 0x01, 0x0d, // 505 + 0x01, 0x03, 0x04, 0x08, 0x00, 0x00, 0x00, 0x00 }, + {0}, false, "GenericStreamTextBasedSet_GenericStreamSID" }, + { { 0x06, 0x0e, 0x2b, 0x34, 0x02, 0x06, 0x01, 0x01, // 506 + 0x0d, 0x01, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00 }, + {0}, false, "DescriptiveObject" }, + { { 0x06, 0x0e, 0x2b, 0x34, 0x01, 0x01, 0x01, 0x0c, // 507 + 0x05, 0x20, 0x07, 0x01, 0x0c, 0x00, 0x00, 0x00 }, + {0}, false, "DescriptiveFramework_LinkedDescriptiveFrameworkPlugInId" }, + { { 0x06, 0x0e, 0x2b, 0x34, 0x01, 0x01, 0x01, 0x0c, // 508 + 0x05, 0x20, 0x07, 0x01, 0x11, 0x00, 0x00, 0x00 }, + {0}, false, "DescriptiveObject_LinkedDescriptiveObjectPlugInId" }, + { { 0x06, 0x0e, 0x2b, 0x34, 0x01, 0x01, 0x01, 0x0c, // 509 + 0x01, 0x02, 0x02, 0x10, 0x02, 0x03, 0x00, 0x00 }, + {0}, false, "Preface_ApplicationSchemes" }, + { { 0x06, 0x0e, 0x2b, 0x34, 0x01, 0x01, 0x01, 0x0e, // 510 + 0x01, 0x02, 0x02, 0x10, 0x02, 0x04, 0x00, 0x00 }, + {0}, false, "Preface_ConformsToSpecifications" }, + { { 0x06, 0x0e, 0x2b, 0x34, 0x04, 0x01, 0x01, 0x0c, // 511 + 0x0d, 0x01, 0x04, 0x01, 0x04, 0x01, 0x01, 0x00 }, + {0}, false, "MXFTextBasedFramework" }, { {0}, {0}, false, 0 } }; |
