From bc8e7a673471d07c16a880075d11ed49af60d51f Mon Sep 17 00:00:00 2001 From: Gwenole Beauchesne Date: Fri, 22 Aug 2014 11:13:36 +0200 Subject: [PATCH] vaapipostproc: enable advanced deinterlacing with same format. If only advanced deinterlacing is requested, i.e. deinterlacing is the only active algorithm to apply with source and output surface formats being the same, then make sure to enable VPP processing. Otherwise, allow fallback to bob-deinterlacing with simple rendering flags alteration. --- gst/vaapi/gstvaapipostproc.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gst/vaapi/gstvaapipostproc.c b/gst/vaapi/gstvaapipostproc.c index 805e354807..91f12b99f5 100644 --- a/gst/vaapi/gstvaapipostproc.c +++ b/gst/vaapi/gstvaapipostproc.c @@ -1117,7 +1117,8 @@ gst_vaapipostproc_transform(GstBaseTransform *trans, GstBuffer *inbuf, if (postproc->flags) { /* Use VA/VPP extensions to process this frame */ if (postproc->use_vpp && - postproc->flags != GST_VAAPI_POSTPROC_FLAG_DEINTERLACE) { + (postproc->flags != GST_VAAPI_POSTPROC_FLAG_DEINTERLACE || + deint_method_is_advanced(postproc->deinterlace_method))) { ret = gst_vaapipostproc_process_vpp(trans, buf, outbuf); if (ret != GST_FLOW_NOT_SUPPORTED) goto done;