diff options
| author | Carl Hetherington <cth@carlh.net> | 2023-02-28 14:17:04 +0100 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2023-02-28 14:17:04 +0100 |
| commit | e2b29fb7033ff554988ce1bfc781822a821cfa15 (patch) | |
| tree | 21978e99cea438bb4a2ef8fb77fc926e892deee5 /src | |
| parent | 56051988dab4fedbd75094039bd5ef6a148a2d82 (diff) | |
Add include_mca_subdescriptors option to CPL::write_xml().
Diffstat (limited to 'src')
| -rw-r--r-- | src/cpl.cc | 8 | ||||
| -rw-r--r-- | src/cpl.h | 7 |
2 files changed, 9 insertions, 6 deletions
@@ -182,7 +182,7 @@ CPL::set (std::vector<std::shared_ptr<Reel>> reels) void -CPL::write_xml (boost::filesystem::path file, shared_ptr<const CertificateChain> signer) const +CPL::write_xml(boost::filesystem::path file, shared_ptr<const CertificateChain> signer, bool include_mca_subdescriptors) const { xmlpp::Document doc; xmlpp::Element* root; @@ -227,7 +227,7 @@ CPL::write_xml (boost::filesystem::path file, shared_ptr<const CertificateChain> for (auto i: _reels) { auto asset_list = i->write_to_cpl (reel_list, _standard); if (first && _standard == Standard::SMPTE) { - maybe_write_composition_metadata_asset (asset_list); + maybe_write_composition_metadata_asset(asset_list, include_mca_subdescriptors); first = false; } } @@ -430,7 +430,7 @@ CPL::write_mca_subdescriptors(xmlpp::Element* parent, shared_ptr<const SoundAsse * is missing this method will do nothing. */ void -CPL::maybe_write_composition_metadata_asset (xmlpp::Element* node) const +CPL::maybe_write_composition_metadata_asset(xmlpp::Element* node, bool include_mca_subdescriptors) const { if ( !_main_sound_configuration || @@ -549,7 +549,7 @@ CPL::maybe_write_composition_metadata_asset (xmlpp::Element* node) const if (_reels.front()->main_sound()) { auto asset = _reels.front()->main_sound()->asset(); - if (asset) { + if (asset && include_mca_subdescriptors) { write_mca_subdescriptors(meta, asset); } } @@ -124,10 +124,13 @@ public: * * @param file Filename to write * @param signer Signer to sign the CPL, or 0 to add no signature + * @param include_mca_subdescriptors true to add a MCASubDescriptors tag to metadata, + * false to omit it. */ void write_xml ( boost::filesystem::path file, - std::shared_ptr<const CertificateChain> + std::shared_ptr<const CertificateChain>, + bool include_mca_subdescriptors = true ) const; void resolve_refs (std::vector<std::shared_ptr<Asset>>); @@ -344,7 +347,7 @@ protected: private: friend struct ::verify_invalid_language3; - void maybe_write_composition_metadata_asset (xmlpp::Element* node) const; + void maybe_write_composition_metadata_asset(xmlpp::Element* node, bool include_mca_subdescriptors) const; void read_composition_metadata_asset (cxml::ConstNodePtr node); void write_mca_subdescriptors(xmlpp::Element* parent, std::shared_ptr<const SoundAsset> asset) const; |
