X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Flib%2Fdcp_encoder.cc;h=f1c41253984f514563735b62580399711e4042f4;hb=c162f9d8b127f56b8da46b83908000611033e6a5;hp=0478fcf809ac94e367667204d72b440ac53ca3d4;hpb=a5d004b0773f633401528392fc28e66d70e13ac8;p=dcpomatic.git diff --git a/src/lib/dcp_encoder.cc b/src/lib/dcp_encoder.cc index 0478fcf80..f1c412539 100644 --- a/src/lib/dcp_encoder.cc +++ b/src/lib/dcp_encoder.cc @@ -49,6 +49,7 @@ using std::vector; using std::shared_ptr; using std::weak_ptr; using std::dynamic_pointer_cast; +using std::make_shared; using boost::optional; #if BOOST_VERSION >= 106100 using namespace boost::placeholders; @@ -90,26 +91,26 @@ DCPEncoder::~DCPEncoder () void DCPEncoder::go () { - _writer.reset (new Writer (_film, _job)); + _writer = make_shared(_film, _job); _writer->start (); - _j2k_encoder.reset (new J2KEncoder (_film, _writer)); + _j2k_encoder = make_shared(_film, _writer); _j2k_encoder->begin (); { - shared_ptr job = _job.lock (); + auto job = _job.lock (); DCPOMATIC_ASSERT (job); job->sub (_("Encoding")); } if (_non_burnt_subtitles) { - vector fonts = _player->get_subtitle_fonts (); + auto fonts = _player->get_subtitle_fonts (); if (fonts.size() > 1 && _film->interop()) { /* Interop will ignore second and subsequent s so don't even write them as they upset some validators. */ - FontData first = fonts.front (); + auto first = fonts.front(); fonts.clear (); fonts.push_back (first); } @@ -131,16 +132,6 @@ DCPEncoder::go () void DCPEncoder::video (shared_ptr data, DCPTime time) { - if (!_film->three_d()) { - if (data->eyes() == EYES_LEFT) { - /* Use left-eye images for both eyes... */ - data->set_eyes (EYES_BOTH); - } else if (data->eyes() == EYES_RIGHT) { - /* ...and discard the right */ - return; - } - } - _j2k_encoder->encode (data, time); } @@ -149,7 +140,7 @@ DCPEncoder::audio (shared_ptr data, DCPTime time) { _writer->write (data, time); - shared_ptr job = _job.lock (); + auto job = _job.lock (); DCPOMATIC_ASSERT (job); job->set_progress (float(time.get()) / _film->length().get()); } @@ -157,7 +148,7 @@ DCPEncoder::audio (shared_ptr data, DCPTime time) void DCPEncoder::text (PlayerText data, TextType type, optional track, DCPTimePeriod period) { - if (type == TEXT_CLOSED_CAPTION || _non_burnt_subtitles) { + if (type == TextType::CLOSED_CAPTION || _non_burnt_subtitles) { _writer->write (data, type, track, period); } } @@ -174,7 +165,7 @@ optional DCPEncoder::current_rate () const { if (!_j2k_encoder) { - return optional(); + return {}; } return _j2k_encoder->current_encoding_rate ();