diff options
| author | Carl Hetherington <cth@carlh.net> | 2015-12-10 11:52:07 +0000 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2015-12-10 11:52:07 +0000 |
| commit | 1ca0d61534209e4679cead26e0df1886704a3ef8 (patch) | |
| tree | 3231cbac01fc0a46df83c74e42323a9118faff60 /src/lib | |
| parent | 159ef7946644a4af72c51fc15511d250eb00c741 (diff) | |
Put ISDCF name subtitle language in lower case if subs are burnt in.
Diffstat (limited to 'src/lib')
| -rw-r--r-- | src/lib/film.cc | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/src/lib/film.cc b/src/lib/film.cc index 8c12e7080..e066bfc50 100644 --- a/src/lib/film.cc +++ b/src/lib/film.cc @@ -596,7 +596,27 @@ Film::isdcf_name (bool if_created_now) const if (!dm.audio_language.empty ()) { d << "_" << dm.audio_language; if (!dm.subtitle_language.empty()) { - d << "-" << dm.subtitle_language; + + bool burnt_in = false; + BOOST_FOREACH (shared_ptr<Content> i, content ()) { + shared_ptr<SubtitleContent> sc = dynamic_pointer_cast<SubtitleContent> (i); + if (!sc) { + continue; + } + + if (sc->use_subtitles() && sc->burn_subtitles()) { + burnt_in = true; + } + } + + string language = dm.subtitle_language; + if (burnt_in) { + transform (language.begin(), language.end(), language.begin(), ::tolower); + } else { + transform (language.begin(), language.end(), language.begin(), ::toupper); + } + + d << "-" << language; } else { d << "-XX"; } |
