summaryrefslogtreecommitdiff
path: root/src/lib
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2019-01-06 23:18:37 +0000
committerCarl Hetherington <cth@carlh.net>2019-01-06 23:18:37 +0000
commitd59096a931025f787b88eee5169374575bb1a0f9 (patch)
treef039add17519205a6558b239b6917299b17a5a4c /src/lib
parenta868ecadada8bea8cb6d3395472568a48e17a8af (diff)
Don't write <Language> tags to SMPTE subs unless we know the language,
as "Unknown" is an invalid value and <Language> is optional in SMPTE.
Diffstat (limited to 'src/lib')
-rw-r--r--src/lib/reel_writer.cc13
1 files changed, 8 insertions, 5 deletions
diff --git a/src/lib/reel_writer.cc b/src/lib/reel_writer.cc
index e34874a14..d699adfba 100644
--- a/src/lib/reel_writer.cc
+++ b/src/lib/reel_writer.cc
@@ -566,19 +566,22 @@ ReelWriter::write (PlayerText subs, TextType type, optional<DCPTextTrack> track,
if (!asset) {
string lang = _film->subtitle_language ();
- if (lang.empty ()) {
- lang = "Unknown";
- }
if (_film->interop ()) {
shared_ptr<dcp::InteropSubtitleAsset> s (new dcp::InteropSubtitleAsset ());
s->set_movie_title (_film->name ());
- s->set_language (lang);
+ if (lang.empty()) {
+ s->set_language ("Unknown");
+ } else {
+ s->set_language (lang);
+ }
s->set_reel_number (raw_convert<string> (_reel_index + 1));
asset = s;
} else {
shared_ptr<dcp::SMPTESubtitleAsset> s (new dcp::SMPTESubtitleAsset ());
s->set_content_title_text (_film->name ());
- s->set_language (lang);
+ if (!lang.empty()) {
+ s->set_language (lang);
+ }
s->set_edit_rate (dcp::Fraction (_film->video_frame_rate (), 1));
s->set_reel_number (_reel_index + 1);
s->set_time_code_rate (_film->video_frame_rate ());