_additional_subtitle_languages.push_back (sll_split[i]);
}
}
+
+ auto eml = node->optional_node_child ("ExtensionMetadataList");
+ if (eml) {
+ for (auto i: eml->node_children("ExtensionMetadata")) {
+ auto name = i->optional_string_child("Name");
+ if (name && *name == "Sign Language Video") {
+ auto property_list = i->node_child("PropertyList");
+ for (auto j: property_list->node_children("Property")) {
+ auto name = j->optional_string_child("Name");
+ auto value = j->optional_string_child("Value");
+ if (name && value && *name == "Language Tag") {
+ _sign_language_video_language = *value;
+ }
+ }
+ }
+ }
+ }
}
/* SMPTE Bv2.1 8.6.3 */
add_extension_metadata ("http://isdcf.com/ns/cplmd/app", "Application", "DCP Constraints Profile", "SMPTE-RDD-52:2020-Bv2.1");
+ if (_sign_language_video_language) {
+ add_extension_metadata ("http://isdcf.com/2017/10/SignLanguageVideo", "Sign Language Video", "Language Tag", *_sign_language_video_language);
+ }
+
if (_reels.front()->main_sound()) {
auto asset = _reels.front()->main_sound()->asset();
if (asset) {
void set_additional_subtitle_languages (std::vector<dcp::LanguageTag> const& lang);
+ void set_sign_language_video_language (dcp::LanguageTag lang) {
+ _sign_language_video_language = lang.to_string();
+ }
+
+ boost::optional<std::string> sign_language_video_language () const {
+ return _sign_language_video_language;
+ }
+
Standard standard () const {
return _standard;
}
boost::optional<dcp::Size> _main_picture_active_area;
/* See note for _release_territory above */
std::vector<std::string> _additional_subtitle_languages;
+ boost::optional<std::string> _sign_language_video_language;
std::vector<std::shared_ptr<Reel>> _reels;
auto lt = { dcp::LanguageTag("en-US"), dcp::LanguageTag("fr-ZA") };
cpl.set_additional_subtitle_languages (lt);
+ cpl.set_sign_language_video_language (dcp::LanguageTag("bzs"));
+
cpl.write_xml ("build/test/cpl_metadata_write_test1.xml", {});
check_xml (
dcp::file_to_string("test/ref/cpl_metadata_test1.xml"),
</meta:Property>
</meta:PropertyList>
</meta:ExtensionMetadata>
+ <meta:ExtensionMetadata scope="http://isdcf.com/2017/10/SignLanguageVideo">
+ <meta:Name>Sign Language Video</meta:Name>
+ <meta:PropertyList>
+ <meta:Property>
+ <meta:Name>Language Tag</meta:Name>
+ <meta:Value>bzs</meta:Value>
+ </meta:Property>
+ </meta:PropertyList>
+ </meta:ExtensionMetadata>
</meta:ExtensionMetadataList>
</meta:CompositionMetadataAsset>
</AssetList>