[Mesa-dev] [PATCH 2/2] radeon/uvd: fix VC-1 simple/main profile decode v2

Alex Deucher alexdeucher at gmail.com
Fri Nov 6 09:50:43 PST 2015


On Fri, Nov 6, 2015 at 5:58 AM, Christian König <deathsimple at vodafone.de> wrote:
> From: Boyuan Zhang <boyuan.zhang at amd.com>
>
> We just needed to set the extra width/height fields to get this working.
>
> v2 (chk): rebased, CC stable added, commit message added, fixed coding style
>
> Signed-off-by: Boyuan Zhang <boyuan.zhang at amd.com>
> Signed-off-by: Christian König <christian.koenig at amd.com>
> Cc: "10.6 11.0" <mesa-stable at lists.freedesktop.org>

For the series:
Reviewed-by: Alex Deucher <alexander.deucher at amd.com>

> ---
>  src/gallium/drivers/radeon/radeon_uvd.c   | 6 ++++++
>  src/gallium/drivers/radeon/radeon_video.c | 3 +--
>  2 files changed, 7 insertions(+), 2 deletions(-)
>
> diff --git a/src/gallium/drivers/radeon/radeon_uvd.c b/src/gallium/drivers/radeon/radeon_uvd.c
> index 33b0136..0c643e5 100644
> --- a/src/gallium/drivers/radeon/radeon_uvd.c
> +++ b/src/gallium/drivers/radeon/radeon_uvd.c
> @@ -947,6 +947,12 @@ static void ruvd_end_frame(struct pipe_video_codec *decoder,
>         dec->msg->body.decode.width_in_samples = dec->base.width;
>         dec->msg->body.decode.height_in_samples = dec->base.height;
>
> +       if ((picture->profile == PIPE_VIDEO_PROFILE_VC1_SIMPLE) ||
> +           (picture->profile == PIPE_VIDEO_PROFILE_VC1_MAIN)) {
> +               dec->msg->body.decode.width_in_samples = align(dec->msg->body.decode.width_in_samples, 16) / 16;
> +               dec->msg->body.decode.height_in_samples = align(dec->msg->body.decode.height_in_samples, 16) / 16;
> +       }
> +
>         dec->msg->body.decode.dpb_size = dec->dpb.res->buf->size;
>         dec->msg->body.decode.bsd_size = bs_size;
>         dec->msg->body.decode.db_pitch = dec->base.width;
> diff --git a/src/gallium/drivers/radeon/radeon_video.c b/src/gallium/drivers/radeon/radeon_video.c
> index 32bfc32..f56c6cf 100644
> --- a/src/gallium/drivers/radeon/radeon_video.c
> +++ b/src/gallium/drivers/radeon/radeon_video.c
> @@ -244,8 +244,7 @@ int rvid_get_video_param(struct pipe_screen *screen,
>                                 return codec != PIPE_VIDEO_FORMAT_MPEG4;
>                         return true;
>                 case PIPE_VIDEO_FORMAT_VC1:
> -                       /* FIXME: VC-1 simple/main profile is broken */
> -                       return profile == PIPE_VIDEO_PROFILE_VC1_ADVANCED;
> +                       return true;
>                 case PIPE_VIDEO_FORMAT_HEVC:
>                         /* Carrizo only supports HEVC Main */
>                         return rscreen->family >= CHIP_CARRIZO &&
> --
> 1.9.1
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/mesa-dev


More information about the mesa-dev mailing list