gstreamer/sys/va
Víctor Manuel Jáquez Leal fbbf9c629a va: allocator: add _set_format() and _get_format()
Since allocators keep an available memory queue to reuse, video format and usage
hint are now persistant while allocator's memories are around.

This patch adds _set_format() and _get_format() for both VA allocators.

_set_format() validates if given format can be used or reused. If no allocated
surface previously it creates a dummy one to fetch its offsets and
strides. Updated info is returned to callee.

GstVaPool uses _set_format() at config to verify the allocator capacity and to
get the surfaces offsets and strides, which are going to be used by the video
meta.

Allocator extracted caps are compared with caps from config and if they have
different strides or offsets, force_videometa is set.

A new bufferpool method gst_va_pool_requires_video_meta() is added return the
value of force_videometa. This value is checked in order to know if decoders
need to copy the surface if downstream doesn't announce video meta support.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1667>
2020-10-09 16:34:57 +02:00
..
gstvaallocator.c va: allocator: add _set_format() and _get_format() 2020-10-09 16:34:57 +02:00
gstvaallocator.h va: allocator: add _set_format() and _get_format() 2020-10-09 16:34:57 +02: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: remove GstVideoInfo parameter from _get_surface() functions 2020-10-09 16:34:56 +02: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
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
gstvadisplay_drm.h
gstvadisplay_wrapped.c va: display: wrapped: Fix property name 2020-08-03 19:33:01 +02:00
gstvadisplay_wrapped.h
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: allocator: add _set_format() and _get_format() 2020-10-09 16:34:57 +02:00
gstvah264dec.h va: h264dec: check va allocator at decide allocation 2020-08-24 19:35:57 +00:00
gstvapool.c va: allocator: add _set_format() and _get_format() 2020-10-09 16:34:57 +02:00
gstvapool.h va: allocator: add _set_format() and _get_format() 2020-10-09 16:34:57 +02:00
gstvaprofile.c
gstvaprofile.h
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: allocator: add _set_format() and _get_format() 2020-10-09 16:34:57 +02:00
gstvavp8dec.h va: Implement the VA vp8 decoder. 2020-09-25 17:07:30 +08: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: 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