o Added support for SMPTE RDD 47 "ISXD Track File"
[asdcplib.git] / src / MDD.cpp
index 1b4984f8ae63eb1697c7c898836263dd8fd19d60..bae0f2b5e25074d59676dde062d1a0315160460d 100644 (file)
@@ -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" },
 
@@ -1461,6 +1461,133 @@ static const ASDCP::MDDEntry s_MDD_Table[] = {
        0x04, 0x01, 0x01, 0x01, 0x03, 0x01, 0x00, 0x00 },
      {0}, false, "ColorPrimaries_SMPTE170M" },
 
+   // ACES ST 2067-50
+   { { 0x06, 0x0e, 0x2b, 0x34, 0x02, 0x53, 0x01, 0x01, // 470
+       0x0d, 0x01, 0x01, 0x01, 0x01, 0x01, 0x79, 0x00 },
+     {0}, false, "ACESPictureSubDescriptor" },
+   { { 0x06, 0x0e, 0x2b, 0x34, 0x01, 0x01, 0x01, 0x0e, // 471
+       0x04, 0x01, 0x06, 0x0a, 0x01, 0x00, 0x00, 0x00 },
+     {0}, false, "ACESPictureSubDescriptor_ACESAuthoringInformation" },
+   { { 0x06, 0x0e, 0x2b, 0x34, 0x01, 0x01, 0x01, 0x0e, // 472
+       0x04, 0x01, 0x06, 0x0a, 0x02, 0x00, 0x00, 0x00 },
+     {0}, false, "ACESPictureSubDescriptor_ACESMasteringDisplayPrimaries" },
+   { { 0x06, 0x0e, 0x2b, 0x34, 0x01, 0x01, 0x01, 0x0e, // 473
+       0x04, 0x01, 0x06, 0x0a, 0x03, 0x00, 0x00, 0x00 },
+     {0}, false, "ACESPictureSubDescriptor_ACESMasteringDisplayWhitePointChromaticity" },
+   { { 0x06, 0x0e, 0x2b, 0x34, 0x01, 0x01, 0x01, 0x0e, // 474
+       0x04, 0x01, 0x06, 0x0a, 0x04, 0x00, 0x00, 0x00 },
+     {0}, false, "ACESPictureSubDescriptor_ACESMasteringDisplayMaximumLuminance" },
+   { { 0x06, 0x0e, 0x2b, 0x34, 0x01, 0x01, 0x01, 0x0e, // 475
+       0x04, 0x01, 0x06, 0x0a, 0x05, 0x00, 0x00, 0x00 },
+     {0}, false, "ACESPictureSubDescriptor_ACESMasteringDisplayMinimumLuminance" },
+   { { 0x06, 0x0e, 0x2b, 0x34, 0x02, 0x53, 0x01, 0x01, // 476
+       0x0d, 0x01, 0x01, 0x01, 0x01, 0x01, 0x7a, 0x00 },
+     {0}, false, "TargetFrameSubDescriptor" },
+   { { 0x06, 0x0e, 0x2b, 0x34, 0x01, 0x01, 0x01, 0x0e, // 477
+       0x04, 0x01, 0x06, 0x09, 0x01, 0x00, 0x00, 0x00 },
+     {0}, false, "TargetFrameSubDescriptor_TargetFrameAncillaryResourceID" },
+   { { 0x06, 0x0e, 0x2b, 0x34, 0x01, 0x01, 0x01, 0x0e, // 478
+       0x04, 0x01, 0x06, 0x09, 0x02, 0x00, 0x00, 0x00 },
+     {0}, false, "TargetFrameSubDescriptor_MediaType" },
+   { { 0x06, 0x0e, 0x2b, 0x34, 0x01, 0x01, 0x01, 0x0e, // 479
+       0x04, 0x01, 0x06, 0x09, 0x03, 0x00, 0x00, 0x00 },
+     {0}, false, "TargetFrameSubDescriptor_TargetFrameIndex" },
+   { { 0x06, 0x0e, 0x2b, 0x34, 0x01, 0x01, 0x01, 0x0e, // 480
+       0x04, 0x01, 0x06, 0x09, 0x04, 0x00, 0x00, 0x00 },
+     {0}, false, "TargetFrameSubDescriptor_TargetFrameTransferCharacteristic" },
+   { { 0x06, 0x0e, 0x2b, 0x34, 0x01, 0x01, 0x01, 0x0e, // 481
+       0x04, 0x01, 0x06, 0x09, 0x05, 0x00, 0x00, 0x00 },
+     {0}, false, "TargetFrameSubDescriptor_TargetFrameColorPrimaries" },
+   { { 0x06, 0x0e, 0x2b, 0x34, 0x01, 0x01, 0x01, 0x0e, // 482
+       0x04, 0x01, 0x06, 0x09, 0x06, 0x00, 0x00, 0x00 },
+     {0}, false, "TargetFrameSubDescriptor_TargetFrameComponentMaxRef" },
+   { { 0x06, 0x0e, 0x2b, 0x34, 0x01, 0x01, 0x01, 0x0e, // 483
+       0x04, 0x01, 0x06, 0x09, 0x07, 0x00, 0x00, 0x00 },
+     {0}, false, "TargetFrameSubDescriptor_TargetFrameComponentMinRef" },
+   { { 0x06, 0x0e, 0x2b, 0x34, 0x01, 0x01, 0x01, 0x0e, // 484
+       0x04, 0x01, 0x06, 0x09, 0x08, 0x00, 0x00, 0x00 },
+     {0}, false, "TargetFrameSubDescriptor_TargetFrameEssenceStreamID" },
+   { { 0x06, 0x0e, 0x2b, 0x34, 0x01, 0x01, 0x01, 0x0e, // 485
+       0x04, 0x01, 0x06, 0x09, 0x09, 0x00, 0x00, 0x00 },
+     {0}, false, "TargetFrameSubDescriptor_ACESPictureSubDescriptorInstanceID" },
+   { { 0x06, 0x0e, 0x2b, 0x34, 0x01, 0x01, 0x01, 0x0e, // 486
+       0x04, 0x01, 0x06, 0x09, 0x0a, 0x00, 0x00, 0x00 },
+     {0}, false, "TargetFrameSubDescriptor_TargetFrameViewingEnvironment" },
+   { { 0x06, 0x0e, 0x2b, 0x34, 0x04, 0x01, 0x01, 0x0d, // 487
+       0x04, 0x01, 0x01, 0x01, 0x01, 0x0c, 0x00, 0x00 },
+     {0}, false, "TransferCharacteristic_Gamma_2_6" },
+   { { 0x06, 0x0e, 0x2b, 0x34, 0x04, 0x01, 0x01, 0x0d, // 488
+       0x04, 0x01, 0x01, 0x01, 0x01, 0x0d, 0x00, 0x00 },
+     {0}, false, "TransferCharacteristic_sRGB" },
+   { { 0x06, 0x0e, 0x2b, 0x34, 0x04, 0x01, 0x01, 0x0d, // 489
+       0x04, 0x10, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00 },
+     {0}, false, "TheatricalViewingEnvironment" },
+   { { 0x06, 0x0e, 0x2b, 0x34, 0x04, 0x01, 0x01, 0x0d, // 490
+       0x04, 0x10, 0x01, 0x01, 0x01, 0x02, 0x00, 0x00 },
+     {0}, false, "HDTVReferenceViewingEnvironment" },
+   { { 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 }
  };