gstreamer/sys/va
Víctor Manuel Jáquez Leal 734e2a74c4 va: implement pooled allocators
1. Allocators don't implement memory free() methods since all the memories will
   implement dispose() returning FALSE
2. Memory/miniobject dispose() will act as memory release, enqueueing the
   release memory
3. A new allocator's method prepare_buffer() which queries the released memory
   queue and will add the requiered memories to the buffer.
4. Allocators added a GCond to synchronize dispose() and prepare_buffer()
5. A new allocator's method flush() which will free for real the memories.

While the bufferpool will

1. Remove all the memories at reset_buffer()
2. Implement acquire_buffer() calling allocator's prepare_buffer()
3. Implement flush_start() calling allocator's flush()
4. start() is disabled since it pre-allocs buffers but also calls
   our reset_buffer() which will drop the memories and later the
   buffers are ditched, something we don't want. This approach avoids
   buffer pre-allocation.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1626>
2020-10-04 18:42:51 +00:00
..
gstvaallocator.c va: implement pooled allocators 2020-10-04 18:42:51 +00:00
gstvaallocator.h va: implement pooled allocators 2020-10-04 18:42:51 +00:00
gstvacaps.c va: caps: centralize caps feature discovering 2020-10-04 15:22:04 +00:00
gstvacaps.h va: caps: centralize caps feature discovering 2020-10-04 15:22:04 +00:00
gstvadecoder.c va: util: make the _format_changed a common decoder function. 2020-09-25 17:07:05 +08:00
gstvadecoder.h va: codestyle: Clear all tabs in header files 2020-09-25 17:07:10 +08: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: caps: centralize caps feature discovering 2020-10-04 15:22:04 +00:00
gstvah264dec.h va: h264dec: check va allocator at decide allocation 2020-08-24 19:35:57 +00:00
gstvapool.c va: implement pooled allocators 2020-10-04 18:42:51 +00:00
gstvapool.h va: VA-API H.264 decoder and infrastructure 2020-06-28 11:47:35 +02:00
gstvaprofile.c va: VA-API H.264 decoder and infrastructure 2020-06-28 11:47:35 +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: caps: centralize caps feature discovering 2020-10-04 15:22:04 +00:00
gstvavp8dec.h va: Implement the VA vp8 decoder. 2020-09-25 17:07:30 +08:00
gstvavpp.c va: caps: centralize caps feature discovering 2020-10-04 15:22:04 +00:00
gstvavpp.h va: add vapostproc element 2020-09-23 18:19:22 +02:00
meson.build va: Implement the VA vp8 decoder. 2020-09-25 17:07:30 +08:00
plugin.c va: simplify VPP detection 2020-09-30 10:49:39 +02:00