diff options
author | Lynne <[email protected]> | 2025-08-09 15:05:55 +0900 |
---|---|---|
committer | Lynne <[email protected]> | 2025-08-09 15:07:56 +0900 |
commit | a9fb323e8866255ef537409a3082532025c7a4ff (patch) | |
tree | 9e3cfa3230272a07c7abb95d05fb70a423bd2396 | |
parent | 5621eee672391680f432075865e7580189ad0097 (diff) |
vulkan: temporarily disable threading for ASIC-based hwaccels
The issue is that a race condition exists between threads locking
frames, which results in cyclic loops and deadlocks.
Compute-based implementations are not affected.
Fixes #20169
-rw-r--r-- | libavcodec/vulkan_av1.c | 2 | ||||
-rw-r--r-- | libavcodec/vulkan_h264.c | 2 | ||||
-rw-r--r-- | libavcodec/vulkan_hevc.c | 2 | ||||
-rw-r--r-- | libavcodec/vulkan_vp9.c | 2 |
4 files changed, 4 insertions, 4 deletions
diff --git a/libavcodec/vulkan_av1.c b/libavcodec/vulkan_av1.c index afbd2347de..788e3cca78 100644 --- a/libavcodec/vulkan_av1.c +++ b/libavcodec/vulkan_av1.c @@ -666,5 +666,5 @@ const FFHWAccel ff_av1_vulkan_hwaccel = { .uninit = &ff_vk_decode_uninit, .frame_params = &ff_vk_frame_params, .priv_data_size = sizeof(FFVulkanDecodeContext), - .caps_internal = HWACCEL_CAP_ASYNC_SAFE | HWACCEL_CAP_THREAD_SAFE, + .caps_internal = HWACCEL_CAP_ASYNC_SAFE, }; diff --git a/libavcodec/vulkan_h264.c b/libavcodec/vulkan_h264.c index 09f394dacf..ebe305e7b5 100644 --- a/libavcodec/vulkan_h264.c +++ b/libavcodec/vulkan_h264.c @@ -588,5 +588,5 @@ const FFHWAccel ff_h264_vulkan_hwaccel = { .uninit = &ff_vk_decode_uninit, .frame_params = &ff_vk_frame_params, .priv_data_size = sizeof(FFVulkanDecodeContext), - .caps_internal = HWACCEL_CAP_ASYNC_SAFE | HWACCEL_CAP_THREAD_SAFE, + .caps_internal = HWACCEL_CAP_ASYNC_SAFE, }; diff --git a/libavcodec/vulkan_hevc.c b/libavcodec/vulkan_hevc.c index 78ad833308..5e15c6b931 100644 --- a/libavcodec/vulkan_hevc.c +++ b/libavcodec/vulkan_hevc.c @@ -953,5 +953,5 @@ const FFHWAccel ff_hevc_vulkan_hwaccel = { .uninit = &ff_vk_decode_uninit, .frame_params = &ff_vk_frame_params, .priv_data_size = sizeof(FFVulkanDecodeContext), - .caps_internal = HWACCEL_CAP_ASYNC_SAFE | HWACCEL_CAP_THREAD_SAFE, + .caps_internal = HWACCEL_CAP_ASYNC_SAFE, }; diff --git a/libavcodec/vulkan_vp9.c b/libavcodec/vulkan_vp9.c index ddb4eccc3c..f8ce73dc90 100644 --- a/libavcodec/vulkan_vp9.c +++ b/libavcodec/vulkan_vp9.c @@ -366,5 +366,5 @@ const FFHWAccel ff_vp9_vulkan_hwaccel = { .uninit = &ff_vk_decode_uninit, .frame_params = &ff_vk_frame_params, .priv_data_size = sizeof(FFVulkanDecodeContext), - .caps_internal = HWACCEL_CAP_ASYNC_SAFE | HWACCEL_CAP_THREAD_SAFE, + .caps_internal = HWACCEL_CAP_ASYNC_SAFE, }; |