ffmpeg: update to 4.4.

This commit is contained in:
Andrew Benson 2021-10-14 11:09:51 -05:00 committed by Andrew Benson
parent e245ebb8e1
commit e3b8a8d4d5
3 changed files with 11 additions and 127 deletions

View file

@ -1,41 +0,0 @@
From 2687070d9b092d3a354a6963c65197054ddf7a75 Mon Sep 17 00:00:00 2001
From: Carl Eugen Hoyos <ceffmpeg@gmail.com>
Date: Sat, 23 Jan 2021 19:33:13 +0100
Subject: [PATCH] lsws/ppc/yuv2rgb: Fix transparency converting from
yuv->rgb32.
MIME-Version: 1.0
Content-Type: text/plain; charset=utf8
Content-Transfer-Encoding: 8bit
Based on 68363b69 by Reimar Döffinger.
Fixes ticket #9077.
---
libswscale/ppc/yuv2rgb_altivec.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/libswscale/ppc/yuv2rgb_altivec.c b/libswscale/ppc/yuv2rgb_altivec.c
index 58e480dd2c..4f5382e4c1 100644
--- a/libswscale/ppc/yuv2rgb_altivec.c
+++ b/libswscale/ppc/yuv2rgb_altivec.c
@@ -425,13 +425,13 @@ static int altivec_ ## name(SwsContext *c, const unsigned char **in, \
}
#define out_abgr(a, b, c, ptr) \
- vec_mstrgb32(__typeof__(a), ((__typeof__(a)) { 255 }), c, b, a, ptr)
+ vec_mstrgb32(__typeof__(a), ((__typeof__(a)) vec_splat((__typeof__(a)){ 255 }, 0)), c, b, a, ptr)
#define out_bgra(a, b, c, ptr) \
- vec_mstrgb32(__typeof__(a), c, b, a, ((__typeof__(a)) { 255 }), ptr)
+ vec_mstrgb32(__typeof__(a), c, b, a, ((__typeof__(a)) vec_splat((__typeof__(a)){ 255 }, 0)), ptr)
#define out_rgba(a, b, c, ptr) \
- vec_mstrgb32(__typeof__(a), a, b, c, ((__typeof__(a)) { 255 }), ptr)
+ vec_mstrgb32(__typeof__(a), a, b, c, ((__typeof__(a)) vec_splat((__typeof__(a)){ 255 }, 0)), ptr)
#define out_argb(a, b, c, ptr) \
- vec_mstrgb32(__typeof__(a), ((__typeof__(a)) { 255 }), a, b, c, ptr)
+ vec_mstrgb32(__typeof__(a), ((__typeof__(a)) vec_splat((__typeof__(a)){ 255 }, 0)), a, b, c, ptr)
#define out_rgb24(a, b, c, ptr) vec_mstrgb24(a, b, c, ptr)
#define out_bgr24(a, b, c, ptr) vec_mstbgr24(a, b, c, ptr)
--
2.20.1

View file

@ -1,83 +0,0 @@
Upstream: Yes, https://github.com/FFmpeg/FFmpeg/commit/3e098cca6e51db0f19928c12d0348deaa17137b3
From 3e098cca6e51db0f19928c12d0348deaa17137b3 Mon Sep 17 00:00:00 2001
From: Lynne <dev@lynne.ee>
Date: Tue, 7 Jul 2020 16:01:58 +0100
Subject: [PATCH] aarch64/yuv2rgb_neon: fix return value
We return 0 for this particular architecture but should instead be
returning the number of lines.
Fixes users who check the return value matches what they expect.
---
libswscale/aarch64/swscale_unscaled.c | 31 ++++++++++++---------------
libswscale/aarch64/yuv2rgb_neon.S | 2 ++
2 files changed, 16 insertions(+), 17 deletions(-)
diff --git a/libswscale/aarch64/swscale_unscaled.c b/libswscale/aarch64/swscale_unscaled.c
index 551daad9e353..c7a2a1037df8 100644
--- a/libswscale/aarch64/swscale_unscaled.c
+++ b/libswscale/aarch64/swscale_unscaled.c
@@ -42,15 +42,14 @@ static int ifmt##_to_##ofmt##_neon_wrapper(SwsContext *c, const uint8_t *src[],
uint8_t *dst[], int dstStride[]) { \
const int16_t yuv2rgb_table[] = { YUV_TO_RGB_TABLE }; \
\
- ff_##ifmt##_to_##ofmt##_neon(c->srcW, srcSliceH, \
- dst[0] + srcSliceY * dstStride[0], dstStride[0], \
- src[0], srcStride[0], \
- src[1], srcStride[1], \
- src[2], srcStride[2], \
- yuv2rgb_table, \
- c->yuv2rgb_y_offset >> 6, \
- c->yuv2rgb_y_coeff); \
- return 0; \
+ return ff_##ifmt##_to_##ofmt##_neon(c->srcW, srcSliceH, \
+ dst[0] + srcSliceY * dstStride[0], dstStride[0], \
+ src[0], srcStride[0], \
+ src[1], srcStride[1], \
+ src[2], srcStride[2], \
+ yuv2rgb_table, \
+ c->yuv2rgb_y_offset >> 6, \
+ c->yuv2rgb_y_coeff); \
} \
#define DECLARE_FF_YUVX_TO_ALL_RGBX_FUNCS(yuvx) \
@@ -76,14 +75,12 @@ static int ifmt##_to_##ofmt##_neon_wrapper(SwsContext *c, const uint8_t *src[],
uint8_t *dst[], int dstStride[]) { \
const int16_t yuv2rgb_table[] = { YUV_TO_RGB_TABLE }; \
\
- ff_##ifmt##_to_##ofmt##_neon(c->srcW, srcSliceH, \
- dst[0] + srcSliceY * dstStride[0], dstStride[0], \
- src[0], srcStride[0], src[1], srcStride[1], \
- yuv2rgb_table, \
- c->yuv2rgb_y_offset >> 6, \
- c->yuv2rgb_y_coeff); \
- \
- return 0; \
+ return ff_##ifmt##_to_##ofmt##_neon(c->srcW, srcSliceH, \
+ dst[0] + srcSliceY * dstStride[0], dstStride[0], \
+ src[0], srcStride[0], src[1], srcStride[1], \
+ yuv2rgb_table, \
+ c->yuv2rgb_y_offset >> 6, \
+ c->yuv2rgb_y_coeff); \
} \
#define DECLARE_FF_NVX_TO_ALL_RGBX_FUNCS(nvx) \
diff --git a/libswscale/aarch64/yuv2rgb_neon.S b/libswscale/aarch64/yuv2rgb_neon.S
index b7446aa10511..f4b220fb608e 100644
--- a/libswscale/aarch64/yuv2rgb_neon.S
+++ b/libswscale/aarch64/yuv2rgb_neon.S
@@ -142,6 +142,7 @@
.macro declare_func ifmt ofmt
function ff_\ifmt\()_to_\ofmt\()_neon, export=1
load_args_\ifmt
+ mov w9, w1
1:
mov w8, w0 // w8 = width
2:
@@ -193,6 +194,7 @@ function ff_\ifmt\()_to_\ofmt\()_neon, export=1
increment_\ifmt
subs w1, w1, #1 // height -= 1
b.gt 1b
+ mov w0, w9
ret
endfunc
.endm

View file

@ -1,15 +1,15 @@
# Template file for 'ffmpeg'
# audacity also needs to be bumped when a new ffmpeg version bumps libavformat's soname!
pkgname=ffmpeg
version=4.3.2
revision=4
version=4.4
revision=1
short_desc="Decoding, encoding and streaming software"
maintainer="Orphaned <orphan@voidlinux.org>"
license="GPL-3.0-or-later"
homepage="https://www.ffmpeg.org"
changelog="https://raw.githubusercontent.com/FFmpeg/FFmpeg/master/Changelog"
distfiles="${homepage}/releases/ffmpeg-${version}.tar.xz"
checksum=46e4e64f1dd0233cbc0934b9f1c0da676008cad34725113fb7f802cfa84ccddb
checksum=06b10a183ce5371f915c6bb15b7b1fffbe046e8275099c96affc29e17645d909
hostmakedepends="pkg-config perl yasm"
makedepends="zlib-devel bzip2-devel freetype-devel alsa-lib-devel libXfixes-devel
@ -38,6 +38,10 @@ case "$XBPS_TARGET_MACHINE" in
mips*) CFLAGS="-mnan=legacy";;
esac
if [ "$XBPS_TARGET_NO_ATOMIC8" ]; then
makedepends+=" libatomic-devel"
fi
_apply_patch() {
local args="$1" pname="$(basename $2)"
@ -80,6 +84,10 @@ do_configure() {
ppc|ppc-musl) _args+=" --disable-altivec";;
esac
if [ "$XBPS_TARGET_NO_ATOMIC8" ]; then
_args+=" --extra-libs=-latomic"
fi
./configure --prefix=/usr --disable-debug --enable-gpl --enable-gnutls \
--disable-stripping \
--enable-libcdio --enable-version3 --enable-runtime-cpudetect \