Put Time types in dcpomatic namespace.
[dcpomatic.git] / src / lib / ffmpeg_content.cc
index f4e4beba923cf4aed67b634831dc334c97ca74d2..69d74321514729208eaeea371185a924b52f80fe 100644 (file)
@@ -56,6 +56,7 @@ using boost::shared_ptr;
 using boost::dynamic_pointer_cast;
 using boost::optional;
 using dcp::raw_convert;
+using namespace dcpomatic;
 
 int const FFmpegContentProperty::SUBTITLE_STREAMS = 100;
 int const FFmpegContentProperty::SUBTITLE_STREAM = 101;
@@ -405,14 +406,17 @@ FFmpegContent::full_length (shared_ptr<const Film> film) const
                return DCPTime::from_frames (llrint (video->length_after_3d_combine() * frc.factor()), film->video_frame_rate());
        }
 
-       DCPOMATIC_ASSERT (audio);
-
-       DCPTime longest;
-       BOOST_FOREACH (AudioStreamPtr i, audio->streams ()) {
-               longest = max (longest, DCPTime::from_frames (llrint (i->length() / frc.speed_up), i->frame_rate()));
+       if (audio) {
+               DCPTime longest;
+               BOOST_FOREACH (AudioStreamPtr i, audio->streams()) {
+                       longest = max (longest, DCPTime::from_frames(llrint(i->length() / frc.speed_up), i->frame_rate()));
+               }
+               return longest;
        }
 
-       return longest;
+       /* XXX: subtitle content? */
+
+       return DCPTime();
 }
 
 DCPTime
@@ -507,7 +511,7 @@ FFmpegContent::set_default_colour_conversion ()
 void
 FFmpegContent::add_properties (shared_ptr<const Film> film, list<UserProperty>& p) const
 {
-       Content::add_properties (p);
+       Content::add_properties (film, p);
 
        if (video) {
                video->add_properties (p);