Use external sources for decklink sdk. Update dependencies.

ffmpeg currently have no support for decklink sdk 14.3 and later.
It currently fails to build with it, building only with version
14.2 and bellow.

Using external sources to a lower version. This will avoid making
a dedicated package for decklink 14.2 during the time that ffmpeg
remains without support for 14.3 and later.
This commit is contained in:
Daniel Bermond
2025-09-04 18:06:50 -03:00
parent d377a44ed3
commit 256ff1c89e
2 changed files with 36 additions and 30 deletions
+10 -9
View File
@@ -1,18 +1,21 @@
pkgbase = ffmpeg-full pkgbase = ffmpeg-full
pkgdesc = Complete solution to record, convert and stream audio and video (all possible features including libfdk-aac) pkgdesc = Complete solution to record, convert and stream audio and video (all possible features including libfdk-aac)
pkgver = 7.1.1 pkgver = 7.1.1
pkgrel = 4 pkgrel = 5
url = https://www.ffmpeg.org/ url = https://www.ffmpeg.org/
arch = x86_64 arch = x86_64
license = LicenseRef-nonfree-and-unredistributable license = LicenseRef-nonfree-and-unredistributable
makedepends = patchutils
makedepends = clang
makedepends = nasm
makedepends = amf-headers makedepends = amf-headers
makedepends = clang
makedepends = ffnvcodec-headers makedepends = ffnvcodec-headers
makedepends = gmp
makedepends = libgl
makedepends = libomxil-bellagio
makedepends = lv2
makedepends = nasm
makedepends = patchutils
makedepends = opencl-headers makedepends = opencl-headers
makedepends = vulkan-headers makedepends = vulkan-headers
makedepends = decklink-sdk
depends = alsa-lib depends = alsa-lib
depends = aom depends = aom
depends = aribb24 depends = aribb24
@@ -30,7 +33,6 @@ pkgbase = ffmpeg-full
depends = fribidi depends = fribidi
depends = glib2 depends = glib2
depends = glslang depends = glslang
depends = gmp
depends = gnutls depends = gnutls
depends = gsm depends = gsm
depends = harfbuzz depends = harfbuzz
@@ -53,7 +55,6 @@ pkgbase = ffmpeg-full
depends = libdvdread depends = libdvdread
depends = libfdk-aac depends = libfdk-aac
depends = libgcrypt depends = libgcrypt
depends = libgl
depends = libgme depends = libgme
depends = libiec61883 depends = libiec61883
depends = libilbc depends = libilbc
@@ -61,7 +62,6 @@ pkgbase = ffmpeg-full
depends = liblc3 depends = liblc3
depends = libmodplug depends = libmodplug
depends = libmysofa depends = libmysofa
depends = libomxil-bellagio
depends = libopenmpt depends = libopenmpt
depends = libplacebo depends = libplacebo
depends = libpulse depends = libpulse
@@ -84,7 +84,6 @@ pkgbase = ffmpeg-full
depends = libxv depends = libxv
depends = libwebp depends = libwebp
depends = lilv depends = lilv
depends = lv2
depends = ocl-icd depends = ocl-icd
depends = openal depends = openal
depends = opencore-amr depends = opencore-amr
@@ -150,6 +149,7 @@ pkgbase = ffmpeg-full
conflicts = ffmpeg conflicts = ffmpeg
source = https://ffmpeg.org/releases/ffmpeg-7.1.1.tar.xz source = https://ffmpeg.org/releases/ffmpeg-7.1.1.tar.xz
source = https://ffmpeg.org/releases/ffmpeg-7.1.1.tar.xz.asc source = https://ffmpeg.org/releases/ffmpeg-7.1.1.tar.xz.asc
source = https://github.com/obsproject/obs-studio/archive/31.1.2/obs-studio-31.1.2.tar.gz
source = 010-ffmpeg-add-svt-hevc-ged80959.patch::https://raw.githubusercontent.com/OpenVisualCloud/SVT-HEVC/ed80959ebb5586aa7763c91a397d44be1798587c/ffmpeg_plugin/master-0001-lavc-svt_hevc-add-libsvt-hevc-encoder-wrapper.patch source = 010-ffmpeg-add-svt-hevc-ged80959.patch::https://raw.githubusercontent.com/OpenVisualCloud/SVT-HEVC/ed80959ebb5586aa7763c91a397d44be1798587c/ffmpeg_plugin/master-0001-lavc-svt_hevc-add-libsvt-hevc-encoder-wrapper.patch
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 = 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 = 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
@@ -163,6 +163,7 @@ pkgbase = ffmpeg-full
validpgpkeys = FCF986EA15E6E293A5644F10B4322F04D67658D8 validpgpkeys = FCF986EA15E6E293A5644F10B4322F04D67658D8
sha256sums = 733984395e0dbbe5c046abda2dc49a5544e7e0e1e2366bba849222ae9e3a03b1 sha256sums = 733984395e0dbbe5c046abda2dc49a5544e7e0e1e2366bba849222ae9e3a03b1
sha256sums = SKIP sha256sums = SKIP
sha256sums = 11d7b5fbb234e926b04b921203c152517a928032e757689d964c5f9a0a9a4157
sha256sums = 9047e18d34716812d4ea7eafc1d0fd8b376d922a4b6b4dc20237662fcaf0c996 sha256sums = 9047e18d34716812d4ea7eafc1d0fd8b376d922a4b6b4dc20237662fcaf0c996
sha256sums = a164ebdc4d281352bf7ad1b179aae4aeb33f1191c444bed96cb8ab333c046f81 sha256sums = a164ebdc4d281352bf7ad1b179aae4aeb33f1191c444bed96cb8ab333c046f81
sha256sums = 59da61f2b2c556fbe0cdbf84bcc00977ee3d2447085decb21f6298226559f2aa sha256sums = 59da61f2b2c556fbe0cdbf84bcc00977ee3d2447085decb21f6298226559f2aa
+26 -21
View File
@@ -3,9 +3,10 @@
pkgname=ffmpeg-full pkgname=ffmpeg-full
pkgver=7.1.1 pkgver=7.1.1
pkgrel=4 pkgrel=5
_svt_hevc_ver='ed80959ebb5586aa7763c91a397d44be1798587c' _svt_hevc_ver='ed80959ebb5586aa7763c91a397d44be1798587c'
_svt_vp9_ver='3b9a3fa43da4cc5fe60c7d22afe2be15341392ea' _svt_vp9_ver='3b9a3fa43da4cc5fe60c7d22afe2be15341392ea'
_obs_studio_ver='31.1.2'
pkgdesc='Complete solution to record, convert and stream audio and video (all possible features including libfdk-aac)' pkgdesc='Complete solution to record, convert and stream audio and video (all possible features including libfdk-aac)'
arch=('x86_64') arch=('x86_64')
url='https://www.ffmpeg.org/' url='https://www.ffmpeg.org/'
@@ -14,7 +15,7 @@ depends=(
'alsa-lib' 'alsa-lib'
'aom' 'aom'
'aribb24' 'aribb24'
'avisynthplus' 'avisynthplus' # loaded on-demand by dlopen()
'bzip2' 'bzip2'
'cairo' 'cairo'
'celt' 'celt'
@@ -24,17 +25,16 @@ depends=(
'flite1' 'flite1'
'fontconfig' 'fontconfig'
'freetype2' 'freetype2'
'frei0r-plugins' 'frei0r-plugins' # loaded on-demand by dlopen()
'fribidi' 'fribidi'
'glib2' 'glib2'
'glslang' 'glslang'
'gmp'
'gnutls' 'gnutls'
'gsm' 'gsm'
'harfbuzz' 'harfbuzz'
'jack' 'jack'
'kvazaar' 'kvazaar'
'ladspa' 'ladspa' # loaded on-demand by dlopen()
'lame' 'lame'
'lcevcdec' 'lcevcdec'
'lcms2' 'lcms2'
@@ -51,7 +51,6 @@ depends=(
'libdvdread' 'libdvdread'
'libfdk-aac' 'libfdk-aac'
'libgcrypt' 'libgcrypt'
'libgl'
'libgme' 'libgme'
'libiec61883' 'libiec61883'
'libilbc' 'libilbc'
@@ -59,7 +58,6 @@ depends=(
'liblc3' 'liblc3'
'libmodplug' 'libmodplug'
'libmysofa' 'libmysofa'
'libomxil-bellagio'
'libopenmpt' 'libopenmpt'
'libplacebo' 'libplacebo'
'libpulse' 'libpulse'
@@ -82,7 +80,7 @@ depends=(
'libxv' 'libxv'
'libwebp' 'libwebp'
'lilv' 'lilv'
'lv2'
'ocl-icd' 'ocl-icd'
'openal' 'openal'
'opencore-amr' 'opencore-amr'
@@ -109,10 +107,10 @@ depends=(
'tesseract' 'tesseract'
'twolame' 'twolame'
'v4l-utils' 'v4l-utils'
'vapoursynth' 'vapoursynth' # loaded on-demand by dlopen()
'vid.stab' 'vid.stab'
'vmaf' 'vmaf'
'vulkan-icd-loader' 'vulkan-icd-loader' # loaded on-demand by dlopen()
'x264' 'x264'
'x265' 'x265'
'xvidcore' 'xvidcore'
@@ -136,24 +134,29 @@ depends=(
'xevd' 'xevd'
'xeve' 'xeve'
) )
optdepends=('nvidia-utils: for NVIDIA NVDEC/NVENC support' optdepends=(
'vpl-runtime: for Intel Quick Sync Video' 'nvidia-utils: for NVIDIA NVDEC/NVENC support'
'vpl-runtime: for Intel Quick Sync Video'
) )
makedepends=('patchutils' makedepends=(
'clang' 'amf-headers'
'nasm' 'clang'
'amf-headers' 'ffnvcodec-headers'
'ffnvcodec-headers' 'gmp'
'opencl-headers' 'libgl'
'vulkan-headers' 'libomxil-bellagio'
# aur: 'lv2'
'decklink-sdk' 'nasm'
'patchutils'
'opencl-headers'
'vulkan-headers'
) )
provides=('libavcodec.so' 'libavdevice.so' 'libavfilter.so' 'libavformat.so' provides=('libavcodec.so' 'libavdevice.so' 'libavfilter.so' 'libavformat.so'
'libavutil.so' 'libpostproc.so' 'libswscale.so' 'libswresample.so' 'libavutil.so' 'libpostproc.so' 'libswscale.so' 'libswresample.so'
'ffmpeg') 'ffmpeg')
conflicts=('ffmpeg') conflicts=('ffmpeg')
source=("https://ffmpeg.org/releases/ffmpeg-${pkgver}.tar.xz"{,.asc} source=("https://ffmpeg.org/releases/ffmpeg-${pkgver}.tar.xz"{,.asc}
"https://github.com/obsproject/obs-studio/archive/${_obs_studio_ver}/obs-studio-${_obs_studio_ver}.tar.gz"
"010-ffmpeg-add-svt-hevc-g${_svt_hevc_ver:0:7}.patch"::"https://raw.githubusercontent.com/OpenVisualCloud/SVT-HEVC/${_svt_hevc_ver}/ffmpeg_plugin/master-0001-lavc-svt_hevc-add-libsvt-hevc-encoder-wrapper.patch" "010-ffmpeg-add-svt-hevc-g${_svt_hevc_ver:0:7}.patch"::"https://raw.githubusercontent.com/OpenVisualCloud/SVT-HEVC/${_svt_hevc_ver}/ffmpeg_plugin/master-0001-lavc-svt_hevc-add-libsvt-hevc-encoder-wrapper.patch"
"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" "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" "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"
@@ -166,6 +169,7 @@ source=("https://ffmpeg.org/releases/ffmpeg-${pkgver}.tar.xz"{,.asc}
'LICENSE') 'LICENSE')
sha256sums=('733984395e0dbbe5c046abda2dc49a5544e7e0e1e2366bba849222ae9e3a03b1' sha256sums=('733984395e0dbbe5c046abda2dc49a5544e7e0e1e2366bba849222ae9e3a03b1'
'SKIP' 'SKIP'
'11d7b5fbb234e926b04b921203c152517a928032e757689d964c5f9a0a9a4157'
'9047e18d34716812d4ea7eafc1d0fd8b376d922a4b6b4dc20237662fcaf0c996' '9047e18d34716812d4ea7eafc1d0fd8b376d922a4b6b4dc20237662fcaf0c996'
'a164ebdc4d281352bf7ad1b179aae4aeb33f1191c444bed96cb8ab333c046f81' 'a164ebdc4d281352bf7ad1b179aae4aeb33f1191c444bed96cb8ab333c046f81'
'59da61f2b2c556fbe0cdbf84bcc00977ee3d2447085decb21f6298226559f2aa' '59da61f2b2c556fbe0cdbf84bcc00977ee3d2447085decb21f6298226559f2aa'
@@ -196,6 +200,7 @@ build() {
printf '%s\n' ' -> Running ffmpeg configure script...' printf '%s\n' ' -> Running ffmpeg configure script...'
export CFLAGS+=' -isystem/opt/cuda/include' export CFLAGS+=' -isystem/opt/cuda/include'
export CFLAGS+=" -isystem${srcdir}/obs-studio-${_obs_studio_ver}/plugins/decklink/linux/decklink-sdk"
export LDFLAGS+=' -L/opt/cuda/lib64' export LDFLAGS+=' -L/opt/cuda/lib64'
# fix build of libavfilter/asrc_flite.c with gcc 14 # fix build of libavfilter/asrc_flite.c with gcc 14