summaryrefslogtreecommitdiff
path: root/src/h__Writer.cpp
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2016-01-14 21:45:19 +0000
committerCarl Hetherington <cth@carlh.net>2019-12-03 16:44:40 +0100
commit0aa969183b97072b238e8aeff89d7b928df02f40 (patch)
tree6476721c6601366a44e9222f891f2ccbca602b31 /src/h__Writer.cpp
parent85eba79f6dbf1710e2359b4c7c210048895a3872 (diff)
Allow overwrite (i.e. continue) when writing JPEG2000 MXFs.
Diffstat (limited to 'src/h__Writer.cpp')
-rwxr-xr-xsrc/h__Writer.cpp13
1 files changed, 11 insertions, 2 deletions
diff --git a/src/h__Writer.cpp b/src/h__Writer.cpp
index a0fa2fc..a53093e 100755
--- a/src/h__Writer.cpp
+++ b/src/h__Writer.cpp
@@ -107,7 +107,7 @@ ASDCP::h__ASDCPWriter::CreateBodyPart(const MXF::Rational& EditRate, ui32_t Byte
UL OPAtomUL(m_Dict->ul(MDD_OPAtom));
m_BodyPart.OperationalPattern = OPAtomUL;
m_RIP.PairArray.push_back(RIP::PartitionPair(1, m_BodyPart.ThisPartition)); // Second RIP Entry
-
+
UL BodyUL(m_Dict->ul(MDD_ClosedCompleteBodyPartition));
result = m_BodyPart.WriteToFile(m_File, BodyUL);
}
@@ -174,6 +174,15 @@ ASDCP::h__ASDCPWriter::WriteEKLVPacket(const ASDCP::FrameBuffer& FrameBuf,const
m_StreamOffset, FrameBuf, EssenceUL, Ctx, HMAC);
}
+Result_t
+ASDCP::h__ASDCPWriter::FakeWriteEKLVPacket(int size)
+{
+ m_StreamOffset += size;
+ m_File.Seek(size, Kumu::SP_POS);
+
+ return RESULT_OK;
+}
+
// standard method of writing the header and footer of a completed MXF file
//
Result_t
@@ -354,7 +363,7 @@ ASDCP::Write_EKLV_Packet(Kumu::FileWriter& File, const ASDCP::Dictionary& Dict,
if ( ASDCP_SUCCESS(result) )
result = File.Writev(Overhead.Data(), Overhead.Length());
-
+
if ( ASDCP_SUCCESS(result) )
result = File.Writev((byte_t*)FrameBuf.RoData(), FrameBuf.Size());