diff options
author | Daniel Bermond | 2024-05-01 13:27:45 -0300 |
---|---|---|
committer | Daniel Bermond | 2024-05-01 13:27:45 -0300 |
commit | 96716c2fffb1b5ef9376f5e016c286841ba5063e (patch) | |
tree | 0963a43c231a4a33179340603ad8ac8702433c6f | |
parent | 055dd84ee1436d3591fadd4c3911037c66736d44 (diff) | |
download | aur-96716c2fffb1b5ef9376f5e016c286841ba5063e.tar.gz |
Fix nvidia vulkan decoding segmentation fault
Original patch for fixing nvidia vulkan decoding:
https://github.com/streetpea/chiaki4deck/issues/239#issuecomment-1929365254
References
----------
[1] https://trac.ffmpeg.org/ticket/10847
[2] https://trac.ffmpeg.org/ticket/10970
-rw-r--r-- | .SRCINFO | 6 | ||||
-rw-r--r-- | 050-ffmpeg-fix-segfault-with-avisynthplus.patch (renamed from 060-ffmpeg-fix-segfault-with-avisynthplus.patch) | 0 | ||||
-rw-r--r-- | 060-ffmpeg-fix-nvidia-vulkan-decoding-segfault.patch | 12 | ||||
-rw-r--r-- | PKGBUILD | 9 |
4 files changed, 22 insertions, 5 deletions
@@ -1,6 +1,6 @@ pkgbase = ffmpeg-full-git pkgdesc = Complete solution to record, convert and stream audio and video (all possible features including libfdk-aac; git version) - pkgver = 6.2.r114669.g240fd04db2 + pkgver = 7.1.r115041.ge757726e89 pkgrel = 1 url = https://www.ffmpeg.org/ arch = x86_64 @@ -150,7 +150,8 @@ pkgbase = ffmpeg-full-git source = 020-ffmpeg-add-svt-hevc-docs-ged80959.patch::https://raw.githubusercontent.com/OpenVisualCloud/SVT-HEVC/ed80959ebb5586aa7763c91a397d44be1798587c/ffmpeg_plugin/0002-doc-Add-libsvt_hevc-encoder-docs.patch source = 030-ffmpeg-add-svt-vp9-g3b9a3fa.patch::https://raw.githubusercontent.com/OpenVisualCloud/SVT-VP9/3b9a3fa43da4cc5fe60c7d22afe2be15341392ea/ffmpeg_plugin/master-0001-Add-ability-for-ffmpeg-to-run-svt-vp9.patch source = 040-ffmpeg-add-av_stream_get_first_dts-for-chromium.patch - source = 060-ffmpeg-fix-segfault-with-avisynthplus.patch + source = 050-ffmpeg-fix-segfault-with-avisynthplus.patch + source = 060-ffmpeg-fix-nvidia-vulkan-decoding-segfault.patch source = LICENSE sha256sums = SKIP sha256sums = 9047e18d34716812d4ea7eafc1d0fd8b376d922a4b6b4dc20237662fcaf0c996 @@ -158,6 +159,7 @@ pkgbase = ffmpeg-full-git sha256sums = 59da61f2b2c556fbe0cdbf84bcc00977ee3d2447085decb21f6298226559f2aa sha256sums = b54b47f4f3837ddc41227bd2202ea3c62e2ddb06c6cfbd7a9adc304d641d79ba sha256sums = 0e277c0d5e33612ca7a11025958133b17bfbe23168b0aee5bd07f674f6fd7440 + sha256sums = f2f73793a45c9dffb033f23c1b10a612abe6528cbd06c04b06e8189d1ef208be sha256sums = 04a7176400907fd7db0d69116b99de49e582a6e176b3bfb36a03e50a4cb26a36 pkgname = ffmpeg-full-git diff --git a/060-ffmpeg-fix-segfault-with-avisynthplus.patch b/050-ffmpeg-fix-segfault-with-avisynthplus.patch index 9e2ddb399c9e..9e2ddb399c9e 100644 --- a/060-ffmpeg-fix-segfault-with-avisynthplus.patch +++ b/050-ffmpeg-fix-segfault-with-avisynthplus.patch diff --git a/060-ffmpeg-fix-nvidia-vulkan-decoding-segfault.patch b/060-ffmpeg-fix-nvidia-vulkan-decoding-segfault.patch new file mode 100644 index 000000000000..7caf065eb55a --- /dev/null +++ b/060-ffmpeg-fix-nvidia-vulkan-decoding-segfault.patch @@ -0,0 +1,12 @@ +--- a/libavutil/vulkan.c ++++ b/libavutil/vulkan.c +@@ -607,6 +607,9 @@ int ff_vk_exec_add_dep_frame(FFVulkanContext *s, FFVkExecContext *e, AVFrame *f, + uint32_t *queue_family_dst; + VkAccessFlagBits *access_dst; + ++ if (!f || !f->hw_frames_ctx) ++ return 1; ++ + AVHWFramesContext *hwfc = (AVHWFramesContext *)f->hw_frames_ctx->data; + AVVulkanFramesContext *vkfc = hwfc->hwctx; + AVVkFrame *vkf = (AVVkFrame *)f->data[0]; @@ -1,7 +1,7 @@ # Maintainer: Daniel Bermond <dbermond@archlinux.org> pkgname=ffmpeg-full-git -pkgver=6.2.r114669.g240fd04db2 +pkgver=7.1.r115041.ge757726e89 pkgrel=1 _svt_hevc_ver='ed80959ebb5586aa7763c91a397d44be1798587c' _svt_vp9_ver='3b9a3fa43da4cc5fe60c7d22afe2be15341392ea' @@ -144,7 +144,8 @@ source=('git+https://git.ffmpeg.org/ffmpeg.git' "020-ffmpeg-add-svt-hevc-docs-g${_svt_hevc_ver:0:7}.patch"::"https://raw.githubusercontent.com/OpenVisualCloud/SVT-HEVC/${_svt_hevc_ver}/ffmpeg_plugin/0002-doc-Add-libsvt_hevc-encoder-docs.patch" "030-ffmpeg-add-svt-vp9-g${_svt_vp9_ver:0:7}.patch"::"https://raw.githubusercontent.com/OpenVisualCloud/SVT-VP9/${_svt_vp9_ver}/ffmpeg_plugin/master-0001-Add-ability-for-ffmpeg-to-run-svt-vp9.patch" '040-ffmpeg-add-av_stream_get_first_dts-for-chromium.patch' - '060-ffmpeg-fix-segfault-with-avisynthplus.patch' + '050-ffmpeg-fix-segfault-with-avisynthplus.patch' + '060-ffmpeg-fix-nvidia-vulkan-decoding-segfault.patch' 'LICENSE') sha256sums=('SKIP' '9047e18d34716812d4ea7eafc1d0fd8b376d922a4b6b4dc20237662fcaf0c996' @@ -152,6 +153,7 @@ sha256sums=('SKIP' '59da61f2b2c556fbe0cdbf84bcc00977ee3d2447085decb21f6298226559f2aa' 'b54b47f4f3837ddc41227bd2202ea3c62e2ddb06c6cfbd7a9adc304d641d79ba' '0e277c0d5e33612ca7a11025958133b17bfbe23168b0aee5bd07f674f6fd7440' + 'f2f73793a45c9dffb033f23c1b10a612abe6528cbd06c04b06e8189d1ef208be' '04a7176400907fd7db0d69116b99de49e582a6e176b3bfb36a03e50a4cb26a36') prepare() { @@ -166,7 +168,8 @@ prepare() { patch -d ffmpeg -Np1 -i "${srcdir}/020-ffmpeg-add-svt-hevc-docs-g${_svt_hevc_ver:0:7}.patch" patch -d ffmpeg -Np1 -i "${srcdir}/030-ffmpeg-add-svt-vp9-g${_svt_vp9_ver:0:7}.patch" patch -d ffmpeg -Np1 -i "${srcdir}/040-ffmpeg-add-av_stream_get_first_dts-for-chromium.patch" - patch -d ffmpeg -Np1 -i "${srcdir}/060-ffmpeg-fix-segfault-with-avisynthplus.patch" + patch -d ffmpeg -Np1 -i "${srcdir}/050-ffmpeg-fix-segfault-with-avisynthplus.patch" + patch -d ffmpeg -Np1 -i "${srcdir}/060-ffmpeg-fix-nvidia-vulkan-decoding-segfault.patch" } pkgver() { |