# Contributor: Sergei Lukin # Contributor: Ɓukasz Jendrysik # Contributor: Jakub Skrzypnik # Maintainer: psykose pkgname=ffmpeg5 pkgver=5.1.2 pkgrel=8 pkgdesc="Complete and free Internet live audio and video broadcasting solution for Linux/Unix" url="https://ffmpeg.org/" arch="all" license="GPL-2.0-or-later AND LGPL-2.1-or-later" depends_dev="!ffmpeg-dev !ffmpeg4-dev" makedepends=" alsa-lib-dev aom-dev bzip2-dev coreutils dav1d-dev fontconfig-dev freetype-dev fribidi-dev gnutls-dev imlib2-dev lame-dev libass-dev libdrm-dev libjxl-dev librist-dev libsrt-dev libssh-dev libtheora-dev libva-dev libvdpau-dev libvorbis-dev libvpx-dev libwebp-dev libxfixes-dev opus-dev perl-dev pulseaudio-dev sdl2-dev soxr-dev v4l-utils-dev vidstab-dev vulkan-loader-dev x264-dev x265-dev xvidcore-dev yasm zeromq-dev zlib-dev " checkdepends="rsync" subpackages=" $pkgname-dev $pkgname-libavcodec $pkgname-libavdevice $pkgname-libavfilter $pkgname-libavformat $pkgname-libavutil $pkgname-libpostproc $pkgname-libswresample $pkgname-libswscale " source="https://ffmpeg.org/releases/ffmpeg-$pkgver.tar.xz 0001-libavutil-clean-up-unused-FF_SYMVER-macro.patch 0001-ffbuild-libversion.sh-add-shebang.patch add-av_stream_get_first_dts-for-chromium.patch flto-auto.patch hwcontext_vulkan-remove-optional-encode-decode-extensions.patch " builddir="$srcdir/ffmpeg-$pkgver" options="!check" # tests/data/hls-lists.append.m3u8 fails # secfixes: # 5.1-r1: # - ALPINE-14094 # 4.4.1-r0: # - CVE-2020-20446 # - CVE-2020-20453 # - CVE-2020-22015 # - CVE-2020-22019 # - CVE-2020-22021 # - CVE-2020-22037 # - CVE-2021-38114 # - CVE-2021-38171 # - CVE-2021-38291 # 4.4-r1: # - CVE-2021-33815 # 4.4-r0: # - CVE-2020-20450 # - CVE-2020-21041 # - CVE-2020-22038 # - CVE-2020-22042 # - CVE-2020-24020 # - CVE-2021-30123 # 4.3.2-r0: # - CVE-2020-35964 # - CVE-2020-35965 # 4.3.1-r0: # - CVE-2020-14212 # 4.3-r0: # - CVE-2020-13904 # - CVE-2020-12284 # 4.2.1-r0: # - CVE-2019-15942 # 4.2-r0: # - CVE-2019-17539 # - CVE-2019-17542 # 4.1.4-r0: # - CVE-2019-12730 # 4.1.3-r0: # - CVE-2019-9718 # - CVE-2019-9721 # - CVE-2019-11338 # - CVE-2019-11339 # 4.1.1-r0: # - CVE-2019-1000016 # 4.1-r0: # - CVE-2018-13305 # - CVE-2018-15822 # 4.0.2-r0: # - CVE-2018-13301 # - CVE-2018-13303 # - CVE-2018-13304 # - CVE-2018-1999010 # - CVE-2018-1999011 # - CVE-2018-1999012 # - CVE-2018-1999013 # - CVE-2018-1999014 # - CVE-2018-1999015 # 4.0.1-r0: # - CVE-2018-12459 # - CVE-2018-12460 # 4.0.0-r0: # - CVE-2018-6912 # - CVE-2018-7757 # - CVE-2018-9841 # 3.4.4-r0: # - CVE-2018-14395 # 3.4.3-r0: # - CVE-2018-7557 # - CVE-2018-7751 # - CVE-2018-10001 # - CVE-2018-12458 # - CVE-2018-13300 # - CVE-2018-13302 # - CVE-2018-14394 # 3.3.4-r0: # - CVE-2017-14054 # - CVE-2017-14055 # - CVE-2017-14056 # - CVE-2017-14057 # - CVE-2017-14058 # - CVE-2017-14059 # - CVE-2017-14169 # - CVE-2017-14170 # - CVE-2017-14171 # - CVE-2017-14222 # - CVE-2017-14223 # - CVE-2017-14225 case "$CARCH" in x86|armhf|armv7) _svt_av1="" ;; *) makedepends="$makedepends svt-av1-dev" _svt_av1="--enable-libsvtav1" esac build() { case "$CARCH" in x86) local asm="--disable-asm" ;; esac ./configure \ --prefix=/usr \ --disable-librtmp \ --disable-lzma \ --disable-static \ --disable-stripping \ --enable-avfilter \ --enable-gnutls \ --enable-gpl \ --enable-libaom \ --enable-libass \ --enable-libdav1d \ --enable-libdrm \ --enable-libfontconfig \ --enable-libfreetype \ --enable-libfribidi \ --enable-libjxl \ --enable-libmp3lame \ --enable-libopus \ --enable-libpulse \ --enable-librist \ --enable-libsoxr \ --enable-libsrt \ --enable-libssh \ --enable-libtheora \ --enable-libv4l2 \ --enable-libvidstab \ --enable-libvorbis \ --enable-libvpx \ --enable-libwebp \ --enable-libx264 \ --enable-libx265 \ --enable-libxcb \ --enable-libxvid \ --enable-libzmq \ --enable-lto \ --enable-pic \ --enable-postproc \ --enable-pthreads \ --enable-shared \ --enable-vaapi \ --enable-vdpau \ --enable-vulkan \ --optflags="-O2" \ $asm \ $_svt_av1 make } # https://ffmpeg.org/fate.html check() { ./configure \ --samples=fate-suite/ make fate-rsync make fate-list make fate } package() { make DESTDIR="$pkgdir" install # libs only, ffmpeg cli in main ffmpeg rm -rf "$pkgdir"/usr/bin rm -rf "$pkgdir"/usr/share } libavcodec() { pkgdesc="$pkgdesc (libavcodec library)" # during an upgrade, these 5 libs would be overwriting the old main ffmpeg # ones, when kept replaces="ffmpeg-libavcodec" amove usr/lib/libavcodec.so.* } libavdevice() { pkgdesc="$pkgdesc (libavdevice library)" replaces="ffmpeg-libavdevice" amove usr/lib/libavdevice.so.* } libavfilter() { pkgdesc="$pkgdesc (libavfilter library)" replaces="ffmpeg-libavfilter" amove usr/lib/libavfilter.so.* } libavformat() { pkgdesc="$pkgdesc (libavformat library)" replaces="ffmpeg-libavformat" amove usr/lib/libavformat.so.* } libavutil() { pkgdesc="$pkgdesc (libavutil library)" replaces="ffmpeg-libavutil" amove usr/lib/libavutil.so.* } libpostproc() { pkgdesc="$pkgdesc (libpostproc library)" replaces="ffmpeg-libpostproc" amove usr/lib/libpostproc.so.* } libswresample() { pkgdesc="$pkgdesc (libswresample library)" replaces="ffmpeg-libswresample" amove usr/lib/libswresample.so.* } libswscale() { pkgdesc="$pkgdesc (libswscale library)" replaces="ffmpeg-libswscale" amove usr/lib/libswscale.so.* } sha512sums=" 04d9ae2a0e9238c469941d2bb9929d59b58f4be3830846cf91b02a440da17803a04b147a4e0168c9ffd6f62ca82187508bc7b53255de9787a97168278e903b9b ffmpeg-5.1.2.tar.xz 1047a23eda51b576ac200d5106a1cd318d1d5291643b3a69e025c0a7b6f3dbc9f6eb0e1e6faa231b7e38c8dd4e49a54f7431f87a93664da35825cc2e9e8aedf4 0001-libavutil-clean-up-unused-FF_SYMVER-macro.patch 38443b570cf32b2ba8ffa9ecc5480425c7da9f93f9773fbb3f9ec5f603b369b6225f4329a1b1f34d0ef30b2c9730f25ff9cff31315ed0a89a600df8e53bd54bf 0001-ffbuild-libversion.sh-add-shebang.patch 2804a3317a9c5fbc793af1dc7b9c13113bf8fd232f14a580ad98f25d848edf93015fd08c0aad0316e3a5439aef88ef15be3520dcbfe844791a5f03490a4c7f0b add-av_stream_get_first_dts-for-chromium.patch 47dda03ef3fddac1f79998bd07044dd907f9ac311737071546cb5cf6b6c51e29dd39cc4458bb07cab049e8ed497358c1e03a4fab07c6c66d7cfeb782ab752e63 flto-auto.patch 9fec574848c9ac90f51f6bca18120f40a22f6f737677a57d21bd07867f9e6619c146d8aa1cdac8d11ec53de87e7119316369874d3492b256f295b98b1b5df762 hwcontext_vulkan-remove-optional-encode-decode-extensions.patch "