From 01a402e4ec3239f84756b290dc60e56bedb0c79f Mon Sep 17 00:00:00 2001 From: Seungha Yang Date: Fri, 8 Mar 2019 13:43:15 +0900 Subject: [PATCH] nvenc: More clean up on stop for encoder to be reusable Encoder will not configure internal pool again if input_state exist Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/912 --- sys/nvenc/gstnvbaseenc.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/sys/nvenc/gstnvbaseenc.c b/sys/nvenc/gstnvbaseenc.c index 3d991bafbf..4749c477a6 100644 --- a/sys/nvenc/gstnvbaseenc.c +++ b/sys/nvenc/gstnvbaseenc.c @@ -513,6 +513,11 @@ gst_nv_base_enc_stop (GstVideoEncoder * enc) gst_nv_base_enc_free_buffers (nvenc); + if (nvenc->input_state) { + gst_video_codec_state_unref (nvenc->input_state); + nvenc->input_state = NULL; + } + if (nvenc->bitstream_pool) { g_async_queue_unref (nvenc->bitstream_pool); nvenc->bitstream_pool = NULL;