X-Git-Url: https://git.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Fh__Writer.cpp;h=451796654be01e5e0acd649aed43549015cdbf0e;hb=44bc524e3cf74f0903b7fbb51ca2f366f48d3495;hp=1bada6b070a20d2640872ab47c2d978ee243b89c;hpb=3a3aa48a5a4f7324a9e4c2273d0747d7f58a2813;p=asdcplib.git diff --git a/src/h__Writer.cpp b/src/h__Writer.cpp index 1bada6b..4517966 100755 --- a/src/h__Writer.cpp +++ b/src/h__Writer.cpp @@ -1,5 +1,5 @@ /* -Copyright (c) 2004-2006, John Hurst +Copyright (c) 2004-2008, John Hurst All rights reserved. Redistribution and use in source and binary forms, with or without @@ -45,8 +45,6 @@ using namespace ASDCP::MXF; // ASDCP::h__Writer::h__Writer() : m_HeaderSize(0), m_EssenceStart(0), - // m_MaterialPackage(0), m_MPTCSequence(0), m_MPTimecode(0), m_MPClSequence(0), m_MPClip(0), - // m_FilePackage(0), m_FPTCSequence(0), m_FPTimecode(0), m_FPClSequence(0), m_FPClip(0), m_EssenceDescriptor(0), m_FramesWritten(0), m_StreamOffset(0) { } @@ -274,7 +272,7 @@ ASDCP::h__Writer::AddSourceClip(const MXF::Rational& EditRate, ui32_t TCFrameRat void ASDCP::h__Writer::AddDMSegment(const MXF::Rational& EditRate, ui32_t TCFrameRate, const std::string& TrackName, const UL& DataDefinition, - const std::string& PackageLabel) + const std::string& PackageLabel) { // ContentStorage* Storage = new ContentStorage; @@ -360,8 +358,11 @@ ASDCP::h__Writer::AddEssenceDescriptor(const UL& WrappingUL) m_HeaderPart.m_Preface->PrimaryPackage = m_FilePackage->InstanceUID; // - // Encryption Descriptor + // Essence Descriptors // + UL GenericContainerUL(Dict::ul(MDD_GCMulti)); + m_HeaderPart.EssenceContainers.push_back(GenericContainerUL); + if ( m_Info.EncryptedEssence ) { UL CryptEssenceUL(Dict::ul(MDD_EncryptedContainerLabel)); @@ -371,14 +372,13 @@ ASDCP::h__Writer::AddEssenceDescriptor(const UL& WrappingUL) } else { - m_HeaderPart.EssenceContainers.push_back(UL(Dict::ul(MDD_GCMulti))); m_HeaderPart.EssenceContainers.push_back(WrappingUL); } m_HeaderPart.m_Preface->EssenceContainers = m_HeaderPart.EssenceContainers; m_HeaderPart.AddChildObject(m_EssenceDescriptor); - std::list::iterator sdli = m_EssenceSubDescriptorList.begin(); + std::list::iterator sdli = m_EssenceSubDescriptorList.begin(); for ( ; sdli != m_EssenceSubDescriptorList.end(); sdli++ ) m_HeaderPart.AddChildObject(*sdli);