X-Git-Url: https://git.carlh.net/gitweb/?p=dcpomatic.git;a=blobdiff_plain;f=src%2Flib%2Fplayer_video.cc;h=b5f0b5fa5fde53309692c9380eb1cdf920c3f9c1;hp=8e6fcd5f3524f8baf4e00c54f791cc92bf4778a7;hb=b6c780d3107557d452c6612d715d01e2be52dbda;hpb=e725a6b4bce2a05275ee611965c62d6803f3bf7c diff --git a/src/lib/player_video.cc b/src/lib/player_video.cc index 8e6fcd5f3..b5f0b5fa5 100644 --- a/src/lib/player_video.cc +++ b/src/lib/player_video.cc @@ -29,6 +29,7 @@ using std::cout; using dcp::raw_convert; using boost::shared_ptr; using boost::dynamic_pointer_cast; +using boost::optional; PlayerVideo::PlayerVideo ( shared_ptr in, @@ -40,7 +41,7 @@ PlayerVideo::PlayerVideo ( Scaler const * scaler, Eyes eyes, Part part, - ColourConversion colour_conversion + optional colour_conversion ) : _in (in) , _time (time) @@ -67,7 +68,7 @@ PlayerVideo::PlayerVideo (shared_ptr node, shared_ptr socket _scaler = Scaler::from_id (node->string_child ("Scaler")); _eyes = (Eyes) node->number_child ("Eyes"); _part = (Part) node->number_child ("Part"); - _colour_conversion = ColourConversion (node); + _colour_conversion = ColourConversion::from_xml (node); _in = image_proxy_factory (node->node_child ("In"), socket, log); @@ -141,7 +142,9 @@ PlayerVideo::add_metadata (xmlpp::Node* node, bool send_subtitles) const node->add_child("Scaler")->add_child_text (_scaler->id ()); node->add_child("Eyes")->add_child_text (raw_convert (_eyes)); node->add_child("Part")->add_child_text (raw_convert (_part)); - _colour_conversion.as_xml (node); + if (_colour_conversion) { + _colour_conversion.get().as_xml (node); + } if (send_subtitles && _subtitle.image) { node->add_child ("SubtitleWidth")->add_child_text (raw_convert (_subtitle.image->size().width)); node->add_child ("SubtitleHeight")->add_child_text (raw_convert (_subtitle.image->size().height));