summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2019-11-08 17:21:19 +0100
committerCarl Hetherington <cth@carlh.net>2019-11-16 21:48:35 +0000
commit08e3de8ffa64c5e352ee417b5ab6b3b0fc9a4d13 (patch)
tree4c31bdeea5eb267860cbafe9a9010972142a693f
parentfe64650ae5496c4de73894b97c53e6951ac3548f (diff)
Fix no-stretch / no-scale for non-square pixels (#1636).v2.14.14
Backported from ee0f2219f3799881bc9f5060edd2ceeecff4217d in v2.15.x
-rw-r--r--src/lib/video_content_scale.cc4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/lib/video_content_scale.cc b/src/lib/video_content_scale.cc
index 137d78ad2..73dfd27fe 100644
--- a/src/lib/video_content_scale.cc
+++ b/src/lib/video_content_scale.cc
@@ -107,13 +107,15 @@ VideoContentScale::name () const
/** @param display_container Size of the container that we are displaying this content in.
* @param film_container The size of the film's image.
+ * @return Size, in pixels that the VideoContent's image should be scaled to (taking into account its pixel aspect ratio)
*/
dcp::Size
VideoContentScale::size (shared_ptr<const VideoContent> c, dcp::Size display_container, dcp::Size film_container) const
{
/* Work out the size of the content if it were put inside film_container */
- dcp::Size const video_size_after_crop = c->size_after_crop ();
+ dcp::Size video_size_after_crop = c->size_after_crop();
+ video_size_after_crop.width *= c->sample_aspect_ratio().get_value_or(1);
dcp::Size size;