Use audio length in FFmpegContent if there is no video.
[dcpomatic.git] / src / lib / ffmpeg_content.cc
index bb9795f25d0909a138b2fb46c58deab3d3cf01c5..32c2dee8b6d27662d6671cf9636e93c720ca7561 100644 (file)
@@ -311,7 +311,12 @@ DCPTime
 FFmpegContent::full_length () const
 {
        FrameRateChange const frc (active_video_frame_rate (), film()->video_frame_rate ());
-       return DCPTime::from_frames (llrint (video->length_after_3d_combine() * frc.factor()), film()->video_frame_rate());
+       if (video) {
+               return DCPTime::from_frames (llrint (video->length_after_3d_combine() * frc.factor()), film()->video_frame_rate());
+       }
+
+       DCPOMATIC_ASSERT (audio);
+       return DCPTime::from_frames (llrint (audio->stream()->length() / frc.speed_up), audio->stream()->frame_rate());
 }
 
 void