diff options
| author | jhurst <jhurst@cinecert.com> | 2007-06-12 05:28:29 +0000 |
|---|---|---|
| committer | jhurst <> | 2007-06-12 05:28:29 +0000 |
| commit | 6c4db45a3a01b25d9ba3cd4c78210559d7131c60 (patch) | |
| tree | ac652bf9e157fdc9174752aa8d1232083d49bdcb /src | |
| parent | 3a3aa48a5a4f7324a9e4c2273d0747d7f58a2813 (diff) | |
fixed PackageUID
Diffstat (limited to 'src')
| -rw-r--r-- | src/AS_DCP_TimedText.cpp | 16 | ||||
| -rwxr-xr-x | src/AS_DCP_internal.h | 2 | ||||
| -rwxr-xr-x | src/h__Writer.cpp | 10 |
3 files changed, 15 insertions, 13 deletions
diff --git a/src/AS_DCP_TimedText.cpp b/src/AS_DCP_TimedText.cpp index 3e6108c..f5fcdb8 100644 --- a/src/AS_DCP_TimedText.cpp +++ b/src/AS_DCP_TimedText.cpp @@ -185,6 +185,9 @@ ASDCP::TimedText::MXFReader::h__Reader::OpenRead(char const* filename) if( ASDCP_SUCCESS(result) ) result = InitInfo(); + if( ASDCP_SUCCESS(result) ) + memcpy(m_TDesc.AssetID, m_Info.AssetUUID, UUIDlen); + return result; } @@ -225,10 +228,9 @@ ASDCP::TimedText::MXFReader::h__Reader::ReadAncillaryResource(const byte_t* uuid RIP::Pair TmpPair; ui32_t sequence = 1; - // look up the partition start in the RIP using the SID - // count the distance in because this is the sequence value needed to - // complete the HMAC - // result = m_HeaderPart.m_RIP.GetPairBySID(DescObject->ResourceSID, TmpPair); + // Look up the partition start in the RIP using the SID. + // Count the sequence length in because this is the sequence + // value needed to complete the HMAC. for ( pi = m_HeaderPart.m_RIP.PairArray.begin(); pi != m_HeaderPart.m_RIP.PairArray.end(); pi++, sequence++ ) { if ( (*pi).BodySID == DescObject->ResourceSID ) @@ -415,7 +417,6 @@ ASDCP::Result_t ASDCP::TimedText::MXFWriter::h__Writer::TimedText_TDesc_to_MD(TimedText::TimedTextDescriptor& TDesc) { assert(m_EssenceDescriptor); - // assert(m_EssenceSubDescriptor); MXF::DCTimedTextDescriptor* TDescObj = (MXF::DCTimedTextDescriptor*)m_EssenceDescriptor; TDescObj->SampleRate = TDesc.EditRate; @@ -471,9 +472,12 @@ ASDCP::TimedText::MXFWriter::h__Writer::SetSourceStream(ASDCP::TimedText::TimedT if ( ASDCP_SUCCESS(result) ) { + UMID SourcePackageUMID; + SourcePackageUMID.MakeUMID(0x0f, m_TDesc.AssetID); + InitHeader(); AddDMSegment(m_TDesc.EditRate, 24, TIMED_TEXT_DEF_LABEL, - UL(Dict::ul(MDD_PictureDataDef)), TIMED_TEXT_PACKAGE_LABEL); + UL(Dict::ul(MDD_PictureDataDef)), TIMED_TEXT_PACKAGE_LABEL, SourcePackageUMID); AddEssenceDescriptor(UL(Dict::ul(MDD_DCTimedTextWrapping))); diff --git a/src/AS_DCP_internal.h b/src/AS_DCP_internal.h index ff86d40..7242ef8 100755 --- a/src/AS_DCP_internal.h +++ b/src/AS_DCP_internal.h @@ -195,7 +195,7 @@ namespace ASDCP const std::string& PackageLabel); void AddDMSegment(const MXF::Rational& EditRate, ui32_t TCFrameRate, const std::string& TrackName, const UL& DataDefinition, - const std::string& PackageLabel); + const std::string& PackageLabel, const UMID& PackageUID); void AddEssenceDescriptor(const UL& WrappingUL); Result_t CreateBodyPart(const MXF::Rational& EditRate, ui32_t BytesPerEditUnit = 0); diff --git a/src/h__Writer.cpp b/src/h__Writer.cpp index 1bada6b..76d657b 100755 --- a/src/h__Writer.cpp +++ b/src/h__Writer.cpp @@ -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, const UMID& SourcePackageUMID) { // ContentStorage* Storage = new ContentStorage; @@ -287,9 +285,9 @@ ASDCP::h__Writer::AddDMSegment(const MXF::Rational& EditRate, ui32_t TCFrameRate ECD->IndexSID = 129; ECD->BodySID = 1; - UUID assetUUID(m_Info.AssetUUID); - UMID SourcePackageUMID, MaterialPackageUMID; - SourcePackageUMID.MakeUMID(0x0f, assetUUID); + // UUID assetUUID(m_Info.AssetUUID); + UMID MaterialPackageUMID; + // SourcePackageUMID.MakeUMID(0x0f, assetUUID); MaterialPackageUMID.MakeUMID(0x0f); // unidentified essence // |
