PKGBUILDs/aur/ffmpeg-shinobi/PKGBUILD
2022-05-01 07:53:48 -04:00

205 lines
4.1 KiB
Bash

# Maintainer: graysky <graysky AT archlinux DOT us>
# Contributor: Kevin Mihelich <kevin@archlinuxarm.org>
# Contributor: Maxime Gauduin <alucryd@archlinux.org>
# Contributor: Bartłomiej Piotrowski <bpiotrowski@archlinux.org>
# Contributor: Ionut Biru <ibiru@archlinux.org>
# Contributor: Tom Newsom <Jeepster@gmx.co.uk>
# Contributor: Paul Mattal <paul@archlinux.org>
# ALARM:
# - remove lto from building
pkgname=ffmpeg-shinobi
_pkgname=ffmpeg
_tag=e23098a712d532a393a0ae7ed6e22eb905ad06d2
pkgver=4.3.4
pkgrel=1
pkgdesc='FFmpeg from the release/4.3 branch for use with Shinobi'
arch=(x86_64 aarch64 armv6h armv7h)
url=https://ffmpeg.org/
license=(GPL3)
depends=(
alsa-lib
bzip2
fontconfig
fribidi
gmp
gnutls
gsm
jack
lame
libass.so
libavc1394
libbluray.so
libdav1d.so
libdrm
libfreetype.so
libiec61883
libmodplug
libpulse
libraw1394
libsoxr
libssh
libtheora
libva.so
libva-drm.so
libva-x11.so
libvdpau
libvidstab.so
libvorbisenc.so
libvorbis.so
libvpx.so
libwebp
libx11
libx264.so
libx265.so
libxcb
libxext
libxml2
libxv
libxvidcore.so
libzimg.so
opencore-amr
openjpeg2
opus
sdl2
speex
srt
v4l-utils
xz
zlib
)
makedepends=(
amf-headers
avisynthplus
clang
ffnvcodec-headers
git
ladspa
nasm
)
optdepends=(
'avisynthplus: AviSynthPlus support'
'ladspa: LADSPA filters'
)
if [[ $CARCH = "x86_64" ]]; then
# building for Arch x86_64
depends+=(aom libmfx librav1e.so vmaf)
optdepends+=('intel-media-sdk: Intel QuickSync support'
'nvidia-utils: Nvidia NVDEC/NVENC support')
else
# building for Arch ARM
depends+=(librsvg-2.so)
makedepends+=(ffnvcodec-headers)
fi
provides=(
ffmpeg
libavcodec.so
libavdevice.so
libavfilter.so
libavformat.so
libavutil.so
libpostproc.so
libswresample.so
libswscale.so
)
conflicts=(
ffmpeg
)
source=(
git+https://git.ffmpeg.org/ffmpeg.git#tag=${_tag}
vmaf-model-path.patch
0001-configure-use-no-narrowing-for-cuda-llvm-compilation.patch::https://git.ffmpeg.org/gitweb/ffmpeg.git/patch/52cc323735ced6e8095cfd3acea0e36e35c76eb2
)
sha256sums=('SKIP'
'8dff51f84a5f7460f8893f0514812f5d2bd668c3276ef7ab7713c99b71d7bd8d'
'9a661c1e4f0cbad393fb76da1d9fde6dced3918c29bc39b22b996ec4f4c6cecd')
pkgver() {
cd ffmpeg
git describe --tags | sed 's/^n//'
}
prepare() {
cd ffmpeg
patch -Np1 -i "${srcdir}"/vmaf-model-path.patch
patch -Np1 -i "${srcdir}"/0001-configure-use-no-narrowing-for-cuda-llvm-compilation.patch
}
build() {
cd ffmpeg
_args=(
--prefix=/usr
--disable-debug
--disable-static
--disable-stripping
--enable-amf
--enable-avisynth
--enable-cuda-llvm
--enable-fontconfig
--enable-gmp
--enable-gnutls
--enable-gpl
--enable-ladspa
--enable-libass
--enable-libbluray
--enable-libdav1d
--enable-libdrm
--enable-libfreetype
--enable-libfribidi
--enable-libgsm
--enable-libiec61883
--enable-libjack
--enable-libmodplug
--enable-libmp3lame
--enable-libopencore_amrnb
--enable-libopencore_amrwb
--enable-libopenjpeg
--enable-libopus
--enable-libpulse
--enable-libsoxr
--enable-libspeex
--enable-libsrt
--enable-libssh
--enable-libtheora
--enable-libv4l2
--enable-libvidstab
--enable-libvorbis
--enable-libvpx
--enable-libwebp
--enable-libx264
--enable-libx265
--enable-libxcb
--enable-libxml2
--enable-libxvid
--enable-libzimg
--enable-shared
--enable-version3
)
if [[ $CARCH == "x86_64" ]]; then
_args+=(--enable-libaom --enable-libmfx --enable-librav1e --enable-libvmaf --enable-nvdec --enable-nvenc)
elif [[ $CARCH == "armv7h" || $CARCH == "aarch64" ]]; then
_args+=('--host-cflags="-fPIC"' --enable-librsvg)
elif [[ $CARCH == "armv6h" || $CARCH == "arm" ]]; then
_args+=('--extra-libs="-latomic"' --enable-librsvg)
fi
./configure "${_args[@]}"
make
make tools/qt-faststart
make doc/ff{mpeg,play}.1
}
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: