Víctor Manuel Jáquez Leal
b831478e53
vulkan: fix wrong stages or access in barriers
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7202 >
2024-07-22 13:38:15 +02:00
Ruben Gonzalez
c5b4ad429d
vkh265dec: Fix H.264 ref in logs
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7147 >
2024-07-08 17:34:07 +02:00
Stéphane Cerveau
9db0b83aa1
vkh26xdec: Fix stop memory leak
...
The h26xdecoder 'stop' method was not called
as the vulkan h26x class rewires the video decoder
'stop' base method to its own one.
It was causing some memory leaks such as dangling parser
and dpb in h26xdecoder base class.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6787 >
2024-05-01 11:24:25 +01:00
Víctor Manuel Jáquez Leal
d2aa3829b8
vkh265dec: add missing VPS parameter
...
and fix coded size
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6534 >
2024-04-03 18:26:05 +00:00
Víctor Manuel Jáquez Leal
56ac5e9041
vkh26xdec: implement close() vmethod
...
Since a validation layer error is signaled at EOS because it's required to wait
for the last frame to be processed.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6534 >
2024-04-03 18:26:05 +00:00
Víctor Manuel Jáquez Leal
9301f64d72
vkh26xdec: remove unused variables
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6534 >
2024-04-03 18:26:05 +00:00
Víctor Manuel Jáquez Leal
85a78f56dc
vkh265dec: fix resource info structure when layered DPB
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6534 >
2024-04-03 18:26:05 +00:00
Víctor Manuel Jáquez Leal
b485417d03
vulkanh265dec: add H.265 decoder
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6089 >
2024-02-10 17:17:24 +00:00
Víctor Manuel Jáquez Leal
50791d66e1
vulkanh264dec: don't remove graphics queue if it's the same as decoder
...
Since graphics queue is used for the context transference. So lets' keep it with
its own reference.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6089 >
2024-02-10 17:17:23 +00:00
Víctor Manuel Jáquez Leal
5d27f09740
vulkanh264dec: small cleanups
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6089 >
2024-02-10 17:17:23 +00:00
Víctor Manuel Jáquez Leal
4949c6d153
vkh264dec: GST_USE_UNSTABLE_API for plugin compilation
...
The code to include H264 decoder base class header wrongly disabled the unstable
API message. This patch fixes it by setting it as a compilation define of the
plugin.¡
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6055 >
2024-02-05 14:25:38 +01:00
Víctor Manuel Jáquez Leal
2c660ee8f5
vkupload: remove unused parameter fetching
...
It's not required to create a vulkan buffer to fetch its size since all this
handled by internally by the allocator and it was never needed, so it looks like
dead code. Let's delete it.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6028 >
2024-02-05 10:38:54 +00:00
Víctor Manuel Jáquez Leal
394aaa6a59
vulkan: early return if gst_buffer_pool_set_config() fails
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6013 >
2024-01-30 11:58:04 +00:00
Chris Spencer
865227b750
vkimagebufferpool: allow specifying initial image layout
...
The pool currently defaults to performing a layout transition to
VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL, with some special exceptions for
video usages. This may not be a legal transition depending on the usage.
Provide an API to explicitly control the initial image layout.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5881 >
2024-01-13 05:54:00 +00:00
Stéphane Cerveau
476c7efcb7
vulkan: decoder: create union for profile usage
...
As a profile can include a VkVideoDecodeUsageInfoKHR
or VkVideoEncodeUsageInfoKHR, use union to separate the both.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5701 >
2024-01-10 17:15:12 +00:00
Stéphane Cerveau
44ba107715
vkupload: unref vkimagebufferpool
...
Since the vkupload pool refacto, the pool
was not properly unrefed leading to a leak.
Fix for fd5c344fb6
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5729 >
2023-11-29 12:10:11 +00:00
Stéphane Cerveau
7ac98ce598
vkupload: browse over the input buffer mems
...
To upload/convert the GstBuffer to vkImage, need to
browse over the input mems to fill the out gst buffer vkImage.
This patch is fixing a missing plane/mem with encoders.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5651 >
2023-11-28 13:53:54 +00:00
Stéphane Cerveau
fd5c344fb6
vkupload: implement decide_allocation vmethod
...
in the case of an upstream element proposing a buffer pool,
use it to allocate the buffer image with the given parameters
set by the upstream element.
Besides the buffer pool handling is sync'd with GstBaseTransform
base class.
See the case of vulkanupload ! vulkanh264enc
Co-authored-by: Victor Jaquez <vjaquez@igalia.com>
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5651 >
2023-11-28 13:53:54 +00:00
Stéphane Cerveau
159f24c07f
vulkan: use gst_vulkan_device_select_queue
...
Use gst_vulkan_device_select_queue api to retrieve a valid queue
in vkupload, vkdownload, vkimagebufferpool, and vkvideofilter
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5656 >
2023-11-21 13:51:21 +00:00
Víctor Manuel Jáquez Leal
b83927f301
vulkanh264dec: add Vulkan H.264 decoder
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4850 >
2023-11-20 13:32:20 +00:00
Víctor Manuel Jáquez Leal
250aa8daea
vulkandownload: use GstVulkanOperation
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5079 >
2023-10-26 07:26:23 +00:00
Víctor Manuel Jáquez Leal
11c8c002a5
vulkanupload: use GstVulkanOperation
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5079 >
2023-10-26 07:26:23 +00:00
Matthew Waters
c6b867e470
vulkancolorconvert: actually support passthrough correctly
...
e.g. passthrough of YUV (or RGB) formats should not modify any buffers.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5317 >
2023-09-13 01:12:18 +00:00
Matthew Waters
b82a402bf1
vkformat: also check configured usage flags
...
This does also mean that if the primary format fails this check, we need
to try the secondary format before returning an error
Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/2957
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5288 >
2023-09-08 16:09:33 +00:00
Víctor Manuel Jáquez Leal
7c9d88d586
vkdownload: input memories may not match output memories
...
Split the iterations, one for images and another for buffers, while first
barrier on images, and later in buffers after copy.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4351 >
2023-05-19 04:26:30 +00:00
Víctor Manuel Jáquez Leal
e177080bec
vulkan: number of memories in buffer rather than number of planes
...
New vulkan formats don't match the number of planes with the number of memories
attached to the buffer. This patch changes the pattern of using planes for
traverse the memories with the number of attached memories.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4351 >
2023-05-19 04:26:29 +00:00
Víctor Manuel Jáquez Leal
7df7efdc3f
vulkan: minor meson clean ups
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4621 >
2023-05-12 18:04:52 +00:00
Víctor Manuel Jáquez Leal
ad2d1ce393
vkshaderspv: fix example
...
Use the correct element names.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4594 >
2023-05-10 20:14:07 +02:00
Víctor Manuel Jáquez Leal
f12e052e54
vulkan: use VK_QUEUE_FAMILY_IGNORED in barriers
...
Instead of using the valid queue family 0 (zero) if there aren't queue transfers
there's no need to specify a not validated queue family, but just
VK_QUEUE_FAMILY_IGNORED.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4501 >
2023-04-28 00:59:57 +00:00
Matthew Waters
ba81f3597d
vulkanoverlaycompositor: also support RGBA vulkan images
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4184 >
2023-03-23 22:18:47 +11:00
Tim-Philipp Müller
81716a1097
gst-plugins-bad: re-indent with GNU indent 2.2.12
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4182 >
2023-03-17 03:18:54 +00:00
Matthew Waters
a1bfd8668c
vulkanoverlaycompositor: don't do a potential use after free
...
Removing a meta from a buffer means one doesn't have access to it
anymore. Instead use the already reffed composition directly.
Fixes a use-after-free in the following pipeline:
... ! vulkanupload ! timeoverlay ! vulkanoverlaycompositor ! ...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4143 >
2023-03-10 16:54:46 +11:00
Thibault Saunier
6a4425e46a
meson: Call pkgconfig.generate in the loop where we declare plugins dependencies
...
Removing some copy pasted code
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2970 >
2022-09-01 21:17:35 +00:00
Matthew Waters
9df7a21ec9
vulkan: add vulkan overlay compositor element
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2470 >
2022-06-14 03:34:06 +00:00
Matthew Waters
81e601ccaa
vulkan: move element register definition to relevant element headers
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2470 >
2022-06-14 03:34:05 +00:00
Xavier Claessens
b004464ac6
Remove glib and gobject dependencies everywhere
...
They are part of gst_dep already and we have to make sure to always have
gst_dep. The order in dependencies matters, because it is also the order
in which Meson will set -I args. We want gstreamer's config.h to take
precedence over glib's private config.h when it's a subproject.
While at it, remove useless fallback args for gmodule/gio dependencies,
only gstreamer core needs it.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2031 >
2022-04-01 16:32:17 +00:00
Thibault Saunier
25819c41fb
navigation: Add support for key Modifiers in all relevant events
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2010 >
2022-03-25 15:16:03 +00:00
Vivienne Watermeier
6c2f6c3bd4
all: Use new navigation interface and API
...
Use and implement the new navigation interface in all relevant sink elements,
and use API functions everywhere instead of directy accessing the event structure.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1633 >
2022-03-23 13:14:52 +00:00
Martin Reboredo
717009f8f5
vulkanshaderspv: SPIRV based filter
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1197 >
2022-02-19 13:55:32 -03:00
Thibault Saunier
019971a3c7
Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir
2021-09-24 16:14:36 -03:00