summaryrefslogtreecommitdiff
path: root/src/AS_DCP_DCData.cpp
diff options
context:
space:
mode:
authorjelkins <jelkins@cinecert.com>2020-10-08 17:29:11 -0700
committerjelkins <jelkins@cinecert.com>2020-10-08 17:29:11 -0700
commit1d4a906682d19207b0885d90f25fe3e5fd9bb844 (patch)
treecd3d8574cef08f6e09227419c61a41a0bb43d982 /src/AS_DCP_DCData.cpp
parentee40718aa383cb40beb67be317b3565c218d32c1 (diff)
check values for ContainerDuration.
Diffstat (limited to 'src/AS_DCP_DCData.cpp')
-rw-r--r--src/AS_DCP_DCData.cpp14
1 files changed, 10 insertions, 4 deletions
diff --git a/src/AS_DCP_DCData.cpp b/src/AS_DCP_DCData.cpp
index 245b46b..b957d6c 100644
--- a/src/AS_DCP_DCData.cpp
+++ b/src/AS_DCP_DCData.cpp
@@ -99,8 +99,11 @@ ASDCP::DCData::MXFReader::h__Reader::MD_to_DCData_DDesc(const MXF::DCDataDescrip
DCData::DCDataDescriptor& DDesc)
{
DDesc.EditRate = descriptor_object.SampleRate;
- assert(descriptor_object.ContainerDuration.const_get() <= 0xFFFFFFFFL);
- DDesc.ContainerDuration = static_cast<ui32_t>(descriptor_object.ContainerDuration.const_get());
+ if ( ! descriptor_object.ContainerDuration.empty() )
+ {
+ assert(descriptor_object.ContainerDuration.const_get() <= 0xFFFFFFFFL);
+ DDesc.ContainerDuration = static_cast<ui32_t>(descriptor_object.ContainerDuration.const_get());
+ }
memcpy(DDesc.DataEssenceCoding, descriptor_object.DataEssenceCoding.Value(), SMPTE_UL_LENGTH);
return RESULT_OK;
}
@@ -111,8 +114,11 @@ ASDCP::DCData::MXFReader::h__Reader::MD_to_DCData_DDesc(const MXF::PrivateDCData
DCData::DCDataDescriptor& DDesc)
{
DDesc.EditRate = descriptor_object.SampleRate;
- assert(descriptor_object.ContainerDuration.const_get() <= 0xFFFFFFFFL);
- DDesc.ContainerDuration = static_cast<ui32_t>(descriptor_object.ContainerDuration.const_get());
+ if ( ! descriptor_object.ContainerDuration.empty() )
+ {
+ assert(descriptor_object.ContainerDuration.const_get() <= 0xFFFFFFFFL);
+ DDesc.ContainerDuration = static_cast<ui32_t>(descriptor_object.ContainerDuration.const_get());
+ }
memcpy(DDesc.DataEssenceCoding, descriptor_object.DataEssenceCoding.Value(), SMPTE_UL_LENGTH);
return RESULT_OK;
}