gstreamer/sys/va
Víctor Manuel Jáquez Leal 72ab56c376 va: allocator: free allocator when a mem is held
An application, using for example appsink, can hold buffers from any
va allocator after setting the pipeline to NULL. We need to destroy
the allocator when that memory is unrefed.

This patch juggles a bit with the allocator reference count in
memories in order to achieve this:

1. When memory is created no alloc ref is modified
2. When memory is released, alloc ref is decreased
3. When memory is reassiged to a buffer, alloc ref is increased
4. When memory is flushed, alloc ref is increased becase it is going
   to be decreased in gst_memory_unref()

Also this patch moves the deallocation of member variables to
finalize() rather than dispose()

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1815>
2020-11-24 12:44:24 +01:00
..
gstvaallocator.c va: allocator: free allocator when a mem is held 2020-11-24 12:44:24 +01:00
gstvaallocator.h va: allocator: add _set_format() and _get_format() 2020-10-09 16:34:57 +02: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: Add VP9 decoder 2020-10-19 13:15:06 +02:00
gstvadecoder.h va: Add VP9 decoder 2020-10-19 13:15:06 +02: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: h264dec: Add support for interlaced stream 2020-11-17 20:20:32 +09:00
gstvah264dec.h va: h264dec: check va allocator at decide allocation 2020-08-24 19:35:57 +00:00
gstvah265dec.c va: Add HEVC decoding support 2020-11-04 17:53:23 +00:00
gstvah265dec.h va: Add HEVC decoding support 2020-11-04 17:53:23 +00:00
gstvapool.c va: pool: Check the force_videometa for all memory types. 2020-11-17 01:22:02 +08: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: basedec: copy frames logic to decide_allocation() 2020-10-10 17:18:04 +00:00
gstvavp8dec.h va: Implement the VA vp8 decoder. 2020-09-25 17:07:30 +08:00
gstvavp9dec.c va: Add VP9 decoder 2020-10-19 13:15:06 +02: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