summaryrefslogtreecommitdiff
path: root/user
diff options
context:
space:
mode:
Diffstat (limited to 'user')
-rw-r--r--user/ffmpeg/APKBUILD27
-rw-r--r--user/ffmpeg/altivec-fix.patch22
2 files changed, 35 insertions, 14 deletions
diff --git a/user/ffmpeg/APKBUILD b/user/ffmpeg/APKBUILD
index a963e33f8..50d5d6084 100644
--- a/user/ffmpeg/APKBUILD
+++ b/user/ffmpeg/APKBUILD
@@ -1,26 +1,26 @@
# Contributor: Sergei Lukin <sergej.lukin@gmail.com>
# Contributor: Łukasz Jendrysik <scadu@yandex.com>
# Contributor: Jakub Skrzypnik <j.skrzypnik@openmailbox.org>
-# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
+# Maintainer: A. Wilcox <awilfox@adelielinux.org>
pkgname=ffmpeg
-pkgver=3.4
-pkgrel=1
-pkgdesc="Complete and free Internet live audio and video broadcasting solution for Linux/Unix"
-url="http://ffmpeg.org/"
+pkgver=4.0.2
+pkgrel=0
+pkgdesc="Record, convert, and stream audio and video"
+url="https://ffmpeg.org/"
arch="all"
-license="GPL"
+license="GPL-2.0-only"
options="!check textrels" # Test suite requires proper licensing headers on all files,
- # which upstream does not provide.
+ # which upstream does not provide.
subpackages="$pkgname-dev $pkgname-doc $pkgname-libs"
makedepends="gnutls-dev lame-dev libvorbis-dev xvidcore-dev zlib-dev libvdpau-dev
imlib2-dev libtheora-dev coreutils bzip2-dev perl-dev libvpx-dev
pulseaudio-dev sdl2-dev libxfixes-dev libva-dev alsa-lib-dev rtmpdump-dev
v4l-utils-dev yasm opus-dev x265-dev xz-dev freetype-dev speex-dev
ladspa-dev libcdio-dev libcdio-paranoia-dev wavpack-dev libwebp-dev"
-source="http://ffmpeg.org/releases/ffmpeg-$pkgver.tar.xz
+source="https://ffmpeg.org/releases/ffmpeg-$pkgver.tar.xz
0001-libavutil-clean-up-unused-FF_SYMVER-macro.patch
+ altivec-fix.patch
"
-builddir="$srcdir/$pkgname-$pkgver"
# secfixes:
# 3.3.4-r0:
@@ -43,7 +43,6 @@ build() {
[ -n "$DEBUG" ] && _dbg="--enable-debug"
case "$CARCH" in
- x86 | arm*) _asm="--disable-asm" ;;
ppc64) _asm="--cpu=G5" ;;
esac
@@ -80,17 +79,16 @@ build() {
--enable-libwavpack \
--enable-libwebp \
--enable-libpulse \
+ --optflags="$CFLAGS" \
$_asm $_dbg
make
${CC:-gcc} -o tools/qt-faststart $CFLAGS tools/qt-faststart.c
- make doc/ffmpeg.1 doc/ffplay.1 doc/ffserver.1
}
package() {
cd "$builddir"
make DESTDIR="$pkgdir" install install-man
install -D -m755 tools/qt-faststart "$pkgdir/usr/bin/qt-faststart"
-# strip --strip-debug "$pkgdir"/usr/lib/*.a
}
libs() {
@@ -100,5 +98,6 @@ libs() {
mv "$pkgdir"/usr/lib "$subpkgdir"/usr
}
-sha512sums="357445f0152848d43f8a22f1078825bc44adacff9194e12cc78e8b5edac8e826bbdf73dc8b37e0f2a3036125b76b6b9190153760c761e63ebd2452a39e39536f ffmpeg-3.4.tar.xz
-32652e18d4eb231a2e32ad1cacffdf33264aac9d459e0e2e6dd91484fced4e1ca5a62886057b1f0b4b1589c014bbe793d17c78adbaffec195f9a75733b5b18cb 0001-libavutil-clean-up-unused-FF_SYMVER-macro.patch"
+sha512sums="2dc2b8c66d9c31b6d06da5da336ef45415e3c24fac8c9063cd47f7d4cf688ec4846f88cdd9e841b956cea81e56bb3c6b7655aef503400c7367c32910c28990ac ffmpeg-4.0.2.tar.xz
+32652e18d4eb231a2e32ad1cacffdf33264aac9d459e0e2e6dd91484fced4e1ca5a62886057b1f0b4b1589c014bbe793d17c78adbaffec195f9a75733b5b18cb 0001-libavutil-clean-up-unused-FF_SYMVER-macro.patch
+39b7c7346a45ef80ea1122bba2b228ed5e45189bf6f726bb4bf3c7839bb1c91e2358629f85f123106be7ab470ead91d16db2d85b9984093a26c71ed9a01e0d9d altivec-fix.patch"
diff --git a/user/ffmpeg/altivec-fix.patch b/user/ffmpeg/altivec-fix.patch
new file mode 100644
index 000000000..6356c60ef
--- /dev/null
+++ b/user/ffmpeg/altivec-fix.patch
@@ -0,0 +1,22 @@
+--- ffmpeg-4.0.2/libavcodec/ppc/hevcdsp.c.old 2018-07-18 13:52:01.000000000 +0000
++++ ffmpeg-4.0.2/libavcodec/ppc/hevcdsp.c 2018-07-19 08:24:42.480000000 +0000
+@@ -41,8 +41,8 @@
+ { 0x04, 0x05, 0x0C, 0x0D, 0x14, 0x15, 0x1C, 0x1D, 0x06, 0x07, 0x0E, 0x0F, 0x16, 0x17, 0x1E, 0x1F },
+ };
+
+-static void transform4x4(vec_s16 src_01, vec_s16 src_23, vec_s32 res[4],
+- const int shift, int16_t *coeffs)
++static inline void transform4x4(vec_s16 src_01, vec_s16 src_23, vec_s32 res[4],
++ const int shift, int16_t *coeffs)
+ {
+ vec_s16 src_02, src_13;
+ vec_s32 zero = vec_splat_s32(0);
+@@ -67,7 +67,7 @@
+ res[3] = vec_sub(e0, o0);
+ }
+
+-static void scale(vec_s32 res[4], vec_s16 res_packed[2], int shift)
++static inline void scale(vec_s32 res[4], vec_s16 res_packed[2], const int shift)
+ {
+ int i;
+ vec_u32 v_shift = vec_splat_u32(shift);