mirror of https://git.ffmpeg.org/ffmpeg.git
hwcontext: Perform usual initialisation on derived device contexts
The initialisation should be common. For libmfx, it was previously happening in the derivation function and this moves it out.
This commit is contained in:
parent
c6bc18bc12
commit
caecb85014
|
@ -645,6 +645,10 @@ int av_hwdevice_ctx_create_derived(AVBufferRef **dst_ref_ptr,
|
|||
goto fail;
|
||||
|
||||
done:
|
||||
ret = av_hwdevice_ctx_init(dst_ref);
|
||||
if (ret < 0)
|
||||
goto fail;
|
||||
|
||||
*dst_ref_ptr = dst_ref;
|
||||
return 0;
|
||||
|
||||
|
|
|
@ -989,7 +989,6 @@ static int qsv_device_derive_from_child(AVHWDeviceContext *ctx,
|
|||
int flags)
|
||||
{
|
||||
AVQSVDeviceContext *hwctx = ctx->hwctx;
|
||||
QSVDeviceContext *s = ctx->internal->priv;
|
||||
|
||||
mfxVersion ver = { { 3, 1 } };
|
||||
mfxHDL handle;
|
||||
|
@ -1058,16 +1057,6 @@ static int qsv_device_derive_from_child(AVHWDeviceContext *ctx,
|
|||
goto fail;
|
||||
}
|
||||
|
||||
ret = qsv_device_init(ctx);
|
||||
if (ret < 0)
|
||||
goto fail;
|
||||
if (s->handle_type != handle_type) {
|
||||
av_log(ctx, AV_LOG_ERROR, "Error in child device handle setup: "
|
||||
"type mismatch (%d != %d).\n", s->handle_type, handle_type);
|
||||
err = AVERROR_UNKNOWN;
|
||||
goto fail;
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
||||
fail:
|
||||
|
|
Loading…
Reference in New Issue