jobextra/ffmpeg/PKGBUILD

216 lines
5.0 KiB
Bash

#!/usr/bin/bash
# JOBoRun : Jwm OpenBox Obarun RUNit
# Maintainer : Joe Bo Run <joborun@disroot.org>
# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname"
# Website : https://pozol.eu
#-----------------------------------------| DESCRIPTION |---------------------------------------
pkgname=ffmpeg
pkgver=6.1.1
pkgrel=06
epoch=2
pkgdesc='Complete solution to record, convert and stream audio and video'
url=https://ffmpeg.org/
depends=(
alsa-lib
aom
bzip2
cairo
dav1d
fontconfig
freetype2
fribidi
glib2
glibc
gmp
gnutls
gsm
harfbuzz
jack
lame
libass
libavc1394
libbluray
libbs2b
libdrm
libgl
libiec61883
libjxl
libmodplug
libopenmpt
libplacebo
libpulse
libraw1394
librsvg
libsoxr
libssh
libtheora
libva
libvdpau
libvorbis
libvpx
libwebp
libx11
libxcb
libxext
libxml2
libxv
ocl-icd
onevpl
opencore-amr
openjpeg2
opus
rav1e
rubberband
sdl2
snappy
speex
srt
svt-av1
v4l-utils
vapoursynth
vid.stab
vmaf
vulkan-icd-loader
x264
x265
xvidcore
xz
zimg
zlib)
makedepends=(amf-headers avisynthplus clang ffnvcodec-headers frei0r-plugins git ladspa mesa nasm opencl-headers vulkan-headers)
optdepends=( 'avisynthplus: AviSynthPlus support'
'frei0r-plugins: Frei0r video effects support'
'intel-media-sdk: Intel QuickSync support (legacy)'
'ladspa: LADSPA filters'
'nvidia-utils: Nvidia NVDEC/NVENC support'
'onevpl-intel-gpu: Intel QuickSync support')
provides=( libavcodec.so libavdevice.so libavfilter.so libavformat.so libavutil.so libpostproc.so libswresample.so libswscale.so)
# options=( debug)
_tag=6f4048827982a8f48f71f551a6e1ed2362816eec
source=( git+https://git.ffmpeg.org/ffmpeg.git?signed#tag=${_tag}
add-av_stream_get_first_dts-for-chromium.patch)
prepare() {
cd ffmpeg
# FS#79281: fix assembling with binutil as >= 2.41
git cherry-pick -n effadce6c756247ea8bae32dc13bb3e6f464f0eb
# FS#77813: fix playing ogg files with mplayer
git cherry-pick -n cbcc817353a019da4332ad43deb7bbc4e695d02a
patch -Np1 -i ../add-av_stream_get_first_dts-for-chromium.patch # https://crbug.com/1251779
# use non-deprecated nvenc GUID for conftest
git cherry-pick -n 03823ac0c6a38bd6ba972539e3203a592579792f
git cherry-pick -n d2b46c1ef768bc31ba9180f6d469d5b8be677500
# Fix VDPAU vo
git cherry-pick -n e9c93009fc34ca9dfcf0c6f2ed90ef1df298abf7
# Fix bug in av_fft_end
git cherry-pick -n a562cfee2e214252f8b3f516527272ae32ef9532
git cherry-pick -n 250471ea1745fc703eb346a2a662304536a311b1
}
pkgver() {
cd ffmpeg
git describe --tags | sed 's/^n//'
}
build() {
cd ffmpeg
./configure \
--prefix=/usr \
--disable-debug \
--disable-static \
--disable-stripping \
--enable-amf \
--enable-avisynth \
--enable-cuda-llvm \
--enable-lto \
--enable-fontconfig \
--enable-frei0r \
--enable-gmp \
--enable-gnutls \
--enable-gpl \
--enable-ladspa \
--enable-libaom \
--enable-libass \
--enable-libbluray \
--enable-libbs2b \
--enable-libdav1d \
--enable-libdrm \
--enable-libfreetype \
--enable-libfribidi \
--enable-libgsm \
--enable-libharfbuzz \
--enable-libiec61883 \
--enable-libjack \
--enable-libjxl \
--enable-libmodplug \
--enable-libmp3lame \
--enable-libopencore_amrnb \
--enable-libopencore_amrwb \
--enable-libopenjpeg \
--enable-libopenmpt \
--enable-libopus \
--enable-libplacebo \
--enable-libpulse \
--enable-librav1e \
--enable-librsvg \
--enable-librubberband \
--enable-libsnappy \
--enable-libsoxr \
--enable-libspeex \
--enable-libsrt \
--enable-libssh \
--enable-libsvtav1 \
--enable-libtheora \
--enable-libv4l2 \
--enable-libvidstab \
--enable-libvmaf \
--enable-libvorbis \
--enable-libvpl \
--enable-libvpx \
--enable-libwebp \
--enable-libx264 \
--enable-libx265 \
--enable-libxcb \
--enable-libxml2 \
--enable-libxvid \
--enable-libzimg \
--enable-nvdec \
--enable-nvenc \
--enable-opencl \
--enable-opengl \
--enable-shared \
--enable-vapoursynth \
--enable-version3 \
--enable-vulkan
make
make tools/qt-faststart
make doc/ff{mpeg,play}.1
}
package() {
depends+=(libass.so libbluray.so libbs2b.so libdav1d.so libfreetype.so
libharfbuzz.so libjxl.so libopenmpt.so libplacebo.so librav1e.so
librsvg-2.so librubberband.so libva.so libva-drm.so libva-x11.so
libvidstab.so libvorbisenc.so libvorbis.so libvpx.so libx264.so
libx265.so libxvidcore.so libzimg.so)
make DESTDIR="${pkgdir}" -C ffmpeg install install-man
install -Dm 755 ffmpeg/tools/qt-faststart "${pkgdir}"/usr/bin/
}
#---- arch license gpg-key & sha256sums ----
arch=(x86_64)
license=(GPL-3.0-only)
validpgpkeys=(DD1EC9E8DE085C629B3E1846B18E8928B3948D64) # Michael Niedermayer <michael@niedermayer.cc>
sha256sums=(SKIP
57e26caced5a1382cb639235f9555fc50e45e7bf8333f7c9ae3d49b3241d3f77) # add-av_stream_get_first_dts-for-chromium.patch
## 2f9a60866f6174cb57a16d355f561c12af3c34ccd2ad7bc6fd1e58c608bedc7b ffmpeg-2_6.1.1-06-x86_64.pkg.tar.lz