SHA256
1
0
forked from pool/ffmpeg-4

Accepting request 820572 from multimedia:libs

OBS-URL: https://build.opensuse.org/request/show/820572
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/ffmpeg-4?expand=0&rev=30
This commit is contained in:
Dominique Leuenberger 2020-07-15 09:32:30 +00:00 committed by Git OBS Bridge
commit 88a6afb18c
13 changed files with 190 additions and 1589 deletions

View File

@ -1,32 +0,0 @@
From 929e5159bc13da374b83f5627879c607acce180b Mon Sep 17 00:00:00 2001
From: Gilles Bouthenot <misc@atomas.com>
Date: Wed, 8 Jan 2020 19:47:55 +0100
Subject: [PATCH] avformat/id3v2enc: fix bad ID3v2 tag length
---
libavformat/id3v2enc.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
Index: ffmpeg-4.2.1/libavformat/id3v2enc.c
===================================================================
--- ffmpeg-4.2.1.orig/libavformat/id3v2enc.c
+++ ffmpeg-4.2.1/libavformat/id3v2enc.c
@@ -268,15 +268,15 @@ static int write_ctoc(AVFormatContext *s
if ((ret = avio_open_dyn_buf(&dyn_bc)) < 0)
goto fail;
- id3->len += avio_put_str(dyn_bc, "toc");
+ avio_put_str(dyn_bc, "toc");
avio_w8(dyn_bc, 0x03);
avio_w8(dyn_bc, s->nb_chapters);
for (int i = 0; i < s->nb_chapters; i++) {
snprintf(name, 122, "ch%d", i);
- id3->len += avio_put_str(dyn_bc, name);
+ avio_put_str(dyn_bc, name);
}
len = avio_close_dyn_buf(dyn_bc, &dyn_buf);
- id3->len += 16 + ID3v2_HEADER_SIZE;
+ id3->len += len + ID3v2_HEADER_SIZE;
avio_wb32(s->pb, MKBETAG('C', 'T', 'O', 'C'));
avio_wb32(s->pb, len);

View File

@ -1,9 +1,11 @@
libavcodec58 libavcodec58_91
libavdevice58 libavdevice58_10
libavfilter7 libavfilter7_85
libavformat58 libavformat58_45
libavresample4 libavresample4_0
libavutil56 obsoletes "libavresample4-<targettype> < <version>"
libpostproc55 provides "libavresample4-<targettype> = <version>"
libswresample3 libavutil56_51
libswscale5 libpostproc55_7
libswresample3_7
libswscale5_7

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:9df6c90aed1337634c1fb026fb01c154c29c82a64ea71291ff2da9aacb9aad31
size 9101192

View File

@ -1,11 +0,0 @@
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1
iQEcBAABCAAGBQJexrUWAAoJELQyLwTWdljYzyUIAKCrYZuodL55ImESh1AQsoGc
Ju/is8LniYbxakom+fQCiEhg/TpVkaOVssawGexeIaJ+idauS+W2NGMsBVLB4dGg
YhZJfUmYkapXAU4KTlUO62JDazOGqFgMtyTCtVnvo6mF5hwcJsELykQs1fj1ao38
5LEuW7n1rwB57P6y2wJYScKtQVJjsEONv6a2wHdzSxN461SFNzlPPTowAzDR3Dyu
KPV0n6OEfAinC5ZyzT/P6r733F/JChKbiMrkJmesR1wt/ZLI2MtItQxJX3ylx8B8
Z0UsJLcFgoQVSJbWMneMizjrYeBLRjHtRZwQlKj51vlc6kr9UCD3wh/SMoIoc5A=
=OK3T
-----END PGP SIGNATURE-----

3
ffmpeg-4.3.1.tar.xz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:ad009240d46e307b4e03a213a0f49c11b650e445b1f8be0dda2a9212b34d2ffb
size 9379424

11
ffmpeg-4.3.1.tar.xz.asc Normal file
View File

@ -0,0 +1,11 @@
-----BEGIN PGP SIGNATURE-----
iQFMBAABCAA2FiEE/PmG6hXm4pOlZE8QtDIvBNZ2WNgFAl8Jl1kYHGZmbXBlZy1k
ZXZlbEBmZm1wZWcub3JnAAoJELQyLwTWdljYeqMH/0oOMa5UQJuP9w3nxjuAI1rF
AhXFU7y1IKgHhxfYafkhcZphwbm3u8lpkI4E5dfG369WyE4Svi/t0+kI0iqEXQgn
0Vxk0gr79sTjoCm8HZssngo0ourLPWAJnoip6rdxlPB7bAEh69M3qX3xuKwSklw1
Vu3L3bpmie3lAKqqeRv7JMxkKpg6fZMeQP4f7LCWpIFYlCn93icYTTF28L5T89yB
mt8WcYIU2IO0FxEGlh6ayxrr+/ioG6N8iE1q7laBRAFVU/OsARY9M/6RHFMSrm42
4l65+Qh+IwQVzpFsnZ/S2iRD7QCZX+noAd+EH/S4vICNn+snBxIlxuYSDL6uqF4=
=AoNS
-----END PGP SIGNATURE-----

View File

@ -1,3 +1,33 @@
-------------------------------------------------------------------
Sun Jul 12 16:08:10 UTC 2020 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 4.3.1:
* Stable bug fix release, mainly codecs and format fixes.
-------------------------------------------------------------------
Sat Jul 4 22:09:51 UTC 2020 - Jan Engelhardt <jengelh@inai.de>
- Add soversion.patch to workaround ELF ABI breakage.
-------------------------------------------------------------------
Wed Jun 17 16:32:04 UTC 2020 - Jan Engelhardt <jengelh@inai.de>
- Update to release 4.3
* A plethora of new video filters
* Intel QSV-accelerated VP9 decoding
* VDPAU VP9 hwaccel
* QSV-accelerated VP9 encoding
* AV1 frame merge bitstream filter
* AV1 Annex B demuxer
* Expanded styling support for 3GPP Timed Text Subtitles
* Support for muxing PCM and PGS in M2TS
- Drop ffmpeg-prefer-dav1d-for-playback.patch
(solved differently)
- Drop ffmpeg4_swscale_replace_illegal_vector_keyword.patch,
ffmpeg4_swscale_fix_altivec_vsx_recent_gcc.patch,
929e5159bc13da374b83f5627879c607acce180b.patch
(merged)
------------------------------------------------------------------- -------------------------------------------------------------------
Fri Jun 5 16:21:42 UTC 2020 - Bjørn Lie <bjorn.lie@gmail.com> Fri Jun 5 16:21:42 UTC 2020 - Bjørn Lie <bjorn.lie@gmail.com>

View File

@ -92,7 +92,7 @@
%define _major_version 4 %define _major_version 4
%define _major_expected 5 %define _major_expected 5
Name: ffmpeg-4 Name: ffmpeg-4
Version: 4.2.3 Version: 4.3.1
Release: 0 Release: 0
Summary: Library for working with various multimedia formats Summary: Library for working with various multimedia formats
License: GPL-3.0-or-later License: GPL-3.0-or-later
@ -107,17 +107,11 @@ Source3: ffmpeg-4-rpmlintrc
Source4: enable_decoders Source4: enable_decoders
Source5: enable_encoders Source5: enable_encoders
Source99: baselibs.conf Source99: baselibs.conf
Patch2: ffmpeg-arm6l.diff Patch1: ffmpeg-arm6l.diff
Patch3: ffmpeg-new-coder-errors.diff Patch2: ffmpeg-new-coder-errors.diff
Patch4: ffmpeg-codec-choice.diff Patch3: ffmpeg-codec-choice.diff
Patch5: ffmpeg-prefer-dav1d-for-playback.patch Patch4: ffmpeg-4.2-dlopen-fdk_aac.patch
Patch6: ffmpeg-4.2-dlopen-fdk_aac.patch Patch5: soversion.patch
# pending review upstream ML and issue#7861
# http://ffmpeg.org/pipermail/ffmpeg-devel/2019-August/247759.html
# https://trac.ffmpeg.org/ticket/7861
Patch7: ffmpeg4_swscale_replace_illegal_vector_keyword.patch
Patch8: ffmpeg4_swscale_fix_altivec_vsx_recent_gcc.patch
Patch9: 929e5159bc13da374b83f5627879c607acce180b.patch
BuildRequires: ladspa-devel BuildRequires: ladspa-devel
BuildRequires: libgsm-devel BuildRequires: libgsm-devel
BuildRequires: libmp3lame-devel BuildRequires: libmp3lame-devel
@ -243,15 +237,15 @@ Provides: ffmpeg-tools = %version
Obsoletes: ffmpeg-tools < %version Obsoletes: ffmpeg-tools < %version
Provides: ffmpeg = %version Provides: ffmpeg = %version
Obsoletes: ffmpeg < %version Obsoletes: ffmpeg < %version
Requires: libavcodec58 = %version-%release Requires: libavcodec58_91 = %version-%release
Requires: libavdevice58 = %version-%release Requires: libavdevice58_10 = %version-%release
Requires: libavfilter7 = %version-%release Requires: libavfilter7_85 = %version-%release
Requires: libavformat58 = %version-%release Requires: libavformat58_45 = %version-%release
Requires: libavresample4 = %version-%release Requires: libavresample4_0 = %version-%release
Requires: libavutil56 = %version-%release Requires: libavutil56_51 = %version-%release
Requires: libpostproc55 = %version-%release Requires: libpostproc55_7 = %version-%release
Requires: libswresample3 = %version-%release Requires: libswresample3_7 = %version-%release
Requires: libswscale5 = %version-%release Requires: libswscale5_7 = %version-%release
%description %description
FFmpeg is a multimedia framework, able to decode, encode, FFmpeg is a multimedia framework, able to decode, encode,
@ -262,20 +256,21 @@ that humans and machines have created.
This build of ffmpeg is limited in the number of codecs supported. This build of ffmpeg is limited in the number of codecs supported.
%endif %endif
%package -n libavcodec58 %package -n libavcodec58_91
Summary: FFmpeg codec library Summary: FFmpeg codec library
# For mozillas
Group: System/Libraries Group: System/Libraries
Requires: libavutil56 = %version-%release Requires: libavutil56_51 = %version-%release
Requires: libswresample3 = %version-%release Requires: libswresample3_7 = %version-%release
Provides: libavcodec = %version-%release
%if 0%{?BUILD_ORIG} %if 0%{?BUILD_ORIG}
Provides: libavcodec-full = %version-%release Provides: libavcodec-full = %version-%release
# This can be required by packages likes vlc-codecs - following the shlib name to not get random lib providers # This can be (and is) required by packages like vlc-codecs -
Provides: libavcodec58(unrestricted) # do follow the shlib name to not get random lib providers
Provides: libavcodec58_91(unrestricted)
%endif %endif
# For mozillas
Provides: libavcodec = %version-%release
%description -n libavcodec58 %description -n libavcodec58_91
The libavcodec library provides a generic encoding/decoding framework The libavcodec library provides a generic encoding/decoding framework
and contains multiple decoders and encoders for audio, video and and contains multiple decoders and encoders for audio, video and
subtitle streams, and several bitstream filters. subtitle streams, and several bitstream filters.
@ -291,7 +286,7 @@ Provides: libavcodec-devel = %version-%release
Obsoletes: libavcodec-devel < %version-%release Obsoletes: libavcodec-devel < %version-%release
Requires: %name-libavresample-devel = %version-%release Requires: %name-libavresample-devel = %version-%release
Requires: %name-libavutil-devel = %version-%release Requires: %name-libavutil-devel = %version-%release
Requires: libavcodec58 = %version-%release Requires: libavcodec58_91 = %version-%release
%devel_conflicts -c < -v %_major_version %devel_conflicts -c < -v %_major_version
%devel_conflicts -c >= -v %_major_expected %devel_conflicts -c >= -v %_major_expected
@ -302,15 +297,15 @@ subtitle streams, and several bitstream filters.
This subpackage contains the headers for FFmpeg libavcodec. This subpackage contains the headers for FFmpeg libavcodec.
%package -n libavdevice58 %package -n libavdevice58_10
Summary: FFmpeg device library Summary: FFmpeg device library
Group: System/Libraries Group: System/Libraries
Requires: libavcodec58 = %version-%release Requires: libavcodec58_91 = %version-%release
Requires: libavfilter7 = %version-%release Requires: libavfilter7_85 = %version-%release
Requires: libavformat58 = %version-%release Requires: libavformat58_45 = %version-%release
Requires: libavutil56 = %version-%release Requires: libavutil56_51 = %version-%release
%description -n libavdevice58 %description -n libavdevice58_10
The libavdevice library provides a generic framework for grabbing from The libavdevice library provides a generic framework for grabbing from
and rendering to many common multimedia input/output devices, and and rendering to many common multimedia input/output devices, and
supports several input and output devices, including Video4Linux2, VfW, supports several input and output devices, including Video4Linux2, VfW,
@ -331,7 +326,7 @@ Requires: %name-libavutil-devel = %version-%release
Requires: %name-libpostproc-devel = %version-%release Requires: %name-libpostproc-devel = %version-%release
Requires: %name-libswresample-devel = %version-%release Requires: %name-libswresample-devel = %version-%release
Requires: %name-libswscale-devel = %version-%release Requires: %name-libswscale-devel = %version-%release
Requires: libavdevice58 = %version-%release Requires: libavdevice58_10 = %version-%release
%devel_conflicts -c < -v %_major_version %devel_conflicts -c < -v %_major_version
%devel_conflicts -c >= -v %_major_expected %devel_conflicts -c >= -v %_major_expected
@ -343,18 +338,18 @@ DShow, and ALSA.
This subpackage contains the headers for FFmpeg libavcodec. This subpackage contains the headers for FFmpeg libavcodec.
%package -n libavfilter7 %package -n libavfilter7_85
Summary: FFmpeg audio and video filtering library Summary: FFmpeg audio and video filtering library
Group: System/Libraries Group: System/Libraries
Requires: libavcodec58 = %version-%release Requires: libavcodec58_91 = %version-%release
Requires: libavformat58 = %version-%release Requires: libavformat58_45 = %version-%release
Requires: libavresample4 = %version-%release Requires: libavresample4_0 = %version-%release
Requires: libavutil56 = %version-%release Requires: libavutil56_51 = %version-%release
Requires: libpostproc55 = %version-%release Requires: libpostproc55_7 = %version-%release
Requires: libswresample3 = %version-%release Requires: libswresample3_7 = %version-%release
Requires: libswscale5 = %version-%release Requires: libswscale5_7 = %version-%release
%description -n libavfilter7 %description -n libavfilter7_85
The libavfilter library provides a generic audio/video filtering The libavfilter library provides a generic audio/video filtering
framework containing several filters, sources and sinks. framework containing several filters, sources and sinks.
@ -370,7 +365,7 @@ Requires: %name-libavutil-devel = %version-%release
Requires: %name-libpostproc-devel = %version-%release Requires: %name-libpostproc-devel = %version-%release
Requires: %name-libswresample-devel = %version-%release Requires: %name-libswresample-devel = %version-%release
Requires: %name-libswscale-devel = %version-%release Requires: %name-libswscale-devel = %version-%release
Requires: libavfilter7 = %version-%release Requires: libavfilter7_85 = %version-%release
%devel_conflicts -c < -v %_major_version %devel_conflicts -c < -v %_major_version
%devel_conflicts -c >= -v %_major_expected %devel_conflicts -c >= -v %_major_expected
@ -380,13 +375,13 @@ framework containing several filters, sources and sinks.
This subpackage contains the headers for FFmpeg libavfilter. This subpackage contains the headers for FFmpeg libavfilter.
%package -n libavformat58 %package -n libavformat58_45
Summary: FFmpeg's stream format library Summary: FFmpeg's stream format library
Group: System/Libraries Group: System/Libraries
Requires: libavcodec58 = %version-%release Requires: libavcodec58_91 = %version-%release
Requires: libavutil56 = %version-%release Requires: libavutil56_51 = %version-%release
%description -n libavformat58 %description -n libavformat58_45
The libavformat library provides a generic framework for multiplexing The libavformat library provides a generic framework for multiplexing
and demultiplexing (muxing and demuxing) audio, video and subtitle and demultiplexing (muxing and demuxing) audio, video and subtitle
streams. It encompasses multiple muxers and demuxers for multimedia streams. It encompasses multiple muxers and demuxers for multimedia
@ -404,7 +399,7 @@ Obsoletes: libavformat-devel < %version-%release
Requires: %name-libavcodec-devel = %version-%release Requires: %name-libavcodec-devel = %version-%release
Requires: %name-libavutil-devel = %version-%release Requires: %name-libavutil-devel = %version-%release
Requires: %name-libswresample-devel = %version-%release Requires: %name-libswresample-devel = %version-%release
Requires: libavformat58 = %version-%release Requires: libavformat58_45 = %version-%release
%devel_conflicts -c < -v %_major_version %devel_conflicts -c < -v %_major_version
%devel_conflicts -c >= -v %_major_expected %devel_conflicts -c >= -v %_major_expected
@ -416,12 +411,14 @@ container formats.
This subpackage contains the headers for FFmpeg libavformat. This subpackage contains the headers for FFmpeg libavformat.
%package -n libavresample4 %package -n libavresample4_0
Summary: FFmpeg alternate audio resampling library Summary: FFmpeg alternate audio resampling library
Group: System/Libraries Group: System/Libraries
Requires: libavutil56 = %version-%release Requires: libavutil56_51 = %version-%release
Obsoletes: libavresample4 < %version-%release
Provides: libavresample4 = %version-%release
%description -n libavresample4 %description -n libavresample4_0
An audio resampling library that is being provided for drop-in An audio resampling library that is being provided for drop-in
compatibility with libav. compatibility with libav.
@ -433,7 +430,7 @@ Group: Development/Libraries/C and C++
Provides: libavresample-devel = %version-%release Provides: libavresample-devel = %version-%release
Obsoletes: libavresample-devel < %version-%release Obsoletes: libavresample-devel < %version-%release
Requires: %name-libavutil-devel = %version-%release Requires: %name-libavutil-devel = %version-%release
Requires: libavresample4 = %version-%release Requires: libavresample4_0 = %version-%release
%devel_conflicts -c < -v %_major_version %devel_conflicts -c < -v %_major_version
%devel_conflicts -c >= -v %_major_expected %devel_conflicts -c >= -v %_major_expected
@ -445,11 +442,11 @@ It is advised to use libswresample for new code.
This subpackage contains the headers for FFmpeg's copy of libavresample. This subpackage contains the headers for FFmpeg's copy of libavresample.
%package -n libavutil56 %package -n libavutil56_51
Summary: FFmpeg's utility library Summary: FFmpeg's utility library
Group: System/Libraries Group: System/Libraries
%description -n libavutil56 %description -n libavutil56_51
The libavutil library is a utility library to aid portable multimedia The libavutil library is a utility library to aid portable multimedia
programming. It contains safe portable string functions, random programming. It contains safe portable string functions, random
number generators, data structures, additional mathematics functions, number generators, data structures, additional mathematics functions,
@ -461,7 +458,7 @@ Summary: Development files for FFmpeg's utility library
Group: Development/Libraries/C and C++ Group: Development/Libraries/C and C++
Provides: libavutil-devel = %version-%release Provides: libavutil-devel = %version-%release
Obsoletes: libavutil-devel < %version-%release Obsoletes: libavutil-devel < %version-%release
Requires: libavutil56 = %version-%release Requires: libavutil56_51 = %version-%release
%devel_conflicts -c < -v %_major_version %devel_conflicts -c < -v %_major_version
%devel_conflicts -c >= -v %_major_expected %devel_conflicts -c >= -v %_major_expected
@ -474,12 +471,12 @@ for pixel and sample formats).
This subpackage contains the headers for FFmpeg libavutil. This subpackage contains the headers for FFmpeg libavutil.
%package -n libpostproc55 %package -n libpostproc55_7
Summary: FFmpeg post-processing library Summary: FFmpeg post-processing library
Group: System/Libraries Group: System/Libraries
Requires: libavutil56 = %version-%release Requires: libavutil56_51 = %version-%release
%description -n libpostproc55 %description -n libpostproc55_7
A library with video postprocessing filters, such as deblocking and A library with video postprocessing filters, such as deblocking and
deringing filters, noise reduction, automatic contrast and brightness deringing filters, noise reduction, automatic contrast and brightness
correction, linear/cubic interpolating deinterlacing. correction, linear/cubic interpolating deinterlacing.
@ -490,7 +487,7 @@ Group: Development/Libraries/C and C++
Provides: libpostproc-devel = %version-%release Provides: libpostproc-devel = %version-%release
Obsoletes: libpostproc-devel < %version-%release Obsoletes: libpostproc-devel < %version-%release
Requires: %name-libavutil-devel = %version-%release Requires: %name-libavutil-devel = %version-%release
Requires: libpostproc55 = %version-%release Requires: libpostproc55_7 = %version-%release
%devel_conflicts -c < -v %_major_version %devel_conflicts -c < -v %_major_version
%devel_conflicts -c >= -v %_major_expected %devel_conflicts -c >= -v %_major_expected
@ -501,12 +498,12 @@ correction, linear/cubic interpolating deinterlacing.
This subpackage contains the headers for FFmpeg libpostproc. This subpackage contains the headers for FFmpeg libpostproc.
%package -n libswresample3 %package -n libswresample3_7
Summary: FFmpeg software resampling library Summary: FFmpeg software resampling library
Group: System/Libraries Group: System/Libraries
Requires: libavutil56 = %version-%release Requires: libavutil56_51 = %version-%release
%description -n libswresample3 %description -n libswresample3_7
The libswresample library performs audio conversion between different The libswresample library performs audio conversion between different
sample rates, channel layout and channel formats. sample rates, channel layout and channel formats.
@ -516,7 +513,7 @@ Group: Development/Libraries/C and C++
Provides: libswresample-devel = %version-%release Provides: libswresample-devel = %version-%release
Obsoletes: libswresample-devel < %version-%release Obsoletes: libswresample-devel < %version-%release
Requires: %name-libavutil-devel = %version-%release Requires: %name-libavutil-devel = %version-%release
Requires: libswresample3 = %version-%release Requires: libswresample3_7 = %version-%release
%devel_conflicts -c < -v %_major_version %devel_conflicts -c < -v %_major_version
%devel_conflicts -c >= -v %_major_expected %devel_conflicts -c >= -v %_major_expected
@ -526,12 +523,12 @@ sample rates, channel layout and channel formats.
This subpackage contains the headers for FFmpeg libswresample. This subpackage contains the headers for FFmpeg libswresample.
%package -n libswscale5 %package -n libswscale5_7
Summary: FFmpeg image scaling and colorspace/pixel conversion library Summary: FFmpeg image scaling and colorspace/pixel conversion library
Group: System/Libraries Group: System/Libraries
Requires: libavutil56 = %version-%release Requires: libavutil56_51 = %version-%release
%description -n libswscale5 %description -n libswscale5_7
The libswscale library performs image scaling and colorspace and The libswscale library performs image scaling and colorspace and
pixel format conversion operations. pixel format conversion operations.
@ -541,7 +538,7 @@ Group: Development/Libraries/C and C++
Provides: libswscale-devel = %version-%release Provides: libswscale-devel = %version-%release
Conflicts: libswscale-devel Conflicts: libswscale-devel
Requires: %name-libavutil-devel = %version-%release Requires: %name-libavutil-devel = %version-%release
Requires: libswscale5 = %version-%release Requires: libswscale5_7 = %version-%release
%devel_conflicts -c < -v %_major_version %devel_conflicts -c < -v %_major_version
%devel_conflicts -c >= -v %_major_expected %devel_conflicts -c >= -v %_major_expected
@ -753,24 +750,24 @@ for i in libavformat/options_table.h libavformat/os_support.h \
cp -a $i "$b/%_includedir/ffmpeg/private/$i" cp -a $i "$b/%_includedir/ffmpeg/private/$i"
done done
%post -n libavcodec58 -p /sbin/ldconfig %post -n libavcodec58_91 -p /sbin/ldconfig
%postun -n libavcodec58 -p /sbin/ldconfig %postun -n libavcodec58_91 -p /sbin/ldconfig
%post -n libavdevice58 -p /sbin/ldconfig %post -n libavdevice58_10 -p /sbin/ldconfig
%postun -n libavdevice58 -p /sbin/ldconfig %postun -n libavdevice58_10 -p /sbin/ldconfig
%post -n libavfilter7 -p /sbin/ldconfig %post -n libavfilter7_85 -p /sbin/ldconfig
%postun -n libavfilter7 -p /sbin/ldconfig %postun -n libavfilter7_85 -p /sbin/ldconfig
%post -n libavformat58 -p /sbin/ldconfig %post -n libavformat58_45 -p /sbin/ldconfig
%postun -n libavformat58 -p /sbin/ldconfig %postun -n libavformat58_45 -p /sbin/ldconfig
%post -n libavresample4 -p /sbin/ldconfig %post -n libavresample4_0 -p /sbin/ldconfig
%postun -n libavresample4 -p /sbin/ldconfig %postun -n libavresample4_0 -p /sbin/ldconfig
%post -n libavutil56 -p /sbin/ldconfig %post -n libavutil56_51 -p /sbin/ldconfig
%postun -n libavutil56 -p /sbin/ldconfig %postun -n libavutil56_51 -p /sbin/ldconfig
%post -n libpostproc55 -p /sbin/ldconfig %post -n libpostproc55_7 -p /sbin/ldconfig
%postun -n libpostproc55 -p /sbin/ldconfig %postun -n libpostproc55_7 -p /sbin/ldconfig
%post -n libswresample3 -p /sbin/ldconfig %post -n libswresample3_7 -p /sbin/ldconfig
%postun -n libswresample3 -p /sbin/ldconfig %postun -n libswresample3_7 -p /sbin/ldconfig
%post -n libswscale5 -p /sbin/ldconfig %post -n libswscale5_7 -p /sbin/ldconfig
%postun -n libswscale5 -p /sbin/ldconfig %postun -n libswscale5_7 -p /sbin/ldconfig
%files %files
%doc Changelog CREDITS README.md %doc Changelog CREDITS README.md
@ -778,39 +775,39 @@ done
%_mandir/man1/ff*.1* %_mandir/man1/ff*.1*
%_datadir/ffmpeg/ %_datadir/ffmpeg/
%files -n libavcodec58 %files -n libavcodec58_91
%license COPYING.GPLv2 LICENSE.md %license COPYING.GPLv2 LICENSE.md
%_libdir/libavcodec.so.* %_libdir/libavcodec.so.*
%files -n libavdevice58 %files -n libavdevice58_10
%license COPYING.GPLv2 LICENSE.md %license COPYING.GPLv2 LICENSE.md
%_libdir/libavdevice.so.* %_libdir/libavdevice.so.*
%files -n libavfilter7 %files -n libavfilter7_85
%license COPYING.GPLv2 LICENSE.md %license COPYING.GPLv2 LICENSE.md
%_libdir/libavfilter.so.* %_libdir/libavfilter.so.*
%files -n libavformat58 %files -n libavformat58_45
%license COPYING.GPLv2 LICENSE.md %license COPYING.GPLv2 LICENSE.md
%_libdir/libavformat.so.* %_libdir/libavformat.so.*
%files -n libavresample4 %files -n libavresample4_0
%license COPYING.GPLv2 LICENSE.md %license COPYING.GPLv2 LICENSE.md
%_libdir/libavresample.so.* %_libdir/libavresample.so.*
%files -n libavutil56 %files -n libavutil56_51
%license COPYING.GPLv2 LICENSE.md %license COPYING.GPLv2 LICENSE.md
%_libdir/libavutil.so.* %_libdir/libavutil.so.*
%files -n libpostproc55 %files -n libpostproc55_7
%license COPYING.GPLv2 LICENSE.md %license COPYING.GPLv2 LICENSE.md
%_libdir/libpostproc.so.* %_libdir/libpostproc.so.*
%files -n libswresample3 %files -n libswresample3_7
%license COPYING.GPLv2 LICENSE.md %license COPYING.GPLv2 LICENSE.md
%_libdir/libswresample.so.* %_libdir/libswresample.so.*
%files -n libswscale5 %files -n libswscale5_7
%license COPYING.GPLv2 LICENSE.md %license COPYING.GPLv2 LICENSE.md
%_libdir/libswscale.so.* %_libdir/libswscale.so.*

View File

@ -11,11 +11,11 @@ reduced codec selection list.
libavformat/matroskaenc.c | 19 +++++++++++++------ libavformat/matroskaenc.c | 19 +++++++++++++------
1 file changed, 13 insertions(+), 6 deletions(-) 1 file changed, 13 insertions(+), 6 deletions(-)
Index: ffmpeg-4.2/libavformat/matroskaenc.c Index: ffmpeg-4.3/libavformat/matroskaenc.c
=================================================================== ===================================================================
--- ffmpeg-4.2.orig/libavformat/matroskaenc.c --- ffmpeg-4.3.orig/libavformat/matroskaenc.c
+++ ffmpeg-4.2/libavformat/matroskaenc.c +++ ffmpeg-4.3/libavformat/matroskaenc.c
@@ -2798,16 +2798,24 @@ static const AVClass matroska_class = { @@ -2805,16 +2805,24 @@ static const AVClass matroska_class = {
.version = LIBAVUTIL_VERSION_INT, .version = LIBAVUTIL_VERSION_INT,
}; };
@ -42,9 +42,9 @@ Index: ffmpeg-4.2/libavformat/matroskaenc.c
+ CONFIG_MPEG4_ENCODER ? AV_CODEC_ID_MPEG4 : \ + CONFIG_MPEG4_ENCODER ? AV_CODEC_ID_MPEG4 : \
+ AV_CODEC_ID_THEORA, + AV_CODEC_ID_THEORA,
.init = mkv_init, .init = mkv_init,
.deinit = mkv_deinit,
.write_header = mkv_write_header, .write_header = mkv_write_header,
.write_packet = mkv_write_flush_packet, @@ -2876,8 +2884,7 @@ AVOutputFormat ff_matroska_audio_muxer =
@@ -2867,8 +2875,7 @@ AVOutputFormat ff_matroska_audio_muxer =
.mime_type = "audio/x-matroska", .mime_type = "audio/x-matroska",
.extensions = "mka", .extensions = "mka",
.priv_data_size = sizeof(MatroskaMuxContext), .priv_data_size = sizeof(MatroskaMuxContext),
@ -53,4 +53,4 @@ Index: ffmpeg-4.2/libavformat/matroskaenc.c
+ .audio_codec = PREFAUDIO, + .audio_codec = PREFAUDIO,
.video_codec = AV_CODEC_ID_NONE, .video_codec = AV_CODEC_ID_NONE,
.init = mkv_init, .init = mkv_init,
.write_header = mkv_write_header, .deinit = mkv_deinit,

View File

@ -1,19 +0,0 @@
Index: ffmpeg-4.2.1/libavcodec/allcodecs.c
===================================================================
--- ffmpeg-4.2.1.orig/libavcodec/allcodecs.c
+++ ffmpeg-4.2.1/libavcodec/allcodecs.c
@@ -679,13 +679,13 @@ extern AVCodec ff_pcm_mulaw_at_encoder;
extern AVCodec ff_pcm_mulaw_at_decoder;
extern AVCodec ff_qdmc_at_decoder;
extern AVCodec ff_qdm2_at_decoder;
+extern AVCodec ff_libdav1d_decoder;
extern AVCodec ff_libaom_av1_decoder;
extern AVCodec ff_libaom_av1_encoder;
extern AVCodec ff_libaribb24_decoder;
extern AVCodec ff_libcelt_decoder;
extern AVCodec ff_libcodec2_encoder;
extern AVCodec ff_libcodec2_decoder;
-extern AVCodec ff_libdav1d_decoder;
extern AVCodec ff_libdavs2_decoder;
extern AVCodec ff_libfdk_aac_encoder;
extern AVCodec ff_libfdk_aac_decoder;

View File

@ -1,50 +0,0 @@
From daniel at octaforge.org Tue Aug 6 18:55:37 2019
From: daniel at octaforge.org (Daniel Kolesa)
Date: Tue, 6 Aug 2019 17:55:37 +0200
Subject: [FFmpeg-devel] [PATCH 2/2] swscale: Fix AltiVec/VSX build with
recent GCC
In-Reply-To: <20190806155537.25535-1-daniel@octaforge.org>
References: <20190806155537.25535-1-daniel@octaforge.org>
Message-ID: <20190806155537.25535-3-daniel@octaforge.org>
The argument to vec_splat_u16 must be a literal. By making the
function always inline and marking the arguments const, gcc can
turn those into literals, and avoid build errors like:
swscale_vsx.c:165:53: error: argument 1 must be a 5-bit signed literal
Signed-off-by: Daniel Kolesa <daniel at octaforge.org>
---
libswscale/ppc/swscale_vsx.c | 12 ++++++++----
1 file changed, 8 insertions(+), 4 deletions(-)
Index: ffmpeg-4.2/libswscale/ppc/swscale_vsx.c
===================================================================
--- ffmpeg-4.2.orig/libswscale/ppc/swscale_vsx.c
+++ ffmpeg-4.2/libswscale/ppc/swscale_vsx.c
@@ -154,8 +154,10 @@ static void yuv2plane1_nbps_u(const int1
}
}
-static void yuv2plane1_nbps_vsx(const int16_t *src, uint16_t *dest, int dstW,
- int big_endian, int output_bits)
+static av_always_inline void yuv2plane1_nbps_vsx(const int16_t *src,
+ uint16_t *dest, int dstW,
+ const int big_endian,
+ const int output_bits)
{
const int dst_u = -(uintptr_t)dest & 7;
const int shift = 15 - output_bits;
@@ -273,8 +275,10 @@ static void yuv2plane1_16_u(const int32_
}
}
-static void yuv2plane1_16_vsx(const int32_t *src, uint16_t *dest, int dstW,
- int big_endian, int output_bits)
+static av_always_inline void yuv2plane1_16_vsx(const int32_t *src,
+ uint16_t *dest, int dstW,
+ const int big_endian,
+ int output_bits)
{
const int dst_u = -(uintptr_t)dest & 7;
const int shift = 3;

File diff suppressed because it is too large Load Diff

33
soversion.patch Normal file
View File

@ -0,0 +1,33 @@
From: Jan Engelhardt <jengelh@inai.de>
Date: 2020-07-04 23:56:54.411950316 +0200
User frispete wrote on 2020-6-26 22:13+0000 at
https://build.opensuse.org/package/show/multimedia:libs/ffmpeg-4#comment-1257440
: """Unfortunately, this version is binary incompatible to 4.2.3 in some
aspects. [...]"""
Further discussion on the mailing list explored this topic, and
revealed that ELF symbol versioning is lacklusterly implemented in
ffmpeg, which can cause inadvertent mixing of library versions on
openSUSE, and precompiled Linux distributions in general. It is
unclear when upstream will have implemented a solution. Until then,
we will need to tighten the requirements between packages, to which
end we stretch the SOVERSION to include MINOR.
---
configure | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
Index: ffmpeg-4.3/configure
===================================================================
--- ffmpeg-4.3.orig/configure
+++ ffmpeg-4.3/configure
@@ -3794,7 +3794,7 @@ SLIBPREF="lib"
SLIBSUF=".so"
SLIBNAME='$(SLIBPREF)$(FULLNAME)$(SLIBSUF)'
SLIBNAME_WITH_VERSION='$(SLIBNAME).$(LIBVERSION)'
-SLIBNAME_WITH_MAJOR='$(SLIBNAME).$(LIBMAJOR)'
+SLIBNAME_WITH_MAJOR='$(SLIBNAME).$(LIBMAJOR).$(LIBMINOR)'
LIB_INSTALL_EXTRA_CMD='$$(RANLIB) "$(LIBDIR)/$(LIBNAME)"'
SLIB_INSTALL_NAME='$(SLIBNAME_WITH_VERSION)'
SLIB_INSTALL_LINKS='$(SLIBNAME_WITH_MAJOR) $(SLIBNAME)'