On 6/9/17 4:27 PM, wm4 wrote: > It appears in this case, frames_ininit is called twice (once by > av_hwframe_ctx_init(), and again by unreffing the frames ctx ref). > --- > Not sure if that's correct. Or if it could happen with certain other > decoders. > --- > libavutil/hwcontext_d3d11va.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/libavutil/hwcontext_d3d11va.c b/libavutil/hwcontext_d3d11va.c > index 3940502868..5622bb8d34 100644 > --- a/libavutil/hwcontext_d3d11va.c > +++ b/libavutil/hwcontext_d3d11va.c > @@ -72,9 +72,11 @@ static void d3d11va_frames_uninit(AVHWFramesContext *ctx) > > if (frames_hwctx->texture) > ID3D11Texture2D_Release(frames_hwctx->texture); > + frames_hwctx->texture = NULL; > > if (s->staging_texture) > ID3D11Texture2D_Release(s->staging_texture); > + s->staging_texture = NULL; > } > > static void free_texture(void *opaque, uint8_t *data) >
looks correct though. lu _______________________________________________ libav-devel mailing list libav-devel@libav.org https://lists.libav.org/mailman/listinfo/libav-devel