X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Flib%2Fserver.cc;h=e4c281172eb552ea7ca7e784a73b0fb08d530959;hb=5f64a83b76dd015cc03d106061bf890d3d80d788;hp=5ca04c69249c2292b005432d0605ae021a72e546;hpb=a0856e3fbef17f24073b01cb96be6bbcb229ecbc;p=dcpomatic.git diff --git a/src/lib/server.cc b/src/lib/server.cc index 5ca04c692..e4c281172 100644 --- a/src/lib/server.cc +++ b/src/lib/server.cc @@ -36,7 +36,6 @@ #include "image.h" #include "dcp_video_frame.h" #include "config.h" -#include "subtitle.h" #include "i18n.h" @@ -50,6 +49,7 @@ using boost::algorithm::split; using boost::thread; using boost::bind; using boost::scoped_array; +using boost::optional; using libdcp::Size; ServerDescription::ServerDescription (shared_ptr node) @@ -69,17 +69,17 @@ ServerDescription::as_xml (xmlpp::Node* root) const * @param v Metadata. * @return ServerDescription, or 0. */ -ServerDescription * +optional ServerDescription::create_from_metadata (string v) { vector b; split (b, v, is_any_of (N_(" "))); if (b.size() != 2) { - return 0; + return optional (); } - return new ServerDescription (b[0], atoi (b[1].c_str ())); + return ServerDescription (b[0], atoi (b[1].c_str ())); } Server::Server (shared_ptr log) @@ -105,18 +105,17 @@ Server::process (shared_ptr socket) libdcp::Size size (get_required_int (kv, "width"), get_required_int (kv, "height")); int frame = get_required_int (kv, "frame"); int frames_per_second = get_required_int (kv, "frames_per_second"); - int colour_lut_index = get_required_int (kv, "colour_lut"); int j2k_bandwidth = get_required_int (kv, "j2k_bandwidth"); + Eyes eyes = static_cast (get_required_int (kv, "eyes")); - /* This checks that colour_lut_index is within range */ - colour_lut_index_to_name (colour_lut_index); - - shared_ptr image (new SimpleImage (PIX_FMT_RGB24, size, true)); + shared_ptr image (new Image (PIX_FMT_RGB24, size, true)); image->read_from_socket (socket); + /* XXX: colour conversion... */ + DCPVideoFrame dcp_video_frame ( - image, frame, frames_per_second, colour_lut_index, j2k_bandwidth, _log + image, frame, eyes, ColourConversion(), frames_per_second, j2k_bandwidth, _log ); shared_ptr encoded = dcp_video_frame.encode_locally ();