diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/lib/film.cc | 4 | ||||
| -rw-r--r-- | src/lib/film.h | 2 |
2 files changed, 5 insertions, 1 deletions
diff --git a/src/lib/film.cc b/src/lib/film.cc index 27d23b185..0bba13e28 100644 --- a/src/lib/film.cc +++ b/src/lib/film.cc @@ -784,8 +784,10 @@ Film::subtitle_languages(bool* burnt_in) const pair<optional<dcp::LanguageTag>, vector<dcp::LanguageTag>> result; for (auto i: content()) { + auto dcp = dynamic_pointer_cast<DCPContent>(i); for (auto const& text: i->text) { - if (text->use() && text->type() == TextType::OPEN_SUBTITLE) { + auto const use = text->use() || (dcp && dcp->reference_text(TextType::OPEN_SUBTITLE)); + if (use && text->type() == TextType::OPEN_SUBTITLE) { if (!text->burn() && burnt_in) { *burnt_in = false; } diff --git a/src/lib/film.h b/src/lib/film.h index 13be4b8db..43a41ad45 100644 --- a/src/lib/film.h +++ b/src/lib/film.h @@ -77,6 +77,7 @@ struct atmos_encrypted_passthrough_test; struct isdcf_name_test; struct isdcf_name_with_atmos; struct isdcf_name_with_ccap; +struct ov_subs_in_vf_name; struct recover_test_2d_encrypted; @@ -459,6 +460,7 @@ private: friend struct ::isdcf_name_with_ccap; friend struct ::recover_test_2d_encrypted; friend struct ::atmos_encrypted_passthrough_test; + friend struct ::ov_subs_in_vf_name; template <class, class> friend class ChangeSignalDespatcher; boost::filesystem::path info_file (dcpomatic::DCPTimePeriod p) const; |
