mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-20 15:27:07 +00:00
673d13f176
GST_TRACERS="leaks" GST_DEBUG="GST_TRACER:7,leaks:6" gst-play-1.0 --use-playbin3 test.mkv When running a pipeline like above, leaks are observed. 0:00:56.882419132 240637 0x5562c528ccc0 TRACE GST_TRACER :0:: object-alive, type-name=(string)GstConcatPad, address=(gpointer)0x7efd7c0d20a0, description=(string)<'':sink_0>, ref-count=(uint)1, trace=(string); 0:00:56.882429131 240637 0x5562c528ccc0 TRACE GST_TRACER :0:: object-alive, type-name=(string)GstConcatPad, address=(gpointer)0x7efd7c0d2be0, description=(string)<'':sink_0>, ref-count=(uint)1, trace=(string); 0:00:56.882437056 240637 0x5562c528ccc0 TRACE GST_TRACER :0:: object-alive, type-name=(string)GstConcatPad, address=(gpointer)0x7efd7c0d3720, description=(string)<'':sink_0>, ref-count=(uint)1, trace=(string); gst_element_release_request_pad does not unref the pad. It needs to be followed by gst_object_unref. Doing that fixes the above leaks. Use g_ptr_array_new_with_free_func with gst_object_unref as the free function to unref the pad after release. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3177> |
||
---|---|---|
.. | ||
gstdecodebin2.c | ||
gstdecodebin3-parse.c | ||
gstdecodebin3.c | ||
gstparsebin.c | ||
gstplay-enum.c | ||
gstplay-enum.h | ||
gstplaybackelement.c | ||
gstplaybackelements.h | ||
gstplaybackplugin.c | ||
gstplaybackutils.c | ||
gstplaybackutils.h | ||
gstplaybin2.c | ||
gstplaybin3.c | ||
gstplaysink.c | ||
gstplaysink.h | ||
gstplaysinkaudioconvert.c | ||
gstplaysinkaudioconvert.h | ||
gstplaysinkconvertbin.c | ||
gstplaysinkconvertbin.h | ||
gstplaysinkvideoconvert.c | ||
gstplaysinkvideoconvert.h | ||
gstrawcaps.h | ||
gststreamsynchronizer.c | ||
gststreamsynchronizer.h | ||
gstsubtitleoverlay.c | ||
gstsubtitleoverlay.h | ||
gsturidecodebin.c | ||
gsturidecodebin3.c | ||
gsturisourcebin.c | ||
meson.build |