From: jhurst Date: Mon, 10 Feb 2020 16:52:48 +0000 (-0800) Subject: Merge branch 'master' into htj2c X-Git-Tag: rel_2_10_35~2^2 X-Git-Url: https://git.carlh.net/gitweb/?a=commitdiff_plain;h=03ba76d3a337c6ae2fc35f3b96fa230d0c40ca44;hp=cdf50723fe234d97a34bd3152be5a4cdc6f4425e;p=asdcplib.git Merge branch 'master' into htj2c * master: Fix typo. I believe this actually references SMPTE RP 2057 "Text-Based Metadata Carriage in MXF" (implemented as part of commit f4061a21fffad4fdf8dbb2f193f0f0960b25421c). Fix Object ref not being written: this prevented GenericStreamTextBasedSet to be correctly linked to TextBasedDMFramework --- diff --git a/src/AS_02.h b/src/AS_02.h index 502a236..61a2c1e 100644 --- a/src/AS_02.h +++ b/src/AS_02.h @@ -530,7 +530,7 @@ namespace AS_02 // error occurs. Result_t WriteFrame(const ASDCP::FrameBuffer&, ASDCP::AESEncContext* = 0, ASDCP::HMACContext* = 0); - // Writes an XML text document to the MXF file as per RP 2067. If the + // Writes an XML text document to the MXF file as per RP 2057. If the // optional AESEncContext argument is present, the document is encrypted // prior to writing. Fails if the file is not open, is finalized, or an // operating system error occurs. diff --git a/src/MXF.h b/src/MXF.h index d6e201a..30c1d16 100755 --- a/src/MXF.h +++ b/src/MXF.h @@ -253,7 +253,7 @@ namespace ASDCP } bool operator==(const PropertyType& rhs) const { return this->m_property == rhs; } bool operator==(const optional_property& rhs) const { return this->m_property == rhs.m_property; } - operator PropertyType&() { return this->m_property; } + operator const PropertyType&() const { return this->m_property; } void set(const PropertyType& rhs) { this->m_property = rhs; this->m_has_value = true; } void set_has_value(bool has_value = true) { this->m_has_value = has_value; } void reset(const PropertyType& rhs) { this->m_has_value = false; } diff --git a/src/h__Writer.cpp b/src/h__Writer.cpp index 71e9ce6..fc7f060 100755 --- a/src/h__Writer.cpp +++ b/src/h__Writer.cpp @@ -180,7 +180,8 @@ ASDCP::AddDmsTrackGenericPartUtf8Text(Kumu::FileWriter& file_writer, MXF::OP1aHe assert(dmf_obj); header_part.AddChildObject(dmf_obj); Segment->DMFramework = dmf_obj->InstanceUID; - GenRandomValue(dmf_obj->ObjectRef); + GenRandomValue(dmf_obj->ObjectRef.get()); + dmf_obj->ObjectRef.set_has_value(); // Create a new SID on the RIP, located at the current file position ui32_t max_sid = 0;