[FFmpeg-devel] [PATCH 1/2] avutil/hwcontext_vulkan: add get_proc_addr option

Zhao Zhili quinkblack at foxmail.com
Fri Nov 3 09:09:30 EET 2023


Hi Lynne,

> On Nov 2, 2023, at 09:50, Zhao Zhili <quinkblack at foxmail.com> wrote:
> 
> 
>> 在 2023年11月2日,上午2:12,Anton Khirnov <anton at khirnov.net> 写道:
>> 
>> Quoting Zhao Zhili (2023-11-01 17:56:46)
>>> From: Zhao Zhili <zhilizhao at tencent.com>
>>> 
>>> It allows to pass SDL_Vulkan_GetVkGetInstanceProcAddr to hwcontext.
>>> ---
>>> libavutil/hwcontext_vulkan.c | 14 ++++++++++++++
>>> 1 file changed, 14 insertions(+)
>>> 
>>> diff --git a/libavutil/hwcontext_vulkan.c b/libavutil/hwcontext_vulkan.c
>>> index 8481427b42..155fe37a33 100644
>>> --- a/libavutil/hwcontext_vulkan.c
>>> +++ b/libavutil/hwcontext_vulkan.c
>>> @@ -747,7 +747,21 @@ static int create_instance(AVHWDeviceContext *ctx, AVDictionary *opts)
>>>        .sType            = VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO,
>>>        .pApplicationInfo = &application_info,
>>>    };
>>> +    AVDictionaryEntry *opt_d;
>>> +
>>> +    opt_d = av_dict_get(opts, "get_proc_addr", NULL, 0);
>>> +    if (opt_d) {
>>> +        char *end = NULL;
>>> +        uintptr_t addr = strtoull(opt_d->value, &end, 16);
>> 
>> This is madness.
> 
> Yes it is. Any better idea?
> 
> I can try to pass vulkan lib path, but it might impossible to get it in a portable way.

What do you think on this case? How to pass get_proc_addr to create_instance from
external? We can add an option to set lib path, but it’s not that flexible.

> 
>> 
>> --
>> Anton Khirnov
>> _______________________________________________
>> ffmpeg-devel mailing list
>> ffmpeg-devel at ffmpeg.org
>> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>> 
>> To unsubscribe, visit link above, or email
> 



More information about the ffmpeg-devel mailing list