diff options
| author | Carl Hetherington <cth@carlh.net> | 2018-08-22 16:21:57 +0100 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2018-08-22 16:21:57 +0100 |
| commit | a22b277dd8896511a322459f45db8e99ad1ab7fe (patch) | |
| tree | 650785d112c2c1d911f19987e57e202c6848ccad /src/lib | |
| parent | f870c4052c8e508b5e85693e380a2a3c29873356 (diff) | |
libdcp updates for multiple CCAPs.
Diffstat (limited to 'src/lib')
| -rw-r--r-- | src/lib/dcp_decoder.cc | 6 | ||||
| -rw-r--r-- | src/lib/dcp_examiner.cc | 8 |
2 files changed, 7 insertions, 7 deletions
diff --git a/src/lib/dcp_decoder.cc b/src/lib/dcp_decoder.cc index b9cb66a60..f4da18649 100644 --- a/src/lib/dcp_decoder.cc +++ b/src/lib/dcp_decoder.cc @@ -1,5 +1,5 @@ /* - Copyright (C) 2014-2016 Carl Hetherington <cth@carlh.net> + Copyright (C) 2014-2018 Carl Hetherington <cth@carlh.net> This file is part of DCP-o-matic. @@ -201,10 +201,10 @@ DCPDecoder::pass_texts (ContentTime next) ); ++decoder; } - if ((*_reel)->closed_caption()) { + BOOST_FOREACH (shared_ptr<dcp::ReelClosedCaptionAsset> i, (*_reel)->closed_captions()) { DCPOMATIC_ASSERT (decoder != text.end ()); pass_texts ( - next, (*_reel)->closed_caption()->asset(), _dcp_content->reference_text(TEXT_CLOSED_CAPTION), (*_reel)->closed_caption()->entry_point(), *decoder + next, i->asset(), _dcp_content->reference_text(TEXT_CLOSED_CAPTION), i->entry_point(), *decoder ); ++decoder; } diff --git a/src/lib/dcp_examiner.cc b/src/lib/dcp_examiner.cc index 4b9238e5b..1785669dd 100644 --- a/src/lib/dcp_examiner.cc +++ b/src/lib/dcp_examiner.cc @@ -172,8 +172,8 @@ DCPExaminer::DCPExaminer (shared_ptr<const DCPContent> content) _has_text[TEXT_OPEN_SUBTITLE] = true; } - if (i->closed_caption ()) { - if (!i->closed_caption()->asset_ref().resolved()) { + BOOST_FOREACH (shared_ptr<dcp::ReelClosedCaptionAsset> j, i->closed_captions()) { + if (!j->asset_ref().resolved()) { /* We are missing this asset so we can't continue; examination will be repeated later */ _needs_assets = true; return; @@ -188,8 +188,8 @@ DCPExaminer::DCPExaminer (shared_ptr<const DCPContent> content) _reel_lengths.push_back (i->main_sound()->duration()); } else if (i->main_subtitle()) { _reel_lengths.push_back (i->main_subtitle()->duration()); - } else if (i->closed_caption()) { - _reel_lengths.push_back (i->closed_caption()->duration()); + } else if (!i->closed_captions().empty()) { + _reel_lengths.push_back (i->closed_captions().front()->duration()); } } |
