if( ASDCP_SUCCESS(result) )
result = InitInfo();
+ if( ASDCP_SUCCESS(result) )
+ memcpy(m_TDesc.AssetID, m_Info.AssetUUID, UUIDlen);
+
return result;
}
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 )
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;
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)));
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);
//
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)
{
}
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;
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
//