ffmpeg | branch: master | Lynne <d...@lynne.ee> | Thu Mar 27 12:47:11 2025 +0000| [5fc4acae9c764cf8b13d085d2d335bddd12230b5] | committer: Lynne
vulkan_decode: allow using NULL sequence_params when decoding The function had some checks to allow for this, but as it always tried to dereference a bufferref, it wasn't fully ready. > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=5fc4acae9c764cf8b13d085d2d335bddd12230b5 --- libavcodec/vulkan_decode.c | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/libavcodec/vulkan_decode.c b/libavcodec/vulkan_decode.c index f670922a75..cab1028e2c 100644 --- a/libavcodec/vulkan_decode.c +++ b/libavcodec/vulkan_decode.c @@ -96,11 +96,9 @@ int ff_vk_update_thread_context(AVCodecContext *dst, const AVCodecContext *src) av_refstruct_replace(&dst_ctx->shared_ctx, src_ctx->shared_ctx); - if (src_ctx->session_params) { - err = av_buffer_replace(&dst_ctx->session_params, src_ctx->session_params); - if (err < 0) - return err; - } + err = av_buffer_replace(&dst_ctx->session_params, src_ctx->session_params); + if (err < 0) + return err; dst_ctx->dedicated_dpb = src_ctx->dedicated_dpb; dst_ctx->external_fg = src_ctx->external_fg; @@ -381,11 +379,12 @@ int ff_vk_decode_frame(AVCodecContext *avctx, /* Quirks */ const int layered_dpb = ctx->common.layered_dpb; - VkVideoSessionParametersKHR *par = (VkVideoSessionParametersKHR *)dec->session_params->data; VkVideoBeginCodingInfoKHR decode_start = { .sType = VK_STRUCTURE_TYPE_VIDEO_BEGIN_CODING_INFO_KHR, .videoSession = ctx->common.session, - .videoSessionParameters = *par, + .videoSessionParameters = dec->session_params ? + *((VkVideoSessionParametersKHR *)dec->session_params->data) : + VK_NULL_HANDLE, .referenceSlotCount = vp->decode_info.referenceSlotCount, .pReferenceSlots = vp->decode_info.pReferenceSlots, }; _______________________________________________ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog To unsubscribe, visit link above, or email ffmpeg-cvslog-requ...@ffmpeg.org with subject "unsubscribe".