Module: Mesa Branch: master Commit: 47443bc9f054a31b1ba92890a25655953116e080 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=47443bc9f054a31b1ba92890a25655953116e080
Author: Boyuan Zhang <[email protected]> Date: Tue Nov 7 16:20:05 2017 -0500 radeon/vcn: add encode bitstream Add implementation for encode_bitstream interface for vcn encode. Signed-off-by: Boyuan Zhang <[email protected]> Acked-by: Christian König <[email protected]> --- src/gallium/drivers/radeon/radeon_vcn_enc.c | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/radeon/radeon_vcn_enc.c b/src/gallium/drivers/radeon/radeon_vcn_enc.c index 0a2c5d86de..f78672a1b1 100644 --- a/src/gallium/drivers/radeon/radeon_vcn_enc.c +++ b/src/gallium/drivers/radeon/radeon_vcn_enc.c @@ -155,7 +155,19 @@ static void radeon_enc_encode_bitstream(struct pipe_video_codec *encoder, struct pipe_resource *destination, void **fb) { - /* TODO*/ + struct radeon_encoder *enc = (struct radeon_encoder*)encoder; + enc->get_buffer(destination, &enc->bs_handle, NULL); + enc->bs_size = destination->width0; + + *fb = enc->fb = CALLOC_STRUCT(rvid_buffer); + + if (!si_vid_create_buffer(enc->screen, enc->fb, 4096, PIPE_USAGE_STAGING)) { + RVID_ERR("Can't create feedback buffer.\n"); + return; + } + + enc->need_feedback = true; + enc->encode(enc); } static void radeon_enc_end_frame(struct pipe_video_codec *encoder, _______________________________________________ mesa-commit mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/mesa-commit
