X-Git-Url: https://git.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Flib%2Ftranscoder.cc;h=c018c92432997fefbca0281df2f6c966464e6b9f;hb=6fde557864505b470c438e4161ee494f29b90d63;hp=20185e8c9073aa1081440de839124fd3f75ff320;hpb=f9068dcbfbb09082e29e2a779ef1a7a2f6ee849e;p=dcpomatic.git diff --git a/src/lib/transcoder.cc b/src/lib/transcoder.cc index 20185e8c9..c018c9243 100644 --- a/src/lib/transcoder.cc +++ b/src/lib/transcoder.cc @@ -54,7 +54,7 @@ Transcoder::Transcoder (shared_ptr film, shared_ptr j) : _film (film) , _player (new Player (film, film->playlist ())) , _writer (new Writer (film, j)) - , _encoder (new Encoder (film, j, _writer)) + , _encoder (new Encoder (film, _writer)) , _finishing (false) { @@ -87,18 +87,11 @@ Transcoder::go () } for (DCPTime t; t < length; t += frame) { - list > v = _player->get_video (t, true); - for (list >::const_iterator i = v.begin(); i != v.end(); ++i) { - _encoder->enqueue (*i); - } - - shared_ptr audio = _player->get_audio (t, frame, true); - if (audio) { - _writer->write (audio); - } + _encoder->encode (_player->get_video (t, true)); + _writer->write (_player->get_audio (t, frame, true)); if (non_burnt_subtitles) { - _writer->write (_player->get_subtitles (t, frame, true, false)); + _writer->write (_player->get_subtitles (t, frame, true, false, true)); } }