[Mesa-dev] [PATCH 11/12] st/va: add environmental variable to disable interlace

Christian König deathsimple at vodafone.de
Tue Jul 19 08:53:33 UTC 2016


Am 19.07.2016 um 00:43 schrieb Boyuan Zhang:
> Add environmental variable to disable interlace mode. At VAAPI decoding stage, driver can not distinguish b/w pure decoding case and transcoding case. And since interlace encoding is not supported, we have to disable interlace for transcoding case. The temporary solution is to use enviromental variable to disable interlace mode.
>
> Signed-off-by: Boyuan Zhang <boyuan.zhang at amd.com>
> ---
>   src/gallium/state_trackers/va/surface.c | 4 ++++
>   1 file changed, 4 insertions(+)
>
> diff --git a/src/gallium/state_trackers/va/surface.c b/src/gallium/state_trackers/va/surface.c
> index 8ce4143..d1296b0 100644
> --- a/src/gallium/state_trackers/va/surface.c
> +++ b/src/gallium/state_trackers/va/surface.c
> @@ -43,6 +43,8 @@
>   
>   #include "va_private.h"
>   
> +DEBUG_GET_ONCE_BOOL_OPTION(nointerlace, "DISABLE_INTERLACE", FALSE);

We should add a VAAPI_ prefix before that one.

Christian.

> +
>   #include <va/va_drmcommon.h>
>   
>   static const enum pipe_format vpp_surface_formats[] = {
> @@ -620,6 +622,8 @@ vlVaCreateSurfaces2(VADriverContextP ctx, unsigned int format,
>   
>      templat.width = width;
>      templat.height = height;
> +   if (debug_get_option_nointerlace())
> +      templat.interlaced = false;
>   
>      memset(surfaces, VA_INVALID_ID, num_surfaces * sizeof(VASurfaceID));
>   



More information about the mesa-dev mailing list