gstreamer/subprojects/gst-plugins-bad/gst-libs/gst/vulkan
Víctor Manuel Jáquez Leal 423f0d5384 vkdecoder: handle barrier internally for coincide references
This is to avoid a regression in validation layer (introduced by commit
916c4e70cd) when using vulkandownload

VUID-VkImageMemoryBarrier2-srcAccessMask-03914 ..  vkCmdPipelineBarrier2():
pDependencyInfo->pImageMemoryBarriers[1].srcAccessMask (VK_ACCESS_TRANSFER_READ_BIT)
is not supported by stage mask (VK_PIPELINE_STAGE_2_VIDEO_DECODE_BIT_KHR)

since vulkandownload set DPB memories' access mask to
VK_ACCESS_TRANSFER_READ_BIT, while they are retain by the DPB queue, so when
they are used as DPB after been shown, this validation error is raised.

Must of the barrier values are set ignoring the previous state of the vulkan
images.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7211>
2024-07-22 16:46:53 +00:00
..
android vulkan: Add/fix various annotations 2022-10-18 13:51:17 +03:00
cocoa macos: Remove old NSApp workaround related code 2023-05-11 20:30:19 +02:00
ios gl/vulkan: Fix static linking on macOS 2022-10-24 00:48:08 +00:00
wayland gst-launch: accept option to set program name 2024-01-12 17:11:11 +00:00
win32 vulkan: gl: change symbols to static 2023-03-23 00:56:04 +00:00
xcb vkwindow_xcb: Make the visible private field a guint 2023-10-23 10:43:52 +05:30
gstvkapi.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstvkbarrier.h vulkan: add a timeline semaphore per image 2023-10-26 07:26:22 +00:00
gstvkbuffermemory.c vkmemory: unref queue in barriers 2023-10-26 07:26:22 +00:00
gstvkbuffermemory.h vkbuffermemory: add gst_vulkan_buffer_memory_alloc_with_buffer_info() 2023-05-19 04:26:29 +00:00
gstvkbufferpool.c vkbufferpool: correct usage flags type 2024-04-03 09:36:44 +00:00
gstvkbufferpool.h vkbufferpool: correct usage flags type 2024-04-03 09:36:44 +00:00
gstvkcommandbuffer.c Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstvkcommandbuffer.h vulkan: add some missing GAutoPtr definitions 2022-06-14 03:34:05 +00:00
gstvkcommandpool-private.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstvkcommandpool.c vulkan: Remove unnecessary null checks 2022-11-01 15:19:51 +01:00
gstvkcommandpool.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstvkconfig.h.meson vulkan: remove GST_VULKAN_HAVE_VIDEO_ENCODERS 2024-06-05 17:50:27 +00:00
gstvkdebug-private.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstvkdebug.c vulkan: remove beta extensions guard for encode operations 2024-07-16 15:08:39 +00:00
gstvkdebug.h vulkan/swapper: add some debug logging for surface size and present modes 2021-10-21 11:32:04 +00:00
gstvkdecoder-private.c vkdecoder: handle barrier internally for coincide references 2024-07-22 16:46:53 +00:00
gstvkdecoder-private.h vulkan: replace gst_vulkan_queue_create_decoder() with gst_vulkan_decoder_new_from_queue() 2024-04-26 16:24:22 +00:00
gstvkdescriptorcache.c vulkan: Add missing array length and (out) annotation to parameters 2022-11-01 15:19:51 +01:00
gstvkdescriptorcache.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstvkdescriptorpool.c vulkan: Remove unnecessary null checks 2022-11-01 15:19:51 +01:00
gstvkdescriptorpool.h vulkan: add some missing GAutoPtr definitions 2022-06-14 03:34:05 +00:00
gstvkdescriptorset.c vulkan: Add missing array length and (out) annotation to parameters 2022-11-01 15:19:51 +01:00
gstvkdescriptorset.h vulkan: add some missing GAutoPtr definitions 2022-06-14 03:34:05 +00:00
gstvkdevice.c vulkan: remove remaining GST_VULKAN_HAVE_VIDEO_ENCODERS 2024-06-06 10:32:51 +00:00
gstvkdevice.h vkdevice: select queue with expected flags 2023-11-21 13:51:21 +00:00
gstvkdisplay.c vulkan: Add missing (nullable) annotation to Returns 2022-11-01 15:19:51 +01:00
gstvkdisplay.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstvkencoder-private.c vulkan: add source pipeline stage to _operation_add_frame_barrier() 2024-07-19 14:45:39 +02:00
gstvkencoder-private.h vkencoder: add gstvkencoder helper object 2024-05-03 19:40:16 +00:00
gstvkerror.c vkerror: free the error string after usage 2024-05-31 14:44:09 +00:00
gstvkerror.h gstvulkan: Expose gst_vulkan_result_to_string 2022-02-05 16:33:04 +00:00
gstvkfence.c vulkan: silence gobject-instrospection warnings 2023-03-22 14:19:13 +00:00
gstvkfence.h vulkan: add some missing GAutoPtr definitions 2022-06-14 03:34:05 +00:00
gstvkformat.c vulkan: remove beta extensions guard for encode operations 2024-07-16 15:08:39 +00:00
gstvkformat.h vkformat: add gst_vulkan_format_get_map function 2024-07-11 20:28:04 +02:00
gstvkfullscreenquad.c vulkan/fullscreenquad: add check for unset video info 2024-06-07 01:44:32 +00:00
gstvkfullscreenquad.h vulkan/fullscreenquad: add get_queue() 2024-06-03 00:06:18 +10:00
gstvkhandle.c Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstvkhandle.h vkdecoder: add gstvkdecoder helper object 2023-11-20 13:32:20 +00:00
gstvkhandlepool.c Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstvkhandlepool.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstvkimagebufferpool.c vkimagebufferpool: reset buffer's access flags 2024-07-19 14:45:39 +02:00
gstvkimagebufferpool.h vkencoder: add gstvkencoder helper object 2024-05-03 19:40:16 +00:00
gstvkimagememory.c vkimagebufferpool: allow specifying initial image layout 2024-01-13 05:54:00 +00:00
gstvkimagememory.h vkimagebufferpool: allow specifying initial image layout 2024-01-13 05:54:00 +00:00
gstvkimageview.c vulkan: Mark gst_vulkan_image_view_new create_info as constant pointer 2022-11-01 15:19:51 +01:00
gstvkimageview.h vulkan: Mark gst_vulkan_image_view_new create_info as constant pointer 2022-11-01 15:19:51 +01:00
gstvkinstance.c vulkan: Use new GLib APIs as suggested by comments 2023-04-06 00:26:13 +00:00
gstvkinstance.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstvkmemory.c vkmemory: invalidate non-coherent memory when mapping for read 2024-03-11 01:55:44 +00:00
gstvkmemory.h vkmemory: don't map memory more than once 2024-01-16 17:44:48 +01:00
gstvkoperation.c vkoperation: fix documentation 2024-07-22 10:49:33 +02:00
gstvkoperation.h vulkan: add source pipeline stage to _operation_add_frame_barrier() 2024-07-19 14:45:39 +02:00
gstvkphysicaldevice-private.h vkphysicaldevice: add gst_vulkan_physical_device_get_features() 2023-05-19 04:26:28 +00:00
gstvkphysicaldevice.c vkphysicaldevice: rename query to query_result_status 2024-06-18 12:13:41 +00:00
gstvkphysicaldevice.h vkphysicaldevice: rename query to query_result_status 2024-06-18 12:13:41 +00:00
gstvkqueue.c vkqueue: remove useless decoder include 2024-06-05 17:50:26 +00:00
gstvkqueue.h vulkan: replace gst_vulkan_queue_create_decoder() with gst_vulkan_decoder_new_from_queue() 2024-04-26 16:24:22 +00:00
gstvkswapper.c vulkan/swapper: expose choose_queue() in docs 2024-06-12 23:37:58 +10:00
gstvkswapper.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstvktrash.c vulkan: sink references at instantiation 2024-04-03 08:48:25 +00:00
gstvktrash.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstvkutils.c vkutils: do not forget to clear context in case of error 2024-05-31 14:44:09 +00:00
gstvkutils.h vkdevice: select queue with expected flags 2023-11-21 13:51:21 +00:00
gstvkvideo-private.c vulkan: remove GST_VULKAN_HAVE_VIDEO_ENCODERS 2024-06-05 17:50:27 +00:00
gstvkvideo-private.h vulkan: remove GST_VULKAN_HAVE_VIDEO_ENCODERS 2024-06-05 17:50:27 +00:00
gstvkvideofilter.c vulkan/videofilter: add getters for queue/device/instance 2024-06-03 00:06:18 +10:00
gstvkvideofilter.h vulkan/videofilter: add getters for queue/device/instance 2024-06-03 00:06:18 +10:00
gstvkvideoutils.c vulkan: remove GST_VULKAN_HAVE_VIDEO_ENCODERS 2024-06-05 17:50:27 +00:00
gstvkvideoutils.h vulkan: remove GST_VULKAN_HAVE_VIDEO_ENCODERS 2024-06-05 17:50:27 +00:00
gstvkwindow.c vulkan: Add missing array length and (out) annotation to parameters 2022-11-01 15:19:51 +01:00
gstvkwindow.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
meson.build meson: Find MoltenVK with the objc++ compiler everywhere 2024-07-07 13:20:12 +00:00
vulkan-prelude.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
vulkan.h vkoperation: synchronization helper object 2023-10-26 07:26:22 +00:00
vulkan_fwd.h vkencoder: add gstvkencoder helper object 2024-05-03 19:40:16 +00:00
vulkan_mkenum.py Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00