diff options
author | Mark Wagie | 2021-09-27 11:24:06 -0600 |
---|---|---|
committer | Mark Wagie | 2021-09-27 11:24:06 -0600 |
commit | 57440ac8591a40374b84fcf01c7318be8d270ed7 (patch) | |
tree | a298d4b6dd4019e95f849256c4a1f1c9e56c3492 | |
parent | 4b48466aca476fb8696558676df6517d36f2b35f (diff) | |
download | aur-57440ac8591a40374b84fcf01c7318be8d270ed7.tar.gz |
4.4
-rw-r--r-- | .SRCINFO | 22 | ||||
-rw-r--r-- | .gitignore | 12 | ||||
-rw-r--r-- | PKGBUILD | 73 | ||||
-rw-r--r-- | vmaf-model-path.patch | 13 |
4 files changed, 94 insertions, 26 deletions
@@ -1,11 +1,14 @@ pkgbase = ffmpeg-cuda pkgdesc = Complete solution to record, convert and stream audio and video. Includes cuda support. - pkgver = 4.2 - pkgrel = 4 + pkgver = 4.4 + pkgrel = 1 epoch = 1 url = https://ffmpeg.org/ arch = x86_64 license = GPL3 + makedepends = amf-headers + makedepends = avisynthplus + makedepends = clang makedepends = ffnvcodec-headers makedepends = git makedepends = ladspa @@ -24,13 +27,16 @@ pkgbase = ffmpeg-cuda depends = libass.so depends = libavc1394 depends = libbluray.so + depends = libdav1d.so depends = libdrm depends = libfreetype.so depends = libiec61883 + depends = libmfx depends = libmodplug - depends = libomxil-bellagio depends = libpulse + depends = librav1e.so depends = libraw1394 + depends = librsvg-2.so depends = libsoxr depends = libssh depends = libtheora @@ -51,14 +57,19 @@ pkgbase = ffmpeg-cuda depends = libxml2 depends = libxv depends = libxvidcore.so + depends = libzimg.so depends = opencore-amr depends = openjpeg2 depends = opus depends = sdl2 depends = speex + depends = srt + depends = svt-av1 depends = v4l-utils + depends = vmaf depends = xz depends = zlib + optdepends = avisynthplus: AviSynthPlus support optdepends = ladspa: LADSPA filters provides = libavcodec.so provides = libavdevice.so @@ -70,8 +81,9 @@ pkgbase = ffmpeg-cuda provides = libswscale.so provides = ffmpeg conflicts = ffmpeg - source = git+https://git.ffmpeg.org/ffmpeg.git#tag=n4.2 + source = git+https://git.ffmpeg.org/ffmpeg.git#tag=dc91b913b6260e85e1304c74ff7bb3c22a8c9fb1 + source = vmaf-model-path.patch sha256sums = SKIP + sha256sums = 8dff51f84a5f7460f8893f0514812f5d2bd668c3276ef7ab7713c99b71d7bd8d pkgname = ffmpeg-cuda - diff --git a/.gitignore b/.gitignore index ea8a9a660613..a9483747f996 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,8 @@ -*.pkg.tar.xz -pkg/ -src/ -ffmpeg/ +# Ignore everything +* + +# But not these files... +!.gitignore +!PKGBUILD +!.SRCINFO +!vmaf-model-path.patch @@ -1,4 +1,5 @@ -# Maintainer: Gleb Sinyavskiy <zhulik.gleb@gmail.com> +# Maintainer: Mark Wagie <mark dot wagie at tutanota dot com> +# Contributor: Gleb Sinyavskiy <zhulik.gleb@gmail.com> # Contributor: Maxime Gauduin <alucryd@archlinux.org> # Contributor: Bartłomiej Piotrowski <bpiotrowski@archlinux.org> # Contributor: Ionut Biru <ibiru@archlinux.org> @@ -6,8 +7,8 @@ # Contributor: Paul Mattal <paul@archlinux.org> pkgname=ffmpeg-cuda -pkgver=4.2 -pkgrel=4 +pkgver=4.4 +pkgrel=1 epoch=1 pkgdesc='Complete solution to record, convert and stream audio and video. Includes cuda support.' arch=(x86_64) @@ -28,13 +29,16 @@ depends=( libass.so libavc1394 libbluray.so + libdav1d.so libdrm libfreetype.so libiec61883 + libmfx libmodplug - libomxil-bellagio libpulse + librav1e.so libraw1394 + librsvg-2.so libsoxr libssh libtheora @@ -55,22 +59,32 @@ depends=( libxml2 libxv libxvidcore.so + libzimg.so opencore-amr openjpeg2 opus sdl2 speex + srt + svt-av1 v4l-utils + vmaf xz zlib ) makedepends=( + amf-headers + avisynthplus + clang ffnvcodec-headers git ladspa nasm ) -optdepends=('ladspa: LADSPA filters') +optdepends=( + 'avisynthplus: AviSynthPlus support' + 'ladspa: LADSPA filters' +) provides=( libavcodec.so libavdevice.so @@ -82,8 +96,30 @@ provides=( libswscale.so ffmpeg ) -source=(git+https://git.ffmpeg.org/ffmpeg.git#tag=n${pkgver}) -sha256sums=('SKIP') +conflicts=('ffmpeg') +_tag=dc91b913b6260e85e1304c74ff7bb3c22a8c9fb1 +source=( + git+https://git.ffmpeg.org/ffmpeg.git#tag=${_tag} + vmaf-model-path.patch +) +sha256sums=( + SKIP + 8dff51f84a5f7460f8893f0514812f5d2bd668c3276ef7ab7713c99b71d7bd8d +) + +pkgver() { + cd ffmpeg + + git describe --tags | sed 's/^n//' +} + +prepare() { + cd ffmpeg + git cherry-pick -n 988f2e9eb063db7c1a678729f58aab6eba59a55b # fix nvenc on older gpus + patch -Np1 -i "${srcdir}"/vmaf-model-path.patch + + sed -i 's/arch=compute_30,code=sm_30/arch=compute_50,code=sm_50/g' configure +} build() { local _cflags='-I/opt/cuda/include' @@ -92,19 +128,19 @@ build() { cd ffmpeg ./configure \ - --prefix='/usr' \ + --prefix=/usr \ --extra-cflags="$_cflags" \ --extra-ldflags="$_ldflags" \ --disable-debug \ --disable-static \ --disable-stripping \ - --enable-fontconfig \ + --enable-amf \ + --enable-avisynth \ --enable-nonfree \ --enable-cuda-nvcc \ - --enable-cuvid \ --enable-libnpp \ - --enable-ffnvcodec \ - --enable-libdrm \ + --enable-lto \ + --enable-fontconfig \ --enable-gmp \ --enable-gnutls \ --enable-gpl \ @@ -112,12 +148,14 @@ build() { --enable-libaom \ --enable-libass \ --enable-libbluray \ + --enable-libdav1d \ --enable-libdrm \ --enable-libfreetype \ --enable-libfribidi \ --enable-libgsm \ --enable-libiec61883 \ --enable-libjack \ + --enable-libmfx \ --enable-libmodplug \ --enable-libmp3lame \ --enable-libopencore_amrnb \ @@ -125,12 +163,17 @@ build() { --enable-libopenjpeg \ --enable-libopus \ --enable-libpulse \ + --enable-librav1e \ + --enable-librsvg \ --enable-libsoxr \ --enable-libspeex \ + --enable-libsrt \ --enable-libssh \ + --enable-libsvtav1 \ --enable-libtheora \ --enable-libv4l2 \ --enable-libvidstab \ + --enable-libvmaf \ --enable-libvorbis \ --enable-libvpx \ --enable-libwebp \ @@ -139,9 +182,9 @@ build() { --enable-libxcb \ --enable-libxml2 \ --enable-libxvid \ + --enable-libzimg \ --enable-nvdec \ --enable-nvenc \ - --enable-omx \ --enable-shared \ --enable-version3 @@ -150,11 +193,7 @@ build() { make doc/ff{mpeg,play}.1 } -conflicts=("ffmpeg") - package() { make DESTDIR="${pkgdir}" -C ffmpeg install install-man install -Dm 755 ffmpeg/tools/qt-faststart "${pkgdir}"/usr/bin/ } - -# vim: ts=2 sw=2 et: diff --git a/vmaf-model-path.patch b/vmaf-model-path.patch new file mode 100644 index 000000000000..abd65cdf730a --- /dev/null +++ b/vmaf-model-path.patch @@ -0,0 +1,13 @@ +diff --git a/libavfilter/vf_libvmaf.c b/libavfilter/vf_libvmaf.c +index 249e50c720..9b791e19b1 100644 +--- a/libavfilter/vf_libvmaf.c ++++ b/libavfilter/vf_libvmaf.c +@@ -72,7 +72,7 @@ typedef struct LIBVMAFContext { + #define FLAGS AV_OPT_FLAG_FILTERING_PARAM|AV_OPT_FLAG_VIDEO_PARAM + + static const AVOption libvmaf_options[] = { +- {"model_path", "Set the model to be used for computing vmaf.", OFFSET(model_path), AV_OPT_TYPE_STRING, {.str="/usr/local/share/model/vmaf_v0.6.1.pkl"}, 0, 1, FLAGS}, ++ {"model_path", "Set the model to be used for computing vmaf.", OFFSET(model_path), AV_OPT_TYPE_STRING, {.str="/usr/share/model/vmaf_v0.6.1.pkl"}, 0, 1, FLAGS}, + {"log_path", "Set the file path to be used to store logs.", OFFSET(log_path), AV_OPT_TYPE_STRING, {.str=NULL}, 0, 1, FLAGS}, + {"log_fmt", "Set the format of the log (xml or json).", OFFSET(log_fmt), AV_OPT_TYPE_STRING, {.str=NULL}, 0, 1, FLAGS}, + {"enable_transform", "Enables transform for computing vmaf.", OFFSET(enable_transform), AV_OPT_TYPE_BOOL, {.i64=0}, 0, 1, FLAGS}, |