From: Carl Hetherington Date: Mon, 3 Jul 2017 12:09:48 +0000 (+0100) Subject: Don't create decoders if they are not necessary. X-Git-Tag: v2.11.12~15 X-Git-Url: https://main.carlh.net/gitweb/?a=commitdiff_plain;h=2d386f5010c5c70c53b306fa55a053268accac5d;p=dcpomatic.git Don't create decoders if they are not necessary. --- diff --git a/src/lib/dcp_decoder.cc b/src/lib/dcp_decoder.cc index 0b99e8dd0..c7294bda7 100644 --- a/src/lib/dcp_decoder.cc +++ b/src/lib/dcp_decoder.cc @@ -54,9 +54,12 @@ DCPDecoder::DCPDecoder (shared_ptr c, shared_ptr log) , _decode_referenced (false) { video.reset (new VideoDecoder (this, c, log)); - audio.reset (new AudioDecoder (this, c->audio, log)); - - subtitle.reset (new SubtitleDecoder (this, c->subtitle, log)); + if (c->audio) { + audio.reset (new AudioDecoder (this, c->audio, log)); + } + if (c->subtitle) { + subtitle.reset (new SubtitleDecoder (this, c->subtitle, log)); + } shared_ptr cpl; BOOST_FOREACH (shared_ptr i, cpls ()) {