summaryrefslogtreecommitdiff
path: root/src/reel_picture_asset.cc
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2018-08-29 11:55:10 +0100
committerCarl Hetherington <cth@carlh.net>2018-08-29 11:55:10 +0100
commit367b43df1630a5e4e4173fb50e234803f248f00f (patch)
treee115091f93b20fa1fbb1f2c16a2bdf26c9e73e63 /src/reel_picture_asset.cc
parent9f75a44df591954519ac828a1b50b6d5ebd2a3a1 (diff)
Allow CCAP reel nodes to have language tags.
Diffstat (limited to 'src/reel_picture_asset.cc')
-rw-r--r--src/reel_picture_asset.cc19
1 files changed, 9 insertions, 10 deletions
diff --git a/src/reel_picture_asset.cc b/src/reel_picture_asset.cc
index 644024ec..1933c769 100644
--- a/src/reel_picture_asset.cc
+++ b/src/reel_picture_asset.cc
@@ -86,15 +86,12 @@ ReelPictureAsset::ReelPictureAsset (shared_ptr<const cxml::Node> node)
}
}
-void
+xmlpp::Node*
ReelPictureAsset::write_to_cpl (xmlpp::Node* node, Standard standard) const
{
- ReelAsset::write_to_cpl (node, standard);
+ xmlpp::Node* asset = ReelAsset::write_to_cpl (node, standard);
- /* Find <MainPicture> */
- xmlpp::Node* mp = find_child (node, cpl_node_name (standard));
-
- mp->add_child ("FrameRate")->add_child_text (String::compose ("%1 %2", _frame_rate.numerator, _frame_rate.denominator));
+ asset->add_child("FrameRate")->add_child_text(String::compose("%1 %2", _frame_rate.numerator, _frame_rate.denominator));
if (standard == INTEROP) {
/* Allowed values for this tag from the standard */
@@ -115,18 +112,20 @@ ReelPictureAsset::write_to_cpl (xmlpp::Node* node, Standard standard) const
}
}
- mp->add_child ("ScreenAspectRatio")->add_child_text (raw_convert<string> (closest.get(), 2, true));
+ asset->add_child ("ScreenAspectRatio")->add_child_text (raw_convert<string> (closest.get(), 2, true));
} else {
- mp->add_child ("ScreenAspectRatio")->add_child_text (
+ asset->add_child ("ScreenAspectRatio")->add_child_text (
String::compose ("%1 %2", _screen_aspect_ratio.numerator, _screen_aspect_ratio.denominator)
);
}
if (key_id ()) {
/* Find <Hash> */
- xmlpp::Node* hash = find_child (mp, "Hash");
- mp->add_child_before (hash, "KeyId")->add_child_text ("urn:uuid:" + key_id().get ());
+ xmlpp::Node* hash = find_child (asset, "Hash");
+ asset->add_child_before(hash, "KeyId")->add_child_text("urn:uuid:" + key_id().get());
}
+
+ return asset;
}
string