From bc9644460df595788b1784a84dbe4fa33b17668d Mon Sep 17 00:00:00 2001 From: Boyuan Zhang Date: Tue, 7 Nov 2017 16:20:53 -0500 Subject: [PATCH] radeon/vcn: add encode destroy MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Add implementation for destroy interface for vcn encode. Signed-off-by: Boyuan Zhang Acked-by: Christian König --- src/gallium/drivers/radeon/radeon_vcn_enc.c | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/radeon/radeon_vcn_enc.c b/src/gallium/drivers/radeon/radeon_vcn_enc.c index 05e7e836246..219f8706f50 100644 --- a/src/gallium/drivers/radeon/radeon_vcn_enc.c +++ b/src/gallium/drivers/radeon/radeon_vcn_enc.c @@ -180,7 +180,21 @@ static void radeon_enc_end_frame(struct pipe_video_codec *encoder, static void radeon_enc_destroy(struct pipe_video_codec *encoder) { - /* TODO*/ + struct radeon_encoder *enc = (struct radeon_encoder*)encoder; + + if (enc->stream_handle) { + struct rvid_buffer fb; + enc->need_feedback = false; + si_vid_create_buffer(enc->screen, &fb, 512, PIPE_USAGE_STAGING); + enc->fb = &fb; + enc->destroy(enc); + flush(enc); + si_vid_destroy_buffer(&fb); + } + + si_vid_destroy_buffer(&enc->cpb); + enc->ws->cs_destroy(enc->cs); + FREE(enc); } static void radeon_enc_get_feedback(struct pipe_video_codec *encoder, -- 2.30.2