[FFmpeg-cvslog] vulkan: maintain compatibility with old headers
Lynne
git at videolan.org
Tue Jun 17 07:26:54 EEST 2025
ffmpeg | branch: master | Lynne <dev at lynne.ee> | Tue Jun 17 13:18:23 2025 +0900| [e5bb448543a60591b10a7070ec17d4799f621c9d] | committer: Lynne
vulkan: maintain compatibility with old headers
Previous patch to fix these issues was incomplete.
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=e5bb448543a60591b10a7070ec17d4799f621c9d
---
libavutil/hwcontext_vulkan.c | 26 +++++++++++++-------------
libavutil/vulkan.c | 2 +-
2 files changed, 14 insertions(+), 14 deletions(-)
diff --git a/libavutil/hwcontext_vulkan.c b/libavutil/hwcontext_vulkan.c
index 64c17280b7..edff89af26 100644
--- a/libavutil/hwcontext_vulkan.c
+++ b/libavutil/hwcontext_vulkan.c
@@ -4170,7 +4170,7 @@ static int vulkan_transfer_host(AVHWFramesContext *hwfc, AVFrame *hwf,
const int nb_images = ff_vk_count_images(hwf_vk);
VkSemaphoreWaitInfo sem_wait;
- VkHostImageLayoutTransitionInfo layout_ch_info[AV_NUM_DATA_POINTERS];
+ VkHostImageLayoutTransitionInfoEXT layout_ch_info[AV_NUM_DATA_POINTERS];
int nb_layout_ch = 0;
hwfc_vk->lock_frame(hwfc, hwf_vk);
@@ -4186,8 +4186,8 @@ static int vulkan_transfer_host(AVHWFramesContext *hwfc, AVFrame *hwf,
if (compat)
continue;
- layout_ch_info[nb_layout_ch] = (VkHostImageLayoutTransitionInfo) {
- .sType = VK_STRUCTURE_TYPE_HOST_IMAGE_LAYOUT_TRANSITION_INFO,
+ layout_ch_info[nb_layout_ch] = (VkHostImageLayoutTransitionInfoEXT) {
+ .sType = VK_STRUCTURE_TYPE_HOST_IMAGE_LAYOUT_TRANSITION_INFO_EXT,
.image = hwf_vk->img[i],
.oldLayout = hwf_vk->layout[i],
.newLayout = VK_IMAGE_LAYOUT_GENERAL,
@@ -4216,15 +4216,15 @@ static int vulkan_transfer_host(AVHWFramesContext *hwfc, AVFrame *hwf,
nb_layout_ch, layout_ch_info);
if (upload) {
- VkMemoryToImageCopy region_info = {
- .sType = VK_STRUCTURE_TYPE_MEMORY_TO_IMAGE_COPY,
+ VkMemoryToImageCopyEXT region_info = {
+ .sType = VK_STRUCTURE_TYPE_MEMORY_TO_IMAGE_COPY_EXT,
.imageSubresource = {
.layerCount = 1,
},
};
- VkCopyMemoryToImageInfo copy_info = {
- .sType = VK_STRUCTURE_TYPE_COPY_MEMORY_TO_IMAGE_INFO,
- .flags = VK_HOST_IMAGE_COPY_MEMCPY,
+ VkCopyMemoryToImageInfoEXT copy_info = {
+ .sType = VK_STRUCTURE_TYPE_COPY_MEMORY_TO_IMAGE_INFO_EXT,
+ .flags = VK_HOST_IMAGE_COPY_MEMCPY_EXT,
.regionCount = 1,
.pRegions = ®ion_info,
};
@@ -4242,15 +4242,15 @@ static int vulkan_transfer_host(AVHWFramesContext *hwfc, AVFrame *hwf,
vk->CopyMemoryToImageEXT(hwctx->act_dev, ©_info);
}
} else {
- VkImageToMemoryCopy region_info = {
- .sType = VK_STRUCTURE_TYPE_MEMORY_TO_IMAGE_COPY,
+ VkImageToMemoryCopyEXT region_info = {
+ .sType = VK_STRUCTURE_TYPE_MEMORY_TO_IMAGE_COPY_EXT,
.imageSubresource = {
.layerCount = 1,
},
};
- VkCopyImageToMemoryInfo copy_info = {
- .sType = VK_STRUCTURE_TYPE_COPY_IMAGE_TO_MEMORY_INFO,
- .flags = VK_HOST_IMAGE_COPY_MEMCPY,
+ VkCopyImageToMemoryInfoEXT copy_info = {
+ .sType = VK_STRUCTURE_TYPE_COPY_IMAGE_TO_MEMORY_INFO_EXT,
+ .flags = VK_HOST_IMAGE_COPY_MEMCPY_EXT,
.regionCount = 1,
.pRegions = ®ion_info,
};
diff --git a/libavutil/vulkan.c b/libavutil/vulkan.c
index d0504064ed..f36f2bb7cf 100644
--- a/libavutil/vulkan.c
+++ b/libavutil/vulkan.c
@@ -165,7 +165,7 @@ int ff_vk_load_props(FFVulkanContext *s)
FF_VK_STRUCT_EXT(s, &s->props, &s->optical_flow_props, FF_VK_EXT_OPTICAL_FLOW,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPTICAL_FLOW_PROPERTIES_NV);
FF_VK_STRUCT_EXT(s, &s->props, &s->host_image_props, FF_VK_EXT_HOST_IMAGE_COPY,
- VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_IMAGE_COPY_PROPERTIES);
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_IMAGE_COPY_PROPERTIES_EXT);
s->feats = (VkPhysicalDeviceFeatures2) {
.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2,
More information about the ffmpeg-cvslog
mailing list