Remove subtitle language from text content.
[dcpomatic.git] / src / lib / dcp_subtitle_content.cc
index 21a50c1990db485f4c20c3b71ba4349f20cd6e0d..43936314b5c41238ad17fafcb37d7ff4a8b8adc6 100644 (file)
@@ -36,6 +36,7 @@ using std::list;
 using boost::shared_ptr;
 using boost::dynamic_pointer_cast;
 using dcp::raw_convert;
+using namespace dcpomatic;
 
 DCPSubtitleContent::DCPSubtitleContent (boost::filesystem::path path)
        : Content (path)
@@ -68,14 +69,10 @@ DCPSubtitleContent::examine (shared_ptr<const Film> film, shared_ptr<Job> job)
        /* Default to turning these subtitles on */
        only_text()->set_use (true);
 
-       if (iop) {
-               only_text()->set_language (iop->language ());
-       } else if (smpte) {
-               only_text()->set_language (smpte->language().get_value_or (""));
-       }
-
        _length = ContentTime::from_seconds (sc->latest_subtitle_out().as_seconds ());
 
+       sc->fix_empty_font_ids ();
+
        BOOST_FOREACH (shared_ptr<dcp::LoadFontNode> i, sc->load_font_nodes ()) {
                only_text()->add_font (shared_ptr<Font> (new Font (i->id)));
        }
@@ -84,10 +81,16 @@ DCPSubtitleContent::examine (shared_ptr<const Film> film, shared_ptr<Job> job)
 DCPTime
 DCPSubtitleContent::full_length (shared_ptr<const Film> film) const
 {
-       FrameRateChange const frc (active_video_frame_rate(film), film->video_frame_rate());
+       FrameRateChange const frc (film, shared_from_this());
        return DCPTime (_length, frc);
 }
 
+DCPTime
+DCPSubtitleContent::approximate_length () const
+{
+       return DCPTime (_length, FrameRateChange());
+}
+
 string
 DCPSubtitleContent::summary () const
 {