[FFmpeg-cvslog] hwcontext_vulkan: enable read/write without storage
Lynne
git at videolan.org
Thu Feb 27 20:09:10 EET 2025
ffmpeg | branch: master | Lynne <dev at lynne.ee> | Sat Feb 22 19:55:34 2025 +0000| [85d81dcfd6f9548ce89a9cdcc5e3e7547a1b2736] | committer: Lynne
hwcontext_vulkan: enable read/write without storage
BGR formats in Vulkan cannot be used in storage images, as the
pixel labels on storage images are always ordered as RGB, and
swizzling is not an option due to old hardware limitations.
This means that you must always use an RGB format and manually
swizzle when reading or writing to BGR images, or simply not use
a format in the shader itself.
This adds support for the latter.
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=85d81dcfd6f9548ce89a9cdcc5e3e7547a1b2736
---
libavutil/hwcontext_vulkan.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/libavutil/hwcontext_vulkan.c b/libavutil/hwcontext_vulkan.c
index ec6459712b..11d9e987b0 100644
--- a/libavutil/hwcontext_vulkan.c
+++ b/libavutil/hwcontext_vulkan.c
@@ -244,6 +244,8 @@ static void device_features_copy_needed(VulkanDeviceFeatures *dst, VulkanDeviceF
COPY_VAL(device.features.shaderInt64);
COPY_VAL(device.features.shaderInt16);
COPY_VAL(device.features.shaderFloat64);
+ COPY_VAL(device.features.shaderStorageImageReadWithoutFormat);
+ COPY_VAL(device.features.shaderStorageImageWriteWithoutFormat);
COPY_VAL(vulkan_1_1.samplerYcbcrConversion);
COPY_VAL(vulkan_1_1.storagePushConstant16);
More information about the ffmpeg-cvslog
mailing list