vulkan_decode: do not reset the decoder when flushing

The issue is that .flush gets called asynchronously, and modifies the
video session state while its being used for decoding. This did not
result in issues since all known vendors do not keep important state
there, but its not compliant with the specs.

Its not necessary to flush the decoder at all when seeking,
so simply don't.

Fixes #20487
This commit is contained in:
Lynne
2025-12-13 02:40:43 +01:00
parent 1e2d86201f
commit 018ba6b612
8 changed files with 0 additions and 8 deletions
-1
View File
@@ -662,7 +662,6 @@ const FFHWAccel ff_av1_vulkan_hwaccel = {
.init = &ff_vk_decode_init,
.update_thread_context = &ff_vk_update_thread_context,
.decode_params = &ff_vk_params_invalidate,
.flush = &ff_vk_decode_flush,
.uninit = &ff_vk_decode_uninit,
.frame_params = &ff_vk_frame_params,
.priv_data_size = sizeof(FFVulkanDecodeContext),
-1
View File
@@ -466,7 +466,6 @@ const FFHWAccel ff_dpx_vulkan_hwaccel = {
.init = &vk_decode_dpx_init,
.update_thread_context = &ff_vk_update_thread_context,
.decode_params = &ff_vk_params_invalidate,
.flush = &ff_vk_decode_flush,
.uninit = &ff_vk_decode_uninit,
.frame_params = &ff_vk_frame_params,
.priv_data_size = sizeof(FFVulkanDecodeContext),
-1
View File
@@ -1147,7 +1147,6 @@ const FFHWAccel ff_ffv1_vulkan_hwaccel = {
.init = &vk_decode_ffv1_init,
.update_thread_context = &ff_vk_update_thread_context,
.decode_params = &ff_vk_params_invalidate,
.flush = &ff_vk_decode_flush,
.uninit = &ff_vk_decode_uninit,
.frame_params = &ff_vk_frame_params,
.priv_data_size = sizeof(FFVulkanDecodeContext),
-1
View File
@@ -584,7 +584,6 @@ const FFHWAccel ff_h264_vulkan_hwaccel = {
.init = &ff_vk_decode_init,
.update_thread_context = &ff_vk_update_thread_context,
.decode_params = &ff_vk_params_invalidate,
.flush = &ff_vk_decode_flush,
.uninit = &ff_vk_decode_uninit,
.frame_params = &ff_vk_frame_params,
.priv_data_size = sizeof(FFVulkanDecodeContext),
-1
View File
@@ -949,7 +949,6 @@ const FFHWAccel ff_hevc_vulkan_hwaccel = {
.init = &ff_vk_decode_init,
.update_thread_context = &ff_vk_update_thread_context,
.decode_params = &ff_vk_params_invalidate,
.flush = &ff_vk_decode_flush,
.uninit = &ff_vk_decode_uninit,
.frame_params = &ff_vk_frame_params,
.priv_data_size = sizeof(FFVulkanDecodeContext),
-1
View File
@@ -567,7 +567,6 @@ const FFHWAccel ff_prores_vulkan_hwaccel = {
.init = &vk_decode_prores_init,
.update_thread_context = &ff_vk_update_thread_context,
.decode_params = &ff_vk_params_invalidate,
.flush = &ff_vk_decode_flush,
.uninit = &ff_vk_decode_uninit,
.frame_params = &ff_vk_frame_params,
.priv_data_size = sizeof(FFVulkanDecodeContext),
-1
View File
@@ -474,7 +474,6 @@ const FFHWAccel ff_prores_raw_vulkan_hwaccel = {
.init = &vk_decode_prores_raw_init,
.update_thread_context = &ff_vk_update_thread_context,
.decode_params = &ff_vk_params_invalidate,
.flush = &ff_vk_decode_flush,
.uninit = &ff_vk_decode_uninit,
.frame_params = &ff_vk_frame_params,
.priv_data_size = sizeof(FFVulkanDecodeContext),
-1
View File
@@ -365,7 +365,6 @@ const FFHWAccel ff_vp9_vulkan_hwaccel = {
.frame_priv_data_size = sizeof(VP9VulkanDecodePicture),
.init = &ff_vk_decode_init,
.update_thread_context = &ff_vk_update_thread_context,
.flush = &ff_vk_decode_flush,
.uninit = &ff_vk_decode_uninit,
.frame_params = &ff_vk_frame_params,
.priv_data_size = sizeof(FFVulkanDecodeContext),