From 1931ef54e985dc69a43a7c9ba118e14da1b8e83ad6cede736de9dc771154a83a Mon Sep 17 00:00:00 2001 From: OBS User unknown Date: Tue, 1 Oct 2024 11:44:24 +0000 Subject: [PATCH] [info=75e90aafe03b304ab0873033d2ae513d0f4e21876f83265dc34260908f90052f] OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/ffmpeg-6?expand=0&rev=50 --- ...lean-up-if-get_hw_frames_parameters-.patch | 27 +++++++++++++++++++ _scmsync.obsinfo | 4 +-- ffmpeg-6.changes | 7 +++++ ffmpeg-6.spec | 2 ++ 4 files changed, 38 insertions(+), 2 deletions(-) create mode 100644 11013-avcodec-decode-clean-up-if-get_hw_frames_parameters-.patch diff --git a/11013-avcodec-decode-clean-up-if-get_hw_frames_parameters-.patch b/11013-avcodec-decode-clean-up-if-get_hw_frames_parameters-.patch new file mode 100644 index 0000000..90be345 --- /dev/null +++ b/11013-avcodec-decode-clean-up-if-get_hw_frames_parameters-.patch @@ -0,0 +1,27 @@ +From: François Cartegnie +Date: Mon, 13 May 2024 11:37:27 +0000 +Subject: avcodec/decode: clean-up if get_hw_frames_parameters fails + +https://trac.ffmpeg.org/ticket/11013 +https://code.videolan.org/videolan/vlc/-/issues/28811 + +Fixes the following assert: + +[00007f1df83d17e0] vaapi generic error: avcodec_get_hw_frames_parameters failed: -22 +Assertion p_dst->hwaccel_threadsafe || (!dst->hwaccel && !dst->internal->hwaccel_priv_data) failed at libavcodec/pthread_frame.c:349 + +Reproduced from VLC with VAAPI, when fallbacking from hw to sw. + +--- a/libavcodec/pthread_frame.c ++++ b/libavcodec/pthread_frame.c +@@ -344,6 +344,10 @@ FF_ENABLE_DEPRECATION_WARNINGS + return err; + } + ++ // hwaccel could have failed init due to some params ++ if(!dst->hwaccel && dst->internal->hwaccel_priv_data) ++ ff_hwaccel_uninit(dst); ++ + // reset dst hwaccel state if needed + av_assert0(p_dst->hwaccel_threadsafe || + (!dst->hwaccel && !dst->internal->hwaccel_priv_data)); diff --git a/_scmsync.obsinfo b/_scmsync.obsinfo index 3d3b959..fa0431e 100644 --- a/_scmsync.obsinfo +++ b/_scmsync.obsinfo @@ -1,4 +1,4 @@ -mtime: 1727346198 -commit: 703dad69e873f79e33f2b104ed39861aecd47d62a6a2f2a1b2a346ac215f82ce +mtime: 1727699696 +commit: 75e90aafe03b304ab0873033d2ae513d0f4e21876f83265dc34260908f90052f url: https://src.opensuse.org/jengelh/ffmpeg-6 revision: master diff --git a/ffmpeg-6.changes b/ffmpeg-6.changes index 59af335..fff9dac 100644 --- a/ffmpeg-6.changes +++ b/ffmpeg-6.changes @@ -1,3 +1,10 @@ +------------------------------------------------------------------- +Mon Sep 30 12:34:56 UTC 2024 - olaf@aepfle.de + +- Fix assertion due to missing priv_data cleanup on failed VAAPI + acceleration with 11013-avcodec-decode-clean-up-if-get_hw_frames_parameters-.patch + (ffmpeg#11013, vlc#28811) + ------------------------------------------------------------------- Thu Sep 26 10:02:20 UTC 2024 - Stefan Dirsch diff --git a/ffmpeg-6.spec b/ffmpeg-6.spec index fafe70f..283c3d7 100644 --- a/ffmpeg-6.spec +++ b/ffmpeg-6.spec @@ -116,6 +116,7 @@ Patch11: 0001-avfilter-af_dialoguenhance-do-output-scaling-once.patch Patch12: 0001-avutil-hwcontext-Don-t-assume-frames_uninit-is-reent.patch Patch13: 0001-avfilter-vf_codecview-fix-heap-buffer-overflow.patch Patch14: 0001-libavcodec-arm-mlpdsp_armv5te-fix-label-format-to-wo.patch +Patch15: 11013-avcodec-decode-clean-up-if-get_hw_frames_parameters-.patch Patch90: ffmpeg-chromium.patch Patch91: ffmpeg-dlopen-openh264.patch Patch92: ffmpeg-CVE-2023-50007.patch @@ -839,6 +840,7 @@ Patch11: 0001-avfilter-af_dialoguenhance-do-output-scaling-once.patch Patch12: 0001-avutil-hwcontext-Don-t-assume-frames_uninit-is-reent.patch Patch13: 0001-avfilter-vf_codecview-fix-heap-buffer-overflow.patch Patch14: 0001-libavcodec-arm-mlpdsp_armv5te-fix-label-format-to-wo.patch +Patch15: 11013-avcodec-decode-clean-up-if-get_hw_frames_parameters-.patch Patch90: ffmpeg-chromium.patch Patch91: ffmpeg-dlopen-openh264.patch Patch92: ffmpeg-CVE-2023-50007.patch