[Mesa-dev] [PATCH v2 7/8] radeonsi:create uvd hevc enc entry

Boyuan Zhang boyzhang at amd.com
Wed Feb 7 22:34:02 UTC 2018


This patch is Reviewed-by: Boyuan Zhang <boyuan.zhang at amd.com>


On 2018-02-06 03:05 PM, James Zhu wrote:
> Add UVD hevc encode pipe video codec creation entry
>
> Signed-off-by: James Zhu <James.Zhu at amd.com>
> ---
>   src/gallium/drivers/radeonsi/si_uvd.c | 15 ++++++++++++---
>   1 file changed, 12 insertions(+), 3 deletions(-)
>
> diff --git a/src/gallium/drivers/radeonsi/si_uvd.c b/src/gallium/drivers/radeonsi/si_uvd.c
> index 64f2f8e..3906bbd 100644
> --- a/src/gallium/drivers/radeonsi/si_uvd.c
> +++ b/src/gallium/drivers/radeonsi/si_uvd.c
> @@ -31,6 +31,8 @@
>   #include "radeon/radeon_vce.h"
>   #include "radeon/radeon_vcn_dec.h"
>   #include "radeon/radeon_vcn_enc.h"
> +#include "radeon/radeon_uvd_enc.h"
> +#include "util/u_video.h"
>   
>   /**
>    * creates an video buffer with an UVD compatible memory layout
> @@ -146,9 +148,16 @@ struct pipe_video_codec *si_uvd_create_decoder(struct pipe_context *context,
>   	struct si_context *ctx = (struct si_context *)context;
>   	bool vcn = (ctx->b.family == CHIP_RAVEN) ? true : false;
>   
> -	if (templ->entrypoint == PIPE_VIDEO_ENTRYPOINT_ENCODE)
> -		return (vcn) ? radeon_create_encoder(context, templ, ctx->b.ws, si_vce_get_buffer) :
> -               si_vce_create_encoder(context, templ, ctx->b.ws, si_vce_get_buffer);
> +	if (templ->entrypoint == PIPE_VIDEO_ENTRYPOINT_ENCODE) {
> +		if (vcn) {
> +			radeon_create_encoder(context, templ, ctx->b.ws, si_vce_get_buffer);
> +		} else {
> +			if (u_reduce_video_profile(templ->profile) == PIPE_VIDEO_FORMAT_HEVC)
> +				return radeon_uvd_create_encoder(context, templ, ctx->b.ws, si_vce_get_buffer);
> +			else
> +				return si_vce_create_encoder(context, templ, ctx->b.ws, si_vce_get_buffer);
> +		}
> +	}
>   
>   	return (vcn) ? 	radeon_create_decoder(context, templ) :
>   		si_common_uvd_create_decoder(context, templ, si_uvd_set_dtb);

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20180207/6186fd12/attachment.html>


More information about the mesa-dev mailing list