Fix video scaling when the video needs rotation (#2791).
[dcpomatic.git] / src / lib / player_video.cc
index 081147434ad4846bf751cf9340ff7859da8587ce..35c5d3daa484f997d141417bf56efa10208753e8 100644 (file)
@@ -298,7 +298,7 @@ PlayerVideo::same (shared_ptr<const PlayerVideo> other) const
 
 
 AVPixelFormat
-PlayerVideo::force (AVPixelFormat, AVPixelFormat force_to)
+PlayerVideo::force (AVPixelFormat force_to)
 {
        return force_to;
 }
@@ -362,8 +362,13 @@ PlayerVideo::reset_metadata (shared_ptr<const Film> film, dcp::Size player_video
 
        _crop = content->video->actual_crop();
        _fade = content->video->fade(film, _video_frame.get());
+       auto const size = content->video->scaled_size(film->frame_size());
+       if (!size) {
+               return false;
+       }
+
        _inter_size = scale_for_display(
-               content->video->scaled_size(film->frame_size()),
+               *size,
                player_video_container_size,
                film->frame_size(),
                content->video->pixel_quanta()