| 29 | }; |
| 30 | |
| 31 | av_cold void ff_vulkan_encode_uninit(FFVulkanEncodeContext *ctx) |
| 32 | { |
| 33 | FFVulkanContext *s = &ctx->s; |
| 34 | FFVulkanFunctions *vk = &s->vkfn; |
| 35 | |
| 36 | /* Wait on and free execution pool */ |
| 37 | ff_vk_exec_pool_free(s, &ctx->enc_pool); |
| 38 | |
| 39 | /* Destroy the session params */ |
| 40 | if (ctx->session_params) |
| 41 | vk->DestroyVideoSessionParametersKHR(s->hwctx->act_dev, |
| 42 | ctx->session_params, |
| 43 | s->hwctx->alloc); |
| 44 | |
| 45 | ff_hw_base_encode_close(&ctx->base); |
| 46 | |
| 47 | av_buffer_pool_uninit(&ctx->buf_pool); |
| 48 | |
| 49 | ff_vk_video_common_uninit(s, &ctx->common); |
| 50 | |
| 51 | ff_vk_uninit(s); |
| 52 | } |
| 53 | |
| 54 | static int vulkan_encode_init(AVCodecContext *avctx, FFHWBaseEncodePicture *pic) |
| 55 | { |
no test coverage detected