X-Git-Url: https://git.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Flib%2Fdcp_content.cc;h=d1a65800155ec13559b071ee41f3332a782af08a;hb=59e769023c392c332331567a1aea94660002c463;hp=9d4ee63887e9e5d4aecc7d8d167639cef314b226;hpb=d8d7ddd4c39e3ea347afd1fccc037d8b0a31bc87;p=dcpomatic.git diff --git a/src/lib/dcp_content.cc b/src/lib/dcp_content.cc index 9d4ee6388..d1a658001 100644 --- a/src/lib/dcp_content.cc +++ b/src/lib/dcp_content.cc @@ -17,14 +17,14 @@ */ -#include -#include #include "dcp_content.h" #include "dcp_examiner.h" #include "job.h" #include "film.h" #include "config.h" #include "compose.hpp" +#include +#include #include "i18n.h" @@ -58,6 +58,9 @@ DCPContent::DCPContent (shared_ptr f, cxml::ConstNodePtr node, int v _has_subtitles = node->bool_child ("HasSubtitles"); _directory = node->string_child ("Directory"); _encrypted = node->bool_child ("Encrypted"); + if (node->optional_node_child ("KDM")) { + _kdm = dcp::EncryptedKDM (node->string_child ("KDM")); + } _kdm_valid = node->bool_child ("KDMValid"); } @@ -126,7 +129,9 @@ DCPContent::as_xml (xmlpp::Node* node) const node->add_child("HasSubtitles")->add_child_text (_has_subtitles ? "1" : "0"); node->add_child("Encrypted")->add_child_text (_encrypted ? "1" : "0"); node->add_child("Directory")->add_child_text (_directory.string ()); - /* XXX: KDM */ + if (_kdm) { + node->add_child("KDM")->add_child_text (_kdm->as_xml ()); + } node->add_child("KDMValid")->add_child_text (_kdm_valid ? "1" : "0"); } @@ -134,7 +139,7 @@ DCPTime DCPContent::full_length () const { shared_ptr film = _film.lock (); - assert (film); + DCPOMATIC_ASSERT (film); return DCPTime (video_length (), FrameRateChange (video_frame_rate (), film->video_frame_rate ())); }