[FFmpeg-devel] [PATCH v4 1/1] avutils/hwcontext: When deriving a hwdevice, search for existing device in both directions

Anton Khirnov anton at khirnov.net
Thu Nov 25 18:39:55 EET 2021


Quoting Soft Works (2021-11-25 03:41:32)
> @@ -687,6 +720,11 @@ int av_hwdevice_ctx_create_derived_opts(AVBufferRef **dst_ref_ptr,
>                      ret = AVERROR(ENOMEM);
>                      goto fail;
>                  }
> +                tmp_ctx->internal->derived_devices[type] = av_buffer_ref(dst_ref);
> +                if (!tmp_ctx->internal->derived_devices[type]) {
> +                    ret = AVERROR(ENOMEM);
> +                    goto fail;
> +                }

This means that once you derive a device of a certain type, you can
never truly close it without also killing the parent device. That
strikes me as
- potentially troublesome
- a behavior change

Also, I don't see it as completely obvious that all derivations should
always return the same child instance.

-- 
Anton Khirnov


More information about the ffmpeg-devel mailing list