From db28fdc0adabc7781b4dc8082d99003b63cf49c1 Mon Sep 17 00:00:00 2001 From: Leo Liu Date: Sun, 17 Sep 2017 10:27:59 -0400 Subject: [PATCH] st/omx: use new vl_compositor_yuv_deint_full() to deint MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit v2: add dst rect to make sure no scale Acked-by: Christian König --- src/gallium/state_trackers/omx_bellagio/vid_dec.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/gallium/state_trackers/omx_bellagio/vid_dec.c b/src/gallium/state_trackers/omx_bellagio/vid_dec.c index 28741c0..f9fe19f 100644 --- a/src/gallium/state_trackers/omx_bellagio/vid_dec.c +++ b/src/gallium/state_trackers/omx_bellagio/vid_dec.c @@ -602,6 +602,7 @@ static void vid_dec_FrameDecoded(OMX_COMPONENTTYPE *comp, OMX_BUFFERHEADERTYPE* /* re-allocate the progressive buffer */ omx_base_video_PortType *port; struct pipe_video_buffer templat = {}; + struct u_rect src_rect, dst_rect; port = (omx_base_video_PortType *) priv->ports[OMX_BASE_FILTER_INPUTPORT_INDEX]; @@ -614,8 +615,14 @@ static void vid_dec_FrameDecoded(OMX_COMPONENTTYPE *comp, OMX_BUFFERHEADERTYPE* new_vbuf = priv->pipe->create_video_buffer(priv->pipe, &templat); /* convert the interlaced to the progressive */ - vl_compositor_yuv_deint(&priv->cstate, &priv->compositor, - input->pInputPortPrivate, new_vbuf); + src_rect.x0 = dst_rect.x0 = 0; + src_rect.x1 = dst_rect.x1 = templat.width; + src_rect.y0 = dst_rect.y0 = 0; + src_rect.y1 = dst_rect.y1 = templat.height; + + vl_compositor_yuv_deint_full(&priv->cstate, &priv->compositor, + input->pInputPortPrivate, new_vbuf, + &src_rect, &dst_rect, VL_COMPOSITOR_WEAVE); /* set the progrssive buffer for next round */ vbuf->destroy(vbuf); -- 2.7.4