On 7 Nov 2023, at 12:42, Lynne wrote:
> Nov 7, 2023, 12:25 by quinkbl...@foxmail.com: > >> Ping. >> >>> 在 2023年10月30日,下午4:17,Zhao Zhili <quinkbl...@foxmail.com> 写道: >>> >>> From: Zhao Zhili <zhiliz...@tencent.com> >>> >>> VK_KHR_PORTABILITY_ENUMERATION_EXTENSION_NAME is required on macOS, >>> and VK_INSTANCE_CREATE_ENUMERATE_PORTABILITY_BIT_KHR flag should >>> be set. >>> --- >>> libavutil/hwcontext_vulkan.c | 9 ++++++++- >>> 1 file changed, 8 insertions(+), 1 deletion(-) >>> >>> diff --git a/libavutil/hwcontext_vulkan.c b/libavutil/hwcontext_vulkan.c >>> index 8481427b42..9fbf61ee70 100644 >>> --- a/libavutil/hwcontext_vulkan.c >>> +++ b/libavutil/hwcontext_vulkan.c >>> @@ -405,7 +405,6 @@ typedef struct VulkanOptExtension { >>> } VulkanOptExtension; >>> >>> static const VulkanOptExtension optional_instance_exts[] = { >>> - /* Pointless, here avoid zero-sized structs */ >>> { VK_KHR_PORTABILITY_ENUMERATION_EXTENSION_NAME, >>> FF_VK_EXT_NO_FLAG }, >>> }; >>> >>> @@ -784,6 +783,14 @@ static int create_instance(AVHWDeviceContext *ctx, >>> AVDictionary *opts) >>> inst_props.pNext = &validation_features; >>> } >>> >>> + for (int i = 0; i < inst_props.enabledExtensionCount; i++) { >>> + if (!strcmp(VK_KHR_PORTABILITY_ENUMERATION_EXTENSION_NAME, >>> + inst_props.ppEnabledExtensionNames[i])) { >>> + inst_props.flags |= >>> VK_INSTANCE_CREATE_ENUMERATE_PORTABILITY_BIT_KHR; >>> + break; >>> + } >>> + } >>> + >>> /* Try to create the instance */ >>> ret = vk->CreateInstance(&inst_props, hwctx->alloc, &hwctx->inst); >>> > > Pong. It is a bit incorrect - from memory, > VK_INSTANCE_CREATE_ENUMERATE_PORTABILITY_BIT_KHR requires that > only Vulkan 1.1 features are enabled, while we require 1.3. > But if it works, sure. Could you ifdef it out everywhere outside of OSX? I wonder, how is this working given that MoltenVK does not provide Vulkan 1.3 but only 1.2? > _______________________________________________ > ffmpeg-devel mailing list > ffmpeg-devel@ffmpeg.org > https://ffmpeg.org/mailman/listinfo/ffmpeg-devel > > To unsubscribe, visit link above, or email > ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe". _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".