diff options
author | vytskalt <vytskalt@protonmail.com> | 2025-08-19 17:14:15 +0300 |
---|---|---|
committer | Lynne <dev@lynne.ee> | 2025-08-19 14:34:17 +0000 |
commit | a6b5a382dd7ecdd27c5d0ebba688e1db409d18fd (patch) | |
tree | 1fdea5a7d04e8d4192f64d6b5dfdd3ac9db686e4 | |
parent | c05fc27dd33b361eb0105157ab7d3a01c2ffa782 (diff) | |
download | ffmpeg-a6b5a382dd7ecdd27c5d0ebba688e1db409d18fd.tar.gz |
hwcontext_vulkan: transfer EXCLUSIVE images to correct queue families
-rw-r--r-- | libavutil/hwcontext_vulkan.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/libavutil/hwcontext_vulkan.c b/libavutil/hwcontext_vulkan.c index e066fa8d18..2e04e63212 100644 --- a/libavutil/hwcontext_vulkan.c +++ b/libavutil/hwcontext_vulkan.c @@ -2464,7 +2464,7 @@ static int prepare_frame(AVHWFramesContext *hwfc, FFVkExecPool *ectx, VkImageMemoryBarrier2 img_bar[AV_NUM_DATA_POINTERS]; int nb_img_bar = 0; - uint32_t dst_qf = VK_QUEUE_FAMILY_IGNORED; + uint32_t dst_qf = p->nb_img_qfs > 1 ? VK_QUEUE_FAMILY_IGNORED : p->img_qfs[0]; VkImageLayout new_layout; VkAccessFlags2 new_access; VkPipelineStageFlagBits2 src_stage = VK_PIPELINE_STAGE_2_NONE; @@ -4546,7 +4546,7 @@ static int vulkan_transfer_frame(AVHWFramesContext *hwfc, VK_ACCESS_TRANSFER_READ_BIT, upload ? VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL : VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL, - VK_QUEUE_FAMILY_IGNORED); + p->nb_img_qfs > 1 ? VK_QUEUE_FAMILY_IGNORED : p->img_qfs[0]); vk->CmdPipelineBarrier2(cmd_buf, &(VkDependencyInfo) { .sType = VK_STRUCTURE_TYPE_DEPENDENCY_INFO, |