From ace249acc5e2576dae42725d10c0351029de1c40 Mon Sep 17 00:00:00 2001 From: Niklas Haas Date: Tue, 30 Jun 2020 20:40:42 +0200 Subject: vo_gpu: vulkan: add ability to disable events libplacebo exposes this feature already, because this particular type of bug is unusually common in practice. Simply make use of it, by exposing it as an option. Could probably also bump the libplacebo minimum version to get rid of the #if, but that would break debian oldoldstable or something. Fixes #7867. --- video/out/vulkan/context.c | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'video/out/vulkan/context.c') diff --git a/video/out/vulkan/context.c b/video/out/vulkan/context.c index 000afe211e..4d94c6fb77 100644 --- a/video/out/vulkan/context.c +++ b/video/out/vulkan/context.c @@ -27,6 +27,7 @@ struct vulkan_opts { int queue_count; int async_transfer; int async_compute; + int disable_events; }; static int vk_validate_dev(struct mp_log *log, const struct m_option *opt, @@ -97,6 +98,7 @@ const struct m_sub_options vulkan_conf = { {"vulkan-queue-count", OPT_INT(queue_count), M_RANGE(1, 8)}, {"vulkan-async-transfer", OPT_FLAG(async_transfer)}, {"vulkan-async-compute", OPT_FLAG(async_compute)}, + {"vulkan-disable-events", OPT_FLAG(disable_events)}, {0} }, .size = sizeof(struct vulkan_opts), @@ -169,6 +171,9 @@ bool ra_vk_ctx_init(struct ra_ctx *ctx, struct mpvk_ctx *vk, .async_compute = p->opts->async_compute, .queue_count = p->opts->queue_count, .device_name = p->opts->device, +#if PL_API_VER >= 24 + .disable_events = p->opts->disable_events, +#endif }); if (!vk->vulkan) goto error; -- cgit v1.2.3