PKGBUILDs/ffmpeg/custom/PKGBUILD

228 lines
4.5 KiB
Bash
Raw Normal View History

# Maintainer: Martchus <martchus@gmx.net>
# Contributor: Ben Widawsky <ben@bwidawsk.net>
2016-02-03 18:15:24 +01:00
# Contributor: Rob McCathie <korrode at gmail>
# Contributor: Ionut Biru <ibiru@archlinux.org>
2016-11-01 16:49:13 +01:00
# Contributor: Bartomiej Piotrowski <bpiotrowski@archlinux.org>
2016-02-03 18:15:24 +01:00
# Contributor: Maxime Gauduin <alucryd@archlinux.org>
# Contributor: Tom Newsom <Jeepster@gmx.co.uk>
# Contributor: Paul Mattal <paul@archlinux.org>
_name=ffmpeg
pkgname=ffmpeg-custom
2022-06-12 21:00:51 +02:00
pkgver=5.0.1
pkgrel=2
2016-02-03 18:15:24 +01:00
epoch=1
pkgdesc='Complete solution to record, convert and stream audio and video (with more features enabled than regular ffmpeg)'
arch=('x86_64')
2016-04-11 22:25:17 +02:00
url='https://ffmpeg.org/'
2016-02-03 18:15:24 +01:00
license=('GPL3' 'custom:libfdk-aac')
depends=(
alsa-lib
aom
bzip2
fontconfig
fribidi
gmp
gnutls
gsm
jack
lame
libass.so
libavc1394
libbluray.so
2019-08-07 19:13:22 +02:00
libdav1d.so
libdrm
libfreetype.so
libiec61883
libmfx
libmodplug
libpulse
2020-07-21 22:02:34 +02:00
librav1e.so
libraw1394
2021-05-05 00:51:01 +02:00
librsvg-2.so
libsoxr
libssh
libtheora
libva-drm.so
libva-x11.so
libva.so
libvdpau
libvidstab.so
libvorbis.so
libvorbisenc.so
libvpx.so
libwebp
libx11
libx264.so
libx265.so
libxcb
libxext
libxml2
libxv
libxvidcore.so
libzimg.so
opencore-amr
openjpeg2
opus
sdl2
speex
srt
svt-av1
v4l-utils
vmaf
xz
zlib
ocl-icd
libfdk-aac
librsvg
#glslang - see note below
vulkan-icd-loader
)
makedepends=(
amf-headers
2020-07-21 22:02:34 +02:00
avisynthplus
clang
ffnvcodec-headers
git
ladspa
nasm
vulkan-headers
opencl-clhpp
openal
)
optdepends=(
'avisynthplus: AviSynthPlus support'
'intel-media-sdk: Intel QuickSync support'
'ladspa: LADSPA filters'
2020-04-20 00:12:13 +02:00
'nvidia-utils: Nvidia NVDEC/NVENC support'
)
provides=(
libavcodec.so
libavdevice.so
libavfilter.so
libavformat.so
libavutil.so
libpostproc.so
libswresample.so
libswscale.so
"ffmpeg=$pkgver"
"ffmpeg-librsvg=$pkgver"
)
2016-02-03 18:15:24 +01:00
conflicts=("$_name")
options=(
debug
)
_tag=9687cae2b468e09e35df4cea92cc2e6a0e6c93b3
source=(
2020-07-21 22:02:34 +02:00
git+https://git.ffmpeg.org/ffmpeg.git#tag=${_tag}
2022-02-18 10:24:59 +01:00
ffmpeg-vmaf2.x.patch
2022-01-25 18:19:45 +01:00
add-av_stream_get_first_dts-for-chromium.patch
)
b2sums=(
SKIP
65039aac811bfd143359e32720cd6ca64124f1789c1b624bd28a5bd75b37362b2a3b6b402203c4e9d137fb1d00895114f3789df40f8381091d38c98e7876cc8a
3f2ee7606500fa9444380d138959cd2bccfbba7d34629a17f4f6288c6bde29e931bbe922a7c25d861f057ddd4ba0b095bbd675c1930754746d5dd476b3ccbc13
)
2016-02-03 18:15:24 +01:00
prepare() {
cd ffmpeg
git cherry-pick -n 988f2e9eb063db7c1a678729f58aab6eba59a55b # fix nvenc on older gpus
2022-02-18 10:24:59 +01:00
patch -Np1 -i ../ffmpeg-vmaf2.x.patch # vmaf 2.x support
patch -Np1 -i ../add-av_stream_get_first_dts-for-chromium.patch # https://crbug.com/1251779
}
2022-01-25 18:19:45 +01:00
2022-02-18 10:24:59 +01:00
pkgver() {
cd ffmpeg
git describe --tags | sed 's/^n//'
}
2016-02-03 18:15:24 +01:00
build() {
2018-07-27 12:58:49 +02:00
cd $_name
2016-02-03 18:15:24 +01:00
./configure \
2019-09-15 00:39:13 +02:00
--prefix=/usr \
2016-02-03 18:15:24 +01:00
--disable-debug \
--disable-static \
--disable-stripping \
--enable-amf \
--enable-avisynth \
--enable-cuda-llvm \
--enable-lto \
2016-02-03 18:15:24 +01:00
--enable-fontconfig \
2016-07-20 01:10:26 +02:00
--enable-gmp \
2016-02-03 18:15:24 +01:00
--enable-gnutls \
--enable-gpl \
--enable-ladspa \
--enable-libaom \
2016-02-03 18:15:24 +01:00
--enable-libass \
--enable-libbluray \
2019-08-07 19:13:22 +02:00
--enable-libdav1d \
2016-02-03 18:15:24 +01:00
--enable-libfreetype \
--enable-libfribidi \
2018-07-27 12:58:49 +02:00
--enable-libiec61883 \
--enable-libjack \
2020-01-04 21:15:06 +01:00
--enable-libmfx \
2016-02-03 18:15:24 +01:00
--enable-libgsm \
--enable-libmodplug \
--enable-libmp3lame \
--enable-libopencore_amrnb \
--enable-libopencore_amrwb \
--enable-libopenjpeg \
--enable-libopus \
--enable-libpulse \
2020-07-21 22:02:34 +02:00
--enable-librav1e \
2021-05-05 00:51:01 +02:00
--enable-librsvg \
2016-02-03 18:15:24 +01:00
--enable-libsoxr \
--enable-libspeex \
--enable-libsrt \
2016-02-03 18:15:24 +01:00
--enable-libssh \
--enable-libsvtav1 \
2016-02-03 18:15:24 +01:00
--enable-libtheora \
--enable-libv4l2 \
--enable-libvidstab \
--enable-libvmaf \
2016-02-03 18:15:24 +01:00
--enable-libvorbis \
--enable-libvpx \
--enable-libwebp \
--enable-libx264 \
--enable-libx265 \
2017-04-13 23:40:43 +02:00
--enable-libxcb \
2018-01-04 20:24:24 +01:00
--enable-libxml2 \
2016-02-03 18:15:24 +01:00
--enable-libxvid \
--enable-libzimg \
--enable-nvdec \
--enable-nvenc \
--enable-omx \
2016-02-03 18:15:24 +01:00
--enable-shared \
--enable-version3 \
--enable-libfdk_aac \
--enable-vaapi \
--enable-vdpau \
--enable-opencl \
--enable-openal \
--enable-vulkan \
2016-02-03 18:15:24 +01:00
--enable-nonfree
# note: removing --enable-libglslang for now due to "ERROR: libglslang not found"
2016-02-03 18:15:24 +01:00
make
make tools/qt-faststart
2018-04-25 22:14:03 +02:00
make doc/ff{mpeg,play}.1
2016-02-03 18:15:24 +01:00
cp /usr/share/licenses/libfdk-aac/NOTICE .
}
package() {
2018-07-27 12:58:49 +02:00
cd $_name
2016-02-03 18:15:24 +01:00
make DESTDIR="${pkgdir}" install install-man
install -Dm 755 tools/qt-faststart "${pkgdir}"/usr/bin/
install -d "$pkgdir/usr/share/licenses/$pkgname"
install -m 0644 NOTICE "$pkgdir/usr/share/licenses/$pkgname/NOTICE"
}
# vim: ts=2 sw=2 et: