aboutsummaryrefslogtreecommitdiffstats
path: root/community/ffmpeg/APKBUILD
diff options
context:
space:
mode:
Diffstat (limited to 'community/ffmpeg/APKBUILD')
-rw-r--r--community/ffmpeg/APKBUILD256
1 files changed, 211 insertions, 45 deletions
diff --git a/community/ffmpeg/APKBUILD b/community/ffmpeg/APKBUILD
index c7b1f17d577..1ef551406e5 100644
--- a/community/ffmpeg/APKBUILD
+++ b/community/ffmpeg/APKBUILD
@@ -3,23 +3,31 @@
# Contributor: Jakub Skrzypnik <j.skrzypnik@openmailbox.org>
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=ffmpeg
-pkgver=4.4
+pkgver=6.1.1
pkgrel=4
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"
-options="!check" # tests/data/hls-lists.append.m3u8 fails
-subpackages="$pkgname-dev $pkgname-doc $pkgname-libs"
makedepends="
alsa-lib-dev
aom-dev
bzip2-dev
coreutils
- gnutls-dev
+ dav1d-dev
+ fontconfig-dev
+ freetype-dev
+ fribidi-dev
+ harfbuzz-dev
imlib2-dev
+ ladspa-dev
lame-dev
libass-dev
+ libbluray-dev
+ libdrm-dev
+ libopenmpt-dev
+ libplacebo-dev
+ librist-dev
libsrt-dev
libssh-dev
libtheora-dev
@@ -29,30 +37,80 @@ makedepends="
libvpx-dev
libwebp-dev
libxfixes-dev
+ libxml2-dev
+ lilv-dev
+ nasm
+ openssl-dev
opus-dev
perl-dev
+ pulseaudio-dev
+ rav1e-dev
sdl2-dev
soxr-dev
v4l-utils-dev
+ vidstab-dev
+ vulkan-loader-dev
x264-dev
x265-dev
xvidcore-dev
- yasm
+ zeromq-dev
+ zimg-dev
zlib-dev
- dav1d-dev
- vidstab-dev
- vulkan-loader-dev
"
checkdepends="rsync"
+subpackages="
+ ffplay
+ $pkgname-dev
+ $pkgname-doc
+ $pkgname-libavcodec
+ $pkgname-libavdevice
+ $pkgname-libavfilter
+ $pkgname-libavformat
+ $pkgname-libavutil
+ $pkgname-libpostproc
+ $pkgname-libswresample
+ $pkgname-libswscale
+ $pkgname-libs
+ "
source="https://ffmpeg.org/releases/ffmpeg-$pkgver.tar.xz
- 0001-libavutil-clean-up-unused-FF_SYMVER-macro.patch
- CVE-2021-33815.patch
0001-ffbuild-libversion.sh-add-shebang.patch
+ add-av_stream_get_first_dts-for-chromium.patch
+ v4l-ioctl.patch
"
+options="!check" # tests/data/hls-lists.append.m3u8 fails
# secfixes:
+# 6.1-r0:
+# - CVE-2023-47470
+# - CVE-2023-46407
+# 6.0.1-r0:
+# - CVE-2023-47342
+# 6.0-r0:
+# - CVE-2022-3965
+# 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:
@@ -116,54 +174,95 @@ source="https://ffmpeg.org/releases/ffmpeg-$pkgver.tar.xz
# - CVE-2017-14223
# - CVE-2017-14225
-build() {
- local _dbg="--disable-debug"
- local _asm=""
- [ -n "$DEBUG" ] && _dbg="--enable-debug"
+case "$CARCH" in
+x86|armhf|armv7)
+ ;;
+*)
+ makedepends="$makedepends svt-av1-dev"
+ _svt_av1="--enable-libsvtav1"
+ ;;
+esac
+case "$CARCH" in
+s390x)
+ ;;
+*)
+ makedepends="$makedepends libjxl-dev"
+ _jxl="--enable-libjxl"
+ ;;
+esac
+
+case "$CARCH" in
+x86_64)
+ makedepends="$makedepends onevpl-dev"
+ _onevpl="--enable-libvpl"
+ ;;
+esac
+
+build() {
case "$CARCH" in
- x86) _asm="--disable-asm" ;;
- mips*) _asm="--disable-asm --disable-inline-asm --disable-mipsdsp --disable-mipsdspr2 --disable-msa --disable-msa2 --disable-mipsfpu --disable-mips64r6 --disable-mips64r2" ;;
+ x86) local asm="--disable-asm" ;;
esac
./configure \
--prefix=/usr \
- --enable-avresample \
+ --disable-librtmp \
+ --disable-lzma \
+ --disable-static \
+ --disable-stripping \
--enable-avfilter \
- --enable-gnutls \
--enable-gpl \
+ --enable-ladspa \
+ --enable-libaom \
--enable-libass \
+ --enable-libbluray \
+ --enable-libdav1d \
+ --enable-libdrm \
+ --enable-libfontconfig \
+ --enable-libfreetype \
+ --enable-libfribidi \
+ --enable-libharfbuzz \
--enable-libmp3lame \
+ --enable-libopenmpt \
+ --enable-libopus \
+ --enable-libplacebo \
+ --enable-libpulse \
+ --enable-librav1e \
+ --enable-librist \
+ --enable-libsoxr \
+ --enable-libsrt \
+ --enable-libssh \
+ --enable-libtheora \
+ --enable-libv4l2 \
+ --enable-libvidstab \
--enable-libvorbis \
--enable-libvpx \
- --enable-libxvid \
+ --enable-libwebp \
--enable-libx264 \
--enable-libx265 \
- --enable-libtheora \
- --enable-libv4l2 \
- --enable-libdav1d \
- --enable-postproc \
+ --enable-libxcb \
+ --enable-libxml2 \
+ --enable-libxvid \
+ --enable-libzimg \
+ --enable-libzmq \
+ --enable-lto=auto \
+ --enable-lv2 \
+ --enable-openssl \
--enable-pic \
+ --enable-postproc \
--enable-pthreads \
--enable-shared \
- --enable-libxcb \
- --enable-libsrt \
- --enable-libssh \
- --enable-libvidstab \
- --disable-stripping \
- --disable-static \
- --disable-librtmp \
- --enable-libaom \
- --enable-libopus \
- --enable-libsoxr \
- --enable-libwebp \
--enable-vaapi \
--enable-vdpau \
+ --enable-version3 \
--enable-vulkan \
- $_asm $_dbg
+ --optflags="-O3" \
+ $_jxl \
+ $asm \
+ $_svt_av1 \
+ $_onevpl
make
- ${CC:-gcc} -o tools/qt-faststart $CFLAGS tools/qt-faststart.c
- make doc/ffmpeg.1 doc/ffplay.1
+ ${CC:-gcc} -o tools/qt-faststart $CFLAGS $LDFLAGS tools/qt-faststart.c
}
# https://ffmpeg.org/fate.html
@@ -178,19 +277,86 @@ check() {
package() {
make DESTDIR="$pkgdir" install install-man
install -D -m755 tools/qt-faststart "$pkgdir/usr/bin/qt-faststart"
-# strip --strip-debug "$pkgdir"/usr/lib/*.a
+}
+
+doc() {
+ default_doc
+
+ amove usr/share/ffmpeg/examples
+}
+
+libavcodec() {
+ pkgdesc="$pkgdesc (libavcodec library)"
+
+ amove usr/lib/libavcodec.so.*
+}
+
+libavdevice() {
+ pkgdesc="$pkgdesc (libavdevice library)"
+
+ amove usr/lib/libavdevice.so.*
+}
+
+libavfilter() {
+ pkgdesc="$pkgdesc (libavfilter library)"
+
+ amove usr/lib/libavfilter.so.*
+}
+
+libavformat() {
+ pkgdesc="$pkgdesc (libavformat library)"
+
+ amove usr/lib/libavformat.so.*
+}
+
+libavutil() {
+ pkgdesc="$pkgdesc (libavutil library)"
+
+ amove usr/lib/libavutil.so.*
+}
+
+libpostproc() {
+ pkgdesc="$pkgdesc (libpostproc library)"
+
+ amove usr/lib/libpostproc.so.*
+}
+
+libswresample() {
+ pkgdesc="$pkgdesc (libswresample library)"
+
+ amove usr/lib/libswresample.so.*
+}
+
+libswscale() {
+ pkgdesc="$pkgdesc (libswscale library)"
+
+ amove usr/lib/libswscale.so.*
}
libs() {
- pkgdesc="Libraries for ffmpeg"
- replaces="ffmpeg"
- mkdir -p "$subpkgdir"/usr
- mv "$pkgdir"/usr/lib "$subpkgdir"/usr
+ pkgdesc="compat hack for all ffmpeg libs"
+
+ mkdir -p "$subpkgdir"
+ depends="
+ $pkgname-libavcodec=$pkgver-r$pkgrel
+ $pkgname-libavdevice=$pkgver-r$pkgrel
+ $pkgname-libavfilter=$pkgver-r$pkgrel
+ $pkgname-libavformat=$pkgver-r$pkgrel
+ $pkgname-libavutil=$pkgver-r$pkgrel
+ $pkgname-libpostproc=$pkgver-r$pkgrel
+ $pkgname-libswresample=$pkgver-r$pkgrel
+ $pkgname-libswscale=$pkgver-r$pkgrel
+ "
+}
+
+ffplay() {
+ pkgdesc="$pkgdesc (example media player)"
+ amove usr/bin/ffplay
}
sha512sums="
-4f9e99958904bf1b99b4b17e2104729dfe67e0080cac525137597974597ff265c9847eb1be0771aa443c85691025bc0747d213e6c1281f7b67d18d8b0e8c5080 ffmpeg-4.4.tar.xz
-1047a23eda51b576ac200d5106a1cd318d1d5291643b3a69e025c0a7b6f3dbc9f6eb0e1e6faa231b7e38c8dd4e49a54f7431f87a93664da35825cc2e9e8aedf4 0001-libavutil-clean-up-unused-FF_SYMVER-macro.patch
-ebcae42657870fff5542bed2b06f07c9f5cce1bd324842a3c0b1c6d12c72fbb66e00e7354d558c359331cf2c74bd8309b26d8460a9b6f2ef743f1ad0e9b1024d CVE-2021-33815.patch
+fca3f8635f29182e3ae0fe843a8a53614e4b47e22c11508df3ff7cdbafbb4b5ee0d82d9b3332871f7c1032033b1cad2f67557d7c5f7f7d85e2adadca122965d5 ffmpeg-6.1.1.tar.xz
38443b570cf32b2ba8ffa9ecc5480425c7da9f93f9773fbb3f9ec5f603b369b6225f4329a1b1f34d0ef30b2c9730f25ff9cff31315ed0a89a600df8e53bd54bf 0001-ffbuild-libversion.sh-add-shebang.patch
+2804a3317a9c5fbc793af1dc7b9c13113bf8fd232f14a580ad98f25d848edf93015fd08c0aad0316e3a5439aef88ef15be3520dcbfe844791a5f03490a4c7f0b add-av_stream_get_first_dts-for-chromium.patch
+c73d751e5d2a8214f0beb1b48fac6829903d46ad7db0dddddf47013193efce487825de495a24408d9a8e3c7f78f15fe62a6c14b54efc80e63dde9903cf08e918 v4l-ioctl.patch
"