diff options
| author | jhurst <jhurst@cinecert.com> | 2006-03-17 00:41:14 +0000 |
|---|---|---|
| committer | jhurst <> | 2006-03-17 00:41:14 +0000 |
| commit | dde89765744dad9a6b9d13126092d9bfc2dbc0d7 (patch) | |
| tree | 0617ee94752000b5b603145eefb1ccb4e847a13c /src/h__Writer.cpp | |
| parent | 30d642bd3b8474744dfbdcc2bdc46cdf827102c4 (diff) | |
release
Diffstat (limited to 'src/h__Writer.cpp')
| -rwxr-xr-x | src/h__Writer.cpp | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/src/h__Writer.cpp b/src/h__Writer.cpp index 3c2b97b..8fad4ed 100755 --- a/src/h__Writer.cpp +++ b/src/h__Writer.cpp @@ -336,7 +336,10 @@ ASDCP::h__Writer::WriteEKLVPacket(const ASDCP::FrameBuffer& FrameBuf, const byte if ( ASDCP_SUCCESS(result) ) { // write UL - Overhead.WriteRaw(Dict::ul(MDD_CryptEssence), SMPTE_UL_LENGTH); + if ( m_Info.LabelSetType == LS_MXF_INTEROP ) + Overhead.WriteRaw(Dict::ul(MDD_MXFInterop_CryptEssence), SMPTE_UL_LENGTH); + else + Overhead.WriteRaw(Dict::ul(MDD_CryptEssence), SMPTE_UL_LENGTH); // construct encrypted triplet header ui32_t ETLength = klv_cryptinfo_size + m_CtFrameBuf.Size(); @@ -430,8 +433,14 @@ ASDCP::h__Writer::WriteMXFFooter() m_HeaderPart.m_RIP.PairArray.push_back(RIP::Pair(1, here)); // Third RIP Entry m_HeaderPart.FooterPartition = here; m_HeaderPart.BodySID = 1; - // m_HeaderPart.IndexSID = m_FooterPart.IndexSID; - m_HeaderPart.OperationalPattern = UL(Dict::ul(MDD_OPAtom)); + + // re-label the partition + UL OPAtomUL(Dict::ul(MDD_OPAtom)); + + if ( m_Info.LabelSetType == LS_MXF_INTEROP ) + OPAtomUL.Set(Dict::ul(MDD_MXFInterop_OPAtom)); + + m_HeaderPart.OperationalPattern = OPAtomUL; m_HeaderPart.m_Preface->OperationalPattern = m_HeaderPart.OperationalPattern; m_FooterPart.OperationalPattern = m_HeaderPart.OperationalPattern; |
