From b6d4bedbb1bfd7a04b0b84fa59769ec3e5ca149b Mon Sep 17 00:00:00 2001 From: Lynne Date: Mon, 25 May 2020 20:56:00 +0100 Subject: hwcontext_vulkan: initialize the frames context when deriving Otherwise, the frames context is considered to be ready to handle mapping, and it doesn't get initialized the normal way through .frames_init. --- libavutil/hwcontext_vulkan.c | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'libavutil/hwcontext_vulkan.c') diff --git a/libavutil/hwcontext_vulkan.c b/libavutil/hwcontext_vulkan.c index 5976e33f03..7383af2083 100644 --- a/libavutil/hwcontext_vulkan.c +++ b/libavutil/hwcontext_vulkan.c @@ -3251,6 +3251,12 @@ static int vulkan_transfer_data_from(AVHWFramesContext *hwfc, AVFrame *dst, } } +static int vulkan_frames_derive_to(AVHWFramesContext *dst_fc, + AVHWFramesContext *src_fc, int flags) +{ + return vulkan_frames_init(dst_fc); +} + AVVkFrame *av_vk_frame_alloc(void) { return av_mallocz(sizeof(AVVkFrame)); @@ -3280,6 +3286,7 @@ const HWContextType ff_hwcontext_type_vulkan = { .map_to = vulkan_map_to, .map_from = vulkan_map_from, + .frames_derive_to = &vulkan_frames_derive_to, .pix_fmts = (const enum AVPixelFormat []) { AV_PIX_FMT_VULKAN, -- cgit v1.2.3