Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ffmpeg6: wave2 #51369

Closed
wants to merge 25 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
25 commits
Select commit Hold shift + click to select a range
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 0 additions & 2 deletions common/shlibs
Original file line number Diff line number Diff line change
Expand Up @@ -2505,8 +2505,6 @@ libsybdb.so.5 freetds-0.95.19_1
libqqwing.so.2 qqwing-1.3.4_1
libiniparser.so.4 iniparser-4.2.4_1
libzita-resampler.so.1 zita-resampler-1.3.0_1
libmlt.so.6 mlt-6.4.1_1
libmlt++.so.3 mlt-6.4.1_1
libmlt++-7.so.7 mlt7-7.0.1_1
libmlt-7.so.7 mlt7-7.0.1_1
libunibilium.so.4 unibilium-2.0.0_1
Expand Down
4 changes: 2 additions & 2 deletions srcpkgs/QMPlay2/template
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
# Template file for 'QMPlay2'
pkgname=QMPlay2
version=24.06.16
revision=1
revision=2
build_style=cmake
hostmakedepends="pkg-config qt5-qmake qt5-host-tools"
makedepends="alsa-lib-devel ffmpeg-devel libass-devel libcdio-devel libgme-devel
makedepends="alsa-lib-devel ffmpeg6-devel libass-devel libcdio-devel libgme-devel
libsidplayfp-devel libva-glx-devel libXv-devel pulseaudio-devel
qt5-svg-devel qt5-tools-devel qt5-x11extras-devel taglib-devel
libcdio-paranoia-devel qt5-declarative-devel"
Expand Down
43 changes: 43 additions & 0 deletions srcpkgs/audacious-plugins/patches/ffmpeg5.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
commit 298aa371c56c2f52c25a33d9bdec4918b11cebdc
Author: tibequadorian <tibequadorian@posteo.de>
Date: Sat Mar 19 18:40:12 2022 +0100

audacious-plugins: rebuild against ffmpeg-5.0

diff --git a/srcpkgs/audacious-plugins/patches/ffmpeg-5.0.patch b/srcpkgs/audacious-plugins/patches/ffmpeg-5.0.patch
new file mode 100644
index 0000000000..617c11215b
--- /dev/null
+++ b/srcpkgs/audacious-plugins/patches/ffmpeg-5.0.patch
@@ -0,0 +1,31 @@
+From f60beb400eeb1e4778bbfd738bc4a4ccef3de539 Mon Sep 17 00:00:00 2001
+From: John Lindgren <john@jlindgren.net>
+Date: Sat, 5 Mar 2022 12:05:34 -0500
+Subject: [PATCH] Fix build with FFmpeg 5.0
+
+---
+ src/ffaudio/ffaudio-core.cc | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/ffaudio/ffaudio-core.cc b/src/ffaudio/ffaudio-core.cc
+index 16dc63e3a..a2b95fd6c 100644
+--- a/src/ffaudio/ffaudio-core.cc
++++ b/src/ffaudio/ffaudio-core.cc
+@@ -274,7 +274,7 @@ static AVInputFormat * get_format_by_content (const char * name, VFSFile & file)
+ AVProbeData d = {name, buf, filled};
+ score = target;
+
+- f = av_probe_input_format2 (& d, true, & score);
++ f = (AVInputFormat *) av_probe_input_format2 (& d, true, & score);
+ if (f)
+ break;
+
+@@ -347,7 +347,7 @@ static bool find_codec (AVFormatContext * c, CodecInfo * cinfo)
+ #endif
+ if (stream && stream->codecpar && stream->codecpar->codec_type == AVMEDIA_TYPE_AUDIO)
+ {
+- AVCodec * codec = avcodec_find_decoder (stream->codecpar->codec_id);
++ AVCodec * codec = (AVCodec *) avcodec_find_decoder (stream->codecpar->codec_id);
+
+ if (codec)
+ {
4 changes: 2 additions & 2 deletions srcpkgs/audacious-plugins/template
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,12 @@
# Keep in sync with audacious and audacious-base
pkgname=audacious-plugins
version=4.4
revision=1
revision=2
build_style=meson
configure_args="$(vopt_bool gtk) $(vopt_bool qt)"
hostmakedepends="gettext pkg-config glib-devel $(vopt_if qt qt6-tools)"
makedepends="audacious-base-devel alsa-lib-devel pulseaudio-devel jack-devel
lame-devel libvorbis-devel libflac-devel mpg123-devel faad2-devel ffmpeg-devel
lame-devel libvorbis-devel libflac-devel mpg123-devel faad2-devel ffmpeg6-devel
libmodplug-devel fluidsynth-devel libcdio-paranoia-devel wavpack-devel libnotify-devel
libcurl-devel libmtp-devel neon-devel libmms-devel libxml2-devel opus-devel opusfile-devel
libbs2b-devel libsoxr-devel libsidplayfp-devel libcue-devel libopenmpt-devel pipewire-devel
Expand Down
73 changes: 73 additions & 0 deletions srcpkgs/avidemux/files/negative-shift.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@

From effadce6c756247ea8bae32dc13bb3e6f464f0eb Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?R=C3=A9mi=20Denis-Courmont?= <remi@remlab.net>
Date: Sun, 16 Jul 2023 18:18:02 +0300
Subject: [PATCH] avcodec/x86/mathops: clip constants used with shift
instructions within inline assembly

Fixes assembling with binutil as >= 2.41

Signed-off-by: James Almer <jamrial@gmail.com>
---
libavcodec/x86/mathops.h | 26 +++++++++++++++++++++++---
1 file changed, 23 insertions(+), 3 deletions(-)

diff --git a/libavcodec/x86/mathops.h b/libavcodec/x86/mathops.h
index 6298f5ed1983b..ca7e2dffc1076 100644
--- libavcodec/x86/mathops.h
+++ libavcodec/x86/mathops.h
@@ -35,12 +35,20 @@
static av_always_inline av_const int MULL(int a, int b, unsigned shift)
{
int rt, dummy;
+ if (__builtin_constant_p(shift))
__asm__ (
"imull %3 \n\t"
"shrdl %4, %%edx, %%eax \n\t"
:"=a"(rt), "=d"(dummy)
- :"a"(a), "rm"(b), "ci"((uint8_t)shift)
+ :"a"(a), "rm"(b), "i"(shift & 0x1F)
);
+ else
+ __asm__ (
+ "imull %3 \n\t"
+ "shrdl %4, %%edx, %%eax \n\t"
+ :"=a"(rt), "=d"(dummy)
+ :"a"(a), "rm"(b), "c"((uint8_t)shift)
+ );
return rt;
}

@@ -113,19 +121,31 @@ __asm__ volatile(\
// avoid +32 for shift optimization (gcc should do that ...)
#define NEG_SSR32 NEG_SSR32
static inline int32_t NEG_SSR32( int32_t a, int8_t s){
+ if (__builtin_constant_p(s))
__asm__ ("sarl %1, %0\n\t"
: "+r" (a)
- : "ic" ((uint8_t)(-s))
+ : "i" (-s & 0x1F)
);
+ else
+ __asm__ ("sarl %1, %0\n\t"
+ : "+r" (a)
+ : "c" ((uint8_t)(-s))
+ );
return a;
}

#define NEG_USR32 NEG_USR32
static inline uint32_t NEG_USR32(uint32_t a, int8_t s){
+ if (__builtin_constant_p(s))
__asm__ ("shrl %1, %0\n\t"
: "+r" (a)
- : "ic" ((uint8_t)(-s))
+ : "i" (-s & 0x1F)
);
+ else
+ __asm__ ("shrl %1, %0\n\t"
+ : "+r" (a)
+ : "c" ((uint8_t)(-s))
+ );
return a;
}
26 changes: 26 additions & 0 deletions srcpkgs/avidemux/patches/musl-nullptr.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
--- a/avidemux_plugins/ADM_muxers/muxerMp4/muxerMP4Config.cpp
+++ b/avidemux_plugins/ADM_muxers/muxerMp4/muxerMP4Config.cpp
@@ -34,17 +34,17 @@
bool force = muxerConfig.forceAspectRatio;

#ifndef MUXER_IS_MOV
- diaMenuEntry format[]={{MP4_MUXER_MP4,"MP4"},{MP4_MUXER_PSP,"PSP"},NULL};
+ diaMenuEntry format[]={{MP4_MUXER_MP4,"MP4"},{MP4_MUXER_PSP,"PSP"},0};
diaElemMenu menuFormat(&fmt,QT_TRANSLATE_NOOP("mp4muxer","Muxing Format"),2,format,"");
diaMenuEntry streamOpt[]={
- {MP4_MUXER_OPT_NONE,QT_TRANSLATE_NOOP("mp4muxer","No optimization"),NULL},
- {MP4_MUXER_OPT_FASTSTART,QT_TRANSLATE_NOOP("mp4muxer","Move index to the beginning of the file"),NULL},
- {MP4_MUXER_OPT_FRAGMENT,QT_TRANSLATE_NOOP("mp4muxer","Use fragmentation"),NULL}
+ {MP4_MUXER_OPT_NONE,QT_TRANSLATE_NOOP("mp4muxer","No optimization"),0},
+ {MP4_MUXER_OPT_FASTSTART,QT_TRANSLATE_NOOP("mp4muxer","Move index to the beginning of the file"),0},
+ {MP4_MUXER_OPT_FRAGMENT,QT_TRANSLATE_NOOP("mp4muxer","Use fragmentation"),0}
};
#else
diaMenuEntry streamOpt[]={
- {MP4_MUXER_OPT_NONE,QT_TRANSLATE_NOOP("mp4muxer","No optimization"),NULL},
- {MP4_MUXER_OPT_FASTSTART,QT_TRANSLATE_NOOP("mp4muxer","Move index to the beginning of the file"),NULL}
+ {MP4_MUXER_OPT_NONE,QT_TRANSLATE_NOOP("mp4muxer","No optimization"),0},
+ {MP4_MUXER_OPT_FASTSTART,QT_TRANSLATE_NOOP("mp4muxer","Move index to the beginning of the file"),0}
};

#endif
25 changes: 18 additions & 7 deletions srcpkgs/avidemux/template
Original file line number Diff line number Diff line change
@@ -1,38 +1,49 @@
# Template file for 'avidemux'
pkgname=avidemux
version=2.8.0
revision=2
version=2.8.1
revision=1
# Can't be compiled for aarch64, arm* or mips*
archs="x86_64* i686*"
hostmakedepends="cmake pkg-config qt5-host-tools qt5-devel tar yasm"
makedepends="alsa-lib-devel faac-devel faad2-devel gettext-devel jack-devel glu-devel
lame-devel libass-devel libdca-devel libvorbis-devel libXv-devel
vapoursynth-devel libmp4v2-devel sqlite-devel libva-devel libvdpau-devel
qt5-multimedia-devel qt5-script-devel qt5-tools-devel ffmpeg-devel
qt5-multimedia-devel qt5-script-devel qt5-tools-devel ffmpeg6-devel
liba52-devel libmad-devel x264-devel x265-devel xvidcore-devel"
short_desc="Video editing and processing application"
maintainer="Orphaned <orphan@voidlinux.org>"
license="GPL-2.0-or-later"
homepage="http://avidemux.sourceforge.net/"
changelog="http://avidemux.sourceforge.net/news.html"
distfiles="${SOURCEFORGE_SITE}/avidemux/avidemux/${version}/${pkgname}_${version}.tar.gz"
checksum=d1ec6f5277e51228ecf0ee1ca89fae24c591f520f87ce96fabec8818d04de33b
checksum=77d9bdca8683ce57c192b69d207cfab7cf92a7759ce0f63fa37b5c8e42ad3da2

# On i686 the build fails with "error: 'asm' operand has impossible constraints"
# due to not enough available CPU registers. Using the -fno-PIC flag frees up
# one additional register for the compiler/assembler to use.
case "${XBPS_TARGET_MACHINE}" in
i686*) CFLAGS="-fno-PIC";;
i686*) CFLAGS="-fno-PIC" ;;
esac

# uses parts of an internal ffmpeg4.4.2 tar
post_extract() {
cp ${FILESDIR}/*patch ${wrksrc}/avidemux_core/ffmpeg_package/patches/
}

# soundtouch fails to use 128bit xmm registers on i686
# deadbeef has a similar problem
do_configure() {
case "${XBPS_TARGET_MACHINE}" in
i686*)
vsed '1iADD_DEFINITIONS(-DSOUNDTOUCH_DISABLE_X86_OPTIMIZATIONS=1)' \
-i avidemux/common/ADM_audioFilter/src/CMakeLists.txt ;;
esac
MAKEFLAGS=${makejobs} \
bash bootStrap.bash \
--with-system-libass \
--with-system-liba52 \
--with-system-libmad \
--with-system-libmp4v2 \
${cross_compile}
--with-system-libmp4v2
}

do_install() {
Expand Down
6 changes: 3 additions & 3 deletions srcpkgs/goldendict/template
Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
# Template file for 'goldendict'
pkgname=goldendict
version=1.5.0
revision=1
revision=2
build_style=qmake
configure_args="CONFIG+=zim_support goldendict.pro"
hostmakedepends="qt5-qmake pkg-config qt5-host-tools"
makedepends="tiff-devel qt5-devel libvorbis-devel zlib-devel
libXtst-devel hunspell-devel qt5-tools-devel qt5-declarative-devel
qt5-webkit-devel lzo-devel bzip2-devel libao-devel qt5-svg-devel
libeb-devel qt5-x11extras-devel ffmpeg-devel liblzma-devel
libeb-devel qt5-x11extras-devel ffmpeg6-devel liblzma-devel
qt5-multimedia-devel"
short_desc="A feature-rich dictionary lookup program"
short_desc="Feature-rich dictionary lookup program"
maintainer="John <me@johnnynator.dev>"
license="GPL-3.0-or-later"
homepage="http://goldendict.org/"
Expand Down
Loading
Loading