From: Sebastian Dröge Date: Wed, 15 Feb 2017 19:41:47 +0000 (+0200) Subject: video-scaler: Fix upscaling if width & height change and we're starting not at y=0 X-Git-Tag: 1.12.2~128 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=ab854b04baaa56a2309b258c602d1cadd7e45e74;p=platform%2Fupstream%2Fgst-plugins-base.git video-scaler: Fix upscaling if width & height change and we're starting not at y=0 It was taking the initial input y-offset from the output value, which only works for y=0 (in which case both are the same). If y > 0, we would always stay behind the requested input offset and never ever read anything from the input. --- diff --git a/gst-libs/gst/video/video-scaler.c b/gst-libs/gst/video/video-scaler.c index 1dbae03..cd100c8 100644 --- a/gst-libs/gst/video/video-scaler.c +++ b/gst-libs/gst/video/video-scaler.c @@ -1505,7 +1505,6 @@ gst_video_scaler_2d (GstVideoScaler * hscale, GstVideoScaler * vscale, vfunc (vscale, lines, LINE (dest, dest_stride, i), i, width, n_elems); } } else { - gint tmp_in = y; gint s1, s2; if (hscale->tmpwidth < width) @@ -1515,6 +1514,8 @@ gst_video_scaler_2d (GstVideoScaler * hscale, GstVideoScaler * vscale, s2 = width * height; if (s1 <= s2) { + gint tmp_in = vscale->resampler.offset[y]; + for (i = y; i < height; i++) { guint in, j;