diff options
author | tytan652 | 2023-03-09 16:46:08 +0100 |
---|---|---|
committer | tytan652 | 2023-03-09 16:46:08 +0100 |
commit | 61e7089b6bf262d4c3eded24f9afb88c86bb08bf (patch) | |
tree | b85a11cbb9759b168c9032eff4e8761c356e3cc5 /PKGBUILD | |
parent | 867b484a1193fa65af12c15a2be6cd869a543991 (diff) | |
download | aur-61e7089b6bf262d4c3eded24f9afb88c86bb08bf.tar.gz |
build: Update to version 6
Diffstat (limited to 'PKGBUILD')
-rw-r--r-- | PKGBUILD | 129 |
1 files changed, 38 insertions, 91 deletions
@@ -50,16 +50,15 @@ if [[ -z "$FFMPEG_OBS_VULKAN" ]]; then FFMPEG_OBS_VULKAN=OFF fi -# Version checks will only be added for the default package deps -DISTRIB_ID=`lsb_release --id | cut -f2 -d$'\t'` - pkgname=ffmpeg-obs -pkgver=5.1.2 -pkgrel=3 +pkgver=6 +pkgrel=1 pkgdesc='Complete solution to record, convert and stream audio and video with fixes for OBS Studio. And various options in the PKGBUILD' arch=('i686' 'x86_64' 'aarch64') url=https://ffmpeg.org/ license=(GPL3) +# To manage dependency rebuild easily, this will prevent you to rebuild FFmpeg on non-updated system +# Only for default set of features _aomver=3 _dav1dver=1.0.0 _libristver=0.2.7 @@ -67,11 +66,15 @@ _libvpxver=1.13 _srtver=1.5 _svtav1ver=1.1 _vmafver=2 +_vulkanver=1.3.240 _x264ver=0.164 _x265ver=3.5 depends=( + "aom>=$_aomver" + "srt>=$_srtver" alsa-lib bzip2 + "dav1d>=$_dav1dver" fontconfig fribidi gmp @@ -79,66 +82,49 @@ depends=( gsm jack lame - 'libass' + libass libavc1394 - 'libbluray' - 'libbs2b' + libbluray + libbs2b libdrm - 'freetype2' + freetype2 libgl libiec61883 libmodplug + libopenmpt libpulse - 'rav1e' libraw1394 - 'librsvg' + librsvg libsoxr libssh libtheora - 'libva' + libva libvdpau 'vid.stab' - 'libvorbis' - 'vulkan-icd-loader' + libvorbis + "libvpx>=$_libvpxver" libwebp libx11 libxcb libxext libxml2 libxv - 'xvidcore' - 'zimg' ocl-icd opencore-amr openjpeg2 opus + rav1e sdl2 speex v4l-utils + vulkan-icd-loader + "x264>=$_x264ver" + "x265>=$_x265ver" + xvidcore xz + zimg zlib ) -# To manage dependency rebuild easily, this will prevent you to rebuild FFmpeg on non-updated system -# For Manjaro user this feature is disabled -if [[ $DISTRIB_ID == 'ManjaroLinux' ]]; then - depends+=( - 'aom' - 'libdav1d.so' - 'libvpx.so' - 'libx264.so' - 'libx265.so' - 'srt' - ) -else - depends+=( - "aom>=$_aomver" - "dav1d>=$_dav1dver" - "libvpx>=$_libvpxver" - "x264>=$_x264ver" - "x265>=$_x265ver" - "srt>=$_srtver" - ) -fi makedepends=( git amf-headers @@ -149,8 +135,7 @@ makedepends=( mesa nasm opencl-headers - vulkan-headers - 'lsb-release' + "vulkan-headers>=$_vulkanver" ) optdepends=( 'avisynthplus: AviSynthPlus support' @@ -169,9 +154,7 @@ provides=( libswscale.so ) conflicts=(ffmpeg) -options=('debug') -# 5.1.2 + avcodec/libjxlenc: avoid hard failure with unspecified primaries -_tag=05d6157aab34bc49f23284645a8f34ece870f44d +_tag=ea3d24bbe3c58b171e55fe2151fc7ffaca3ab3d2 _deps_tag=2022-08-02 source=( "ffmpeg::git+https://git.ffmpeg.org/ffmpeg.git#tag=${_tag}" @@ -184,17 +167,6 @@ sha256sums=( '1027369d704834588f09f1854541584444dda4f8c6407f83fec090d80e6e6ad2' ) -if [[ $DISTRIB_ID == 'ManjaroLinux' ]]; then -source+=( - "$pkgname.hook" - "$pkgname.sh" -) -sha256sums+=( - "39820f085e4366cfa24b7bf632d331d3bfa6e9f62f47df55892901218636a2fc" - "195ad5f134f02666d330342d04561c12a10e0522b3ace80cd36531d4092e1e4d" -) -fi - if [[ $FFMPEG_OBS_FULL == 'ON' ]]; then FFMPEG_OBS_DEBUG=ON FFMPEG_OBS_DECKLINK=ON @@ -232,6 +204,7 @@ _args=( --enable-libopencore_amrnb --enable-libopencore_amrwb --enable-libopenjpeg + --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librav1e @@ -282,25 +255,15 @@ _args+=( ) ## Add OBS Studio needed feature +depends+=("librist>=$_libristver") _args+=(--enable-librist) -# To manage dependency rebuild easily, this will prevent you to rebuild FFmpeg on non-updated system -# For Manjaro user this feature is disabled -if [[ $DISTRIB_ID == 'ManjaroLinux' ]]; then - depends+=('librist') -else - depends+=("librist>=$_libristver") -fi ## Add upstream feature for x86_64 build if [[ $CARCH == 'x86_64' ]]; then _args+=(--enable-lto --enable-libmfx --enable-libsvtav1) depends+=('libmfx') optdepends+=('intel-media-sdk: Intel QuickSync support') - if [[ $DISTRIB_ID == 'ManjaroLinux' ]]; then - depends+=('svt-av1') - else - depends+=("svt-av1>=$_svtav1ver") - fi + depends+=("svt-av1>=$_svtav1ver") else _args+=(--disable-lto) fi @@ -308,11 +271,7 @@ fi ## Add upstream feature for i686 and x86_64 build if [[ $CARCH == "i686" || $CARCH == "x86_64" ]]; then _args+=(--enable-libvmaf) - if [[ $DISTRIB_ID == 'ManjaroLinux' ]]; then - depends+=(vmaf) - else - depends+=("vmaf>=$_vmafver") - fi + depends+=("vmaf>=$_vmafver") fi ## Add args for aarch64 build @@ -353,22 +312,21 @@ if [[ $FFMPEG_OBS_LIBFDK_AAC == 'ON' ]]; then fi if [[ $FFMPEG_OBS_SVT == 'ON' ]]; then - depends+=(svt-vp9 svt-hevc) - _svt_hevc_ver='b62f72e752243cee4104cfb41dc7ee409d3ac3e9' - _svt_vp9_ver='d9ef3cc13159143b9afc776c04f67cdfa6284046' + depends+=(svt-hevc svt-vp9) + _svt_hevc_ver='eb24a06ba4ee4948f219a3246b88439a8090bd37' + _svt_vp9_ver='aaa8140c8cdf6c073eaa6aaa5d003d1535fd0059' source+=( "020-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" "030-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" "040-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" ) sha256sums+=( - '4da3826aa370572273ef9fb4c0bf2c93a840595b07a671a0412ad0dc9ed8d689' + 'e8fdc940474f3819b9a8d30cab8164774584c051322acb6194bcb03d56e8175a' '837cac5a64234f34d136d18c8f7dc14203cdea11406fdb310cef2f62504d9e0c' - 'e310eedb3dc88c8ad6ffcd6cb6bde1f593ded330ea99b0356724c9d22bcfde4c' + 'd8b91ea5f07d0208cbe0290567083808708014a1953fda322d13cb619349c9ee' ) - _args+=(--enable-libsvtvp9 --enable-libsvthevc) - provides+=(ffmpeg-svt-hevc) - provides+=(ffmpeg-svt-vp9) + _args+=(--enable-libsvthevc --enable-libsvtvp9) + provides+=(ffmpeg-svt-hevc ffmpeg-svt-vp9) fi if [[ $FFMPEG_OBS_VULKAN == 'ON' ]]; then @@ -385,7 +343,7 @@ if [[ $FFMPEG_OBS_FULL == 'ON' ]]; then sndio 'chromaprint-fftw' frei0r-plugins libgcrypt aribb24 libcaca 'celt' libcdio-paranoia codec2 'davs2' libdc1394 flite1 libgme libilbc 'libklvanc-git' - kvazaar 'lensfun-git' 'openh264' libopenmpt librabbitmq-c rubberband + kvazaar 'lensfun-git' 'openh264' librabbitmq-c rubberband rtmpdump 'shine' smbclient snappy tesseract twolame 'uavs3d-git' 'vo-amrwbenc' 'xavs' 'xavs2' zeromq zvbi lv2 lilv libmysofa openal @@ -396,7 +354,7 @@ if [[ $FFMPEG_OBS_FULL == 'ON' ]]; then --enable-sndio --disable-rpath --enable-gray --enable-chromaprint --enable-frei0r --enable-gcrypt --enable-libaribb24 --enable-libcaca --enable-libcelt --enable-libcdio --enable-libcodec2 --enable-libdavs2 --enable-libdc1394 --enable-libflite --enable-libgme --enable-libilbc --enable-libklvanc - --enable-libkvazaar --enable-liblensfun --enable-libopenh264 --enable-libopenmpt --enable-librabbitmq --enable-librubberband + --enable-libkvazaar --enable-liblensfun --enable-libopenh264 --enable-librabbitmq --enable-librubberband --enable-librtmp --enable-libshine --enable-libsmbclient --enable-libsnappy --enable-libtesseract --enable-libtwolame --enable-libuavs3d --enable-libvo-amrwbenc --enable-libxavs --enable-libxavs2 --enable-libzmq --enable-libzvbi --enable-lv2 --enable-libmysofa --enable-openal @@ -430,12 +388,6 @@ prepare() { ## Fix segfault with avisynthplus sed -i 's/RTLD_LOCAL/RTLD_DEEPBIND/g' libavformat/avisynth.c - ## avdevice/v4l2: fix leak of timefilter - git cherry-pick -n 30aa0c3f4873a92c5e3da8ba8cf030de56bf4cf7 - - # Fix building with newer Vulkan versions - git cherry-pick -n eb0455d64690eed0068e5cb202f72ecdf899837c - ### Arch Linux changes ## https://crbug.com/1251779 @@ -479,9 +431,4 @@ package() { if [[ $_nonfree_enabled == 'ON' ]]; then install -D -m644 license_if_nonfree_enabled.txt "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" fi - - if [[ $DISTRIB_ID == 'ManjaroLinux' ]]; then - install -D -m644 "$srcdir/$pkgname.hook" -t "${pkgdir}"/usr/share/libalpm/hooks/ - install -D -m755 "$srcdir/$pkgname.sh" -t "${pkgdir}"/usr/share/libalpm/scripts/ - fi } |