summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--cscript2
-rw-r--r--src/lib/dcp_decoder.cc10
-rw-r--r--src/lib/font_id_allocator.cc12
3 files changed, 23 insertions, 1 deletions
diff --git a/cscript b/cscript
index 5be0e7831..52b0be549 100644
--- a/cscript
+++ b/cscript
@@ -502,7 +502,7 @@ def build_with_cpp17(target):
def dependencies(target, options):
- deps = [('libdcp', 'v1.10.30', {'c++17': build_with_cpp17(target)})]
+ deps = [('libdcp', 'v1.10.31', {'c++17': build_with_cpp17(target)})]
deps.append(('libsub', 'v1.6.53'))
deps.append(('leqm-nrt', '30dcaea1373ac62fba050e02ce5b0c1085797a23'))
deps.append(('rtaudio', 'f619b76'))
diff --git a/src/lib/dcp_decoder.cc b/src/lib/dcp_decoder.cc
index eda410564..42119a041 100644
--- a/src/lib/dcp_decoder.cc
+++ b/src/lib/dcp_decoder.cc
@@ -300,6 +300,16 @@ DCPDecoder::pass_texts(ContentTime next, dcp::Size size)
++decoder;
}
+ if ((*_reel)->main_caption()) {
+ pass_texts(next, (*_reel)->main_caption(), TextType::OPEN_CAPTION, *decoder, size);
+ ++decoder;
+ }
+
+ for (auto i: (*_reel)->closed_subtitles()) {
+ pass_texts(next, i, TextType::CLOSED_SUBTITLE, *decoder, size);
+ ++decoder;
+ }
+
for (auto i: (*_reel)->closed_captions()) {
pass_texts(next, i, TextType::CLOSED_CAPTION, *decoder, size);
++decoder;
diff --git a/src/lib/font_id_allocator.cc b/src/lib/font_id_allocator.cc
index 902d76be6..4738eefe6 100644
--- a/src/lib/font_id_allocator.cc
+++ b/src/lib/font_id_allocator.cc
@@ -47,6 +47,18 @@ FontIDAllocator::add_fonts_from_reels(vector<shared_ptr<dcp::Reel>> const& reels
}
}
+ if (auto sub = reel->main_caption()) {
+ if (sub->asset_ref().resolved()) {
+ add_fonts_from_asset(reel_index, sub->asset());
+ }
+ }
+
+ for (auto ccap: reel->closed_subtitles()) {
+ if (ccap->asset_ref().resolved()) {
+ add_fonts_from_asset(reel_index, ccap->asset());
+ }
+ }
+
for (auto ccap: reel->closed_captions()) {
if (ccap->asset_ref().resolved()) {
add_fonts_from_asset(reel_index, ccap->asset());