Move luminance to Interop/SMPTE metadata and remove the ISDCF metadata dialogue.
[dcpomatic.git] / src / lib / reel_writer.cc
index 294c0b7b64c85ecc214e1f0e8974c738d2134c2d..2c55f0f064214bbd6e6764724a3642d46fe379a8 100644 (file)
@@ -178,17 +178,11 @@ ReelWriter::ReelWriter (
 
                DCPOMATIC_ASSERT (film()->directory());
 
-               vector<dcp::Channel> active;
-               for (auto i: film()->mapped_audio_channels()) {
-                       active.push_back (static_cast<dcp::Channel>(i));
-               }
-
                /* Write the sound asset into the film directory so that we leave the creation
                   of the DCP directory until the last minute.
                */
                _sound_asset_writer = _sound_asset->start_write (
                        film()->directory().get() / audio_asset_filename (_sound_asset, _reel_index, _reel_count, _content_summary),
-                       active,
                        film()->contains_atmos_content()
                        );
        }
@@ -629,8 +623,8 @@ ReelWriter::create_reel_text (
 
        if (subtitle) {
                /* We have a subtitle asset that we either made or are referencing */
-               if (!film()->subtitle_languages().empty()) {
-                       subtitle->set_language (film()->subtitle_languages().front());
+               if (auto main_language = film()->subtitle_languages().first) {
+                       subtitle->set_language (*main_language);
                }
        } else if (ensure_subtitles) {
                /* We had no subtitle asset, but we've been asked to make sure there is one */
@@ -782,7 +776,7 @@ ReelWriter::empty_text_asset (TextType type, optional<DCPTextTrack> track) const
                auto s = make_shared<dcp::InteropSubtitleAsset>();
                s->set_movie_title (film()->name());
                if (type == TextType::OPEN_SUBTITLE) {
-                       s->set_language (lang.empty() ? "Unknown" : lang.front().to_string());
+                       s->set_language (lang.first ? lang.first->to_string() : "Unknown");
                } else if (!track->language.empty()) {
                        s->set_language (track->language);
                }
@@ -792,8 +786,8 @@ ReelWriter::empty_text_asset (TextType type, optional<DCPTextTrack> track) const
                auto s = make_shared<dcp::SMPTESubtitleAsset>();
                s->set_content_title_text (film()->name());
                s->set_metadata (mxf_metadata());
-               if (type == TextType::OPEN_SUBTITLE && !lang.empty()) {
-                       s->set_language (lang.front());
+               if (type == TextType::OPEN_SUBTITLE && lang.first) {
+                       s->set_language (*lang.first);
                } else if (track && !track->language.empty()) {
                        s->set_language (dcp::LanguageTag(track->language));
                }