Implemented J2K desc to/from MD
[asdcplib.git] / src / AS_02_ISXD.cpp
index b9aaef5fc26a68b31b655c65bf025162b30a3374..6230c583045ada4783beadba39b7d8bb38fa5d8e 100644 (file)
@@ -289,7 +289,7 @@ AS_02::ISXD::MXFWriter::h__Writer::OpenWrite(const std::string& filename, const
                                             const ui32_t& PartitionSpace_sec, const ui32_t& HeaderSize)
 {
   m_DataEssenceDescriptor = new ISXDDataEssenceDescriptor(m_Dict);
-  m_DataEssenceDescriptor->DataEssenceCoding = m_Dict->ul(MDD_FrameWrappedISXDContainer);
+  m_DataEssenceDescriptor->DataEssenceCoding = m_Dict->ul(MDD_UTF_8_Text_DataEssenceCoding);
   m_DataEssenceDescriptor->SampleRate = edit_rate;
   m_DataEssenceDescriptor->NamespaceURI = isxd_document_namespace;
 
@@ -319,7 +319,7 @@ AS_02::ISXD::MXFWriter::h__Writer::OpenWrite(const std::string& filename, const
   return result;
 }
 
-// Automatically sets the MXF file's metadata from the first jpeg codestream stream.
+// Automatically sets the MXF file's metadata from the first ISXD data fragment stream.
 Result_t
 AS_02::ISXD::MXFWriter::h__Writer::SetSourceStream(const std::string& label, const ASDCP::Rational& edit_rate)
 {
@@ -330,13 +330,13 @@ AS_02::ISXD::MXFWriter::h__Writer::SetSourceStream(const std::string& label, con
        return RESULT_STATE;
     }
 
-  memcpy(m_EssenceUL, m_Dict->ul(MDD_FrameWrappedISXDContainer), SMPTE_UL_LENGTH);
+  memcpy(m_EssenceUL, m_Dict->ul(MDD_FrameWrappedISXDData), SMPTE_UL_LENGTH);
   m_EssenceUL[SMPTE_UL_LENGTH-1] = 1; // first (and only) essence container
   Result_t result = m_State.Goto_READY();
 
   if ( KM_SUCCESS(result) )
     {
-      result = WriteAS02Header(label, UL(m_Dict->ul(MDD_FrameWrappedISXDData)),
+      result = WriteAS02Header(label, UL(m_Dict->ul(MDD_FrameWrappedISXDContainer)),
                               PICT_DEF_LABEL, UL(m_EssenceUL), UL(m_Dict->ul(MDD_DataDataDef)),
                               edit_rate, derive_timecode_rate_from_edit_rate(edit_rate));
 
@@ -373,7 +373,7 @@ AS_02::ISXD::MXFWriter::h__Writer::WriteFrame(const ASDCP::FrameBuffer& FrameBuf
 
   if ( KM_SUCCESS(result) )
     {
-      result = WriteEKLVPacket(FrameBuf, m_EssenceUL, Ctx, HMAC);
+      result = WriteEKLVPacket(FrameBuf, m_EssenceUL, MXF_BER_LENGTH, Ctx, HMAC);
       m_FramesWritten++;
     }