Module: Mesa
Branch: master
Commit: 361d8f82c03ae78373483e91ad3ec339ccd05236
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=361d8f82c03ae78373483e91ad3ec339ccd05236

Author: Leo Liu <leo....@amd.com>
Date:   Thu Sep 28 21:41:29 2017 -0400

st/va: add dst rect to avoid scale on deint

For 1080p video transcode, the height will be scaled to 1088 when deint
to progressive buffer. Set dst rect to make sure no scale.

Fixes: 3ad8687 "st/va: use new vl_compositor_yuv_deint_full() to deint"

Signed-off-by: Leo Liu <leo....@amd.com>
Reviewed-by: Christian König <christian.koe...@amd.com>
Acked-by: Andy Furniss <adf.li...@gmail.com>

---

 src/gallium/state_trackers/va/picture.c | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/src/gallium/state_trackers/va/picture.c 
b/src/gallium/state_trackers/va/picture.c
index 5e794652a6..7427b98688 100644
--- a/src/gallium/state_trackers/va/picture.c
+++ b/src/gallium/state_trackers/va/picture.c
@@ -669,15 +669,15 @@ vlVaEndPicture(VADriverContextP ctx, VAContextID 
context_id)
 
       if (context->decoder->entrypoint == PIPE_VIDEO_ENTRYPOINT_ENCODE) {
          if (old_buf->interlaced) {
-            struct u_rect src_rect;
+            struct u_rect src_rect, dst_rect;
 
-            src_rect.x0 = 0;
-            src_rect.y0 = 0;
-            src_rect.x1 = surf->templat.width;
-            src_rect.y1 = surf->templat.height;
+            dst_rect.x0 = src_rect.x0 = 0;
+            dst_rect.y0 = src_rect.y0 = 0;
+            dst_rect.x1 = src_rect.x1 = surf->templat.width;
+            dst_rect.y1 = src_rect.y1 = surf->templat.height;
             vl_compositor_yuv_deint_full(&drv->cstate, &drv->compositor,
                                          old_buf, surf->buffer,
-                                         &src_rect, NULL, VL_COMPOSITOR_WEAVE);
+                                         &src_rect, &dst_rect, 
VL_COMPOSITOR_WEAVE);
          } else
             /* Can't convert from progressive to interlaced yet */
             return VA_STATUS_ERROR_INVALID_SURFACE;

_______________________________________________
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit

Reply via email to