summaryrefslogtreecommitdiff
path: root/src/h__Writer.cpp
diff options
context:
space:
mode:
authormilla <marc.illa@dolby.com>2021-05-26 13:57:04 +0200
committerStefan Kersten <stefan.kersten@dolby.com>2021-08-27 11:38:27 +0200
commite3fe644dd86dba48050d9aad588b0e4ddb25d9a8 (patch)
treec2fdd7c35f2006e9150e282cfddce5d236e25e88 /src/h__Writer.cpp
parent9b1a901aef79dfe022c54dfdb1e0c1c1b4a451a8 (diff)
Set trackid incrementally from 2 instead of hardcoded
Diffstat (limited to 'src/h__Writer.cpp')
-rwxr-xr-xsrc/h__Writer.cpp10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/h__Writer.cpp b/src/h__Writer.cpp
index 50a212c..8fd97b6 100755
--- a/src/h__Writer.cpp
+++ b/src/h__Writer.cpp
@@ -123,6 +123,7 @@ ASDCP::AddDmsTrackGenericPartUtf8Text(Kumu::FileWriter& file_writer, MXF::OP1aHe
StaticTrack *StaticTrack_obj = 0;
header_part.GetMDObjectsByType(Dict->ul(MDD_StaticTrack), object_list);
std::list<InterchangeObject*>::iterator j;
+ ui32_t newTrackId = 2; // starts with 2 because there one other track in Material Package: Audio Essence track
for ( j = object_list.begin(); j != object_list.end(); ++j )
{
StaticTrack_obj = dynamic_cast<StaticTrack*>(*j);
@@ -130,8 +131,13 @@ ASDCP::AddDmsTrackGenericPartUtf8Text(Kumu::FileWriter& file_writer, MXF::OP1aHe
if ( id_batch_contains(SourcePackage_obj->Tracks, StaticTrack_obj->InstanceUID)
&& StaticTrack_obj->TrackName.get() == rp2057_static_track_label )
{
+ newTrackId = StaticTrack_obj->TrackID;
break;
}
+ if (StaticTrack_obj->TrackID >= newTrackId)
+ {
+ newTrackId = StaticTrack_obj->TrackID + 1;
+ }
StaticTrack_obj = 0;
}
@@ -160,7 +166,7 @@ ASDCP::AddDmsTrackGenericPartUtf8Text(Kumu::FileWriter& file_writer, MXF::OP1aHe
header_part.AddChildObject(static_track);
source_package.Tracks.push_back(static_track->InstanceUID);
static_track->TrackName = trackDescription;
- static_track->TrackID = 4;
+ static_track->TrackID = newTrackId;
Sequence_obj = new Sequence(Dict);
header_part.AddChildObject(Sequence_obj);
@@ -199,7 +205,7 @@ ASDCP::AddDmsTrackGenericPartUtf8Text(Kumu::FileWriter& file_writer, MXF::OP1aHe
{
if ( max_sid < i->BodySID )
{
- max_sid = i->BodySID;
+ max_sid = i->BodySID;
}
}