gstreamer/sys/va
He Junyan f5c7ada98e va: Destroy picture unreleased buffers when finalize.
The current way of GstVaDecodePicture's finalize will leak some
resource such as parameter buffers and slice data.
The current way deliberately leaves these resource releasing logic
to va decoder related function and trigger a warning if we free the
GstVaDecodePicture without releasing these resources.
But in practice, sometimes, you do not have the chance to release
these resource before picture is freed. For example, H264/Mpeg2
support multi slice NALs/Packets for one frame. It is possible that
we already succeed to parse and generate the first several slices
data by _decode_slice(), but then we get a wrong slice NAL/packet
and fail to parse it. We decide to discard the whole frame in the
decoder's base class, it just free the current picture and does not
trigger sub class's function again. In this kind of cases, we do
not have the chance to cleanup the resource, and the resource will
be leaked.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1841>
2020-11-30 13:03:11 +00:00
..
gstvaallocator.c va: allocator: add a memory pool object helper 2020-11-24 13:00:00 +01:00
gstvaallocator.h va: pool, allocator: honor GST_BUFFER_POOL_ACQUIRE_FLAG_DONTWAIT 2020-11-24 12:44:24 +01:00
gstvabasedec.c va: basedec: Improve the decide_allocation(). 2020-11-17 01:21:54 +08:00
gstvabasedec.h va: basedec: Improve the decide_allocation(). 2020-11-17 01:21:54 +08:00
gstvacaps.c va: caps: added gst_caps_is_raw() 2020-10-09 16:34:57 +02:00
gstvacaps.h va: caps: added gst_caps_is_raw() 2020-10-09 16:34:57 +02:00
gstvadecoder.c va: Destroy picture unreleased buffers when finalize. 2020-11-30 13:03:11 +00:00
gstvadecoder.h va: Destroy picture unreleased buffers when finalize. 2020-11-30 13:03:11 +00:00
gstvadevice.c va: device: use gst_clear_object() 2020-09-23 18:19:22 +02:00
gstvadevice.h va: VA-API H.264 decoder and infrastructure 2020-06-28 11:47:35 +02:00
gstvadisplay.c va: display: add gst_va_display_get_image_formats() 2020-08-03 15:54:45 +00:00
gstvadisplay.h va: display: add gst_va_display_get_image_formats() 2020-08-03 15:54:45 +00:00
gstvadisplay_drm.c va: VA-API H.264 decoder and infrastructure 2020-06-28 11:47:35 +02:00
gstvadisplay_drm.h va: VA-API H.264 decoder and infrastructure 2020-06-28 11:47:35 +02:00
gstvadisplay_wrapped.c va: display: wrapped: Fix property name 2020-08-03 19:33:01 +02:00
gstvadisplay_wrapped.h va: VA-API H.264 decoder and infrastructure 2020-06-28 11:47:35 +02:00
gstvafilter.c va: filter: fix counter variable reuse 2020-10-04 16:05:03 +02:00
gstvafilter.h va: add vapostproc element 2020-09-23 18:19:22 +02:00
gstvah264dec.c va: Destroy picture unreleased buffers when finalize. 2020-11-30 13:03:11 +00:00
gstvah264dec.h va: h264dec: check va allocator at decide allocation 2020-08-24 19:35:57 +00:00
gstvah265dec.c va: Destroy picture unreleased buffers when finalize. 2020-11-30 13:03:11 +00:00
gstvah265dec.h va: Add HEVC decoding support 2020-11-04 17:53:23 +00:00
gstvapool.c va: pool, allocator: honor GST_BUFFER_POOL_ACQUIRE_FLAG_DONTWAIT 2020-11-24 12:44:24 +01:00
gstvapool.h va: allocator: add _set_format() and _get_format() 2020-10-09 16:34:57 +02:00
gstvaprofile.c va: Add VP9 decoder 2020-10-19 13:15:06 +02:00
gstvaprofile.h va: VA-API H.264 decoder and infrastructure 2020-06-28 11:47:35 +02:00
gstvautils.c va: utils: use GstObject for GstVaDisplay in context 2020-09-21 17:07:51 +00:00
gstvautils.h va: codestyle: Clear all tabs in header files 2020-09-25 17:07:10 +08:00
gstvavideoformat.c va: allocator: try to create surface without fourcc but chroma only 2020-09-23 18:19:22 +02:00
gstvavideoformat.h va: allocator: get a surface format from a image format 2020-08-03 15:54:45 +00:00
gstvavp8dec.c va: Destroy picture unreleased buffers when finalize. 2020-11-30 13:03:11 +00:00
gstvavp8dec.h va: Implement the VA vp8 decoder. 2020-09-25 17:07:30 +08:00
gstvavp9dec.c va: Destroy picture unreleased buffers when finalize. 2020-11-30 13:03:11 +00:00
gstvavp9dec.h va: Add VP9 decoder 2020-10-19 13:15:06 +02:00
gstvavpp.c va: allocator: add _set_format() and _get_format() 2020-10-09 16:34:57 +02:00
gstvavpp.h va: add vapostproc element 2020-09-23 18:19:22 +02:00
meson.build va: Add HEVC decoding support 2020-11-04 17:53:23 +00:00
plugin.c va: Add HEVC decoding support 2020-11-04 17:53:23 +00:00