vulkan_decode: use ff_vk_init

This solves the issue of an av_log function being called
with a context with invalid class.

Co-authored-by: Anton Khirnov <anton@khirnov.net>
This commit is contained in:
Lynne 2024-09-01 02:36:10 +00:00
parent 620822c0c5
commit 9c65325819
No known key found for this signature in database
GPG Key ID: A2FEA5F03F034464
1 changed files with 3 additions and 10 deletions

View File

@ -1114,12 +1114,9 @@ int ff_vk_decode_init(AVCodecContext *avctx)
s = &ctx->s;
vk = &ctx->s.vkfn;
s->frames_ref = av_buffer_ref(avctx->hw_frames_ctx);
s->frames = (AVHWFramesContext *)s->frames_ref->data;
s->hwfc = s->frames->hwctx;
s->device = (AVHWDeviceContext *)s->frames->device_ref->data;
s->hwctx = s->device->hwctx;
err = ff_vk_init(s, avctx, NULL, avctx->hw_frames_ctx);
if (err < 0)
return err;
profile = get_video_profile(ctx, avctx->codec_id);
if (!profile) {
@ -1127,10 +1124,6 @@ int ff_vk_decode_init(AVCodecContext *avctx)
return AVERROR(EINVAL);
}
err = ff_vk_load_props(s);
if (err < 0)
goto fail;
/* Create queue context */
vk_desc = get_codecdesc(avctx->codec_id);
err = ff_vk_video_qf_init(s, &ctx->qf,