From 2d386f5010c5c70c53b306fa55a053268accac5d Mon Sep 17 00:00:00 2001 From: Carl Hetherington Date: Mon, 3 Jul 2017 13:09:48 +0100 Subject: [PATCH] Don't create decoders if they are not necessary. --- src/lib/dcp_decoder.cc | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) 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 ()) { -- 2.30.2