Update ffmpeg to 8.0 (#6382) (#6384)

* Remove Handbrake patch as it was integrated upstream
* Remove version restrictions in the specfile as almost all of them have
  been long surpassed
* Refresh VP9 decoder patch from Intel
* Remove libpostproc package as it is no longer a separate so
* Disable libplacebo in the build as 7.351.0 is required with this
  version of libavformat. Fedora is on 7.349 and Terra has obsoleted its
  coverage of this package.
* Bump all soversions to match upstream

(cherry picked from commit e2cf969074)

Co-authored-by: Ehren Bendler <143813417+ebendler@users.noreply.github.com>
This commit is contained in:
Raboneko
2025-09-09 10:52:21 -07:00
committed by GitHub
parent 3d7c03d758
commit f4c792c5e8
3 changed files with 113 additions and 2029 deletions
File diff suppressed because it is too large Load Diff
+43 -35
View File
@@ -1,7 +1,8 @@
diff -Naur ffmpeg-7.1.1.old/configure ffmpeg-7.1.1/configure
--- ffmpeg-7.1.1.old/configure 2025-03-24 10:54:38.202757211 +0100
+++ ffmpeg-7.1.1/configure 2025-03-24 10:54:38.618546808 +0100
@@ -278,6 +278,7 @@
diff --git a/configure b/configure
index 727c3daea8..1da8f40bff 100755
--- a/configure
+++ b/configure
@@ -278,6 +278,7 @@ External library support:
--enable-libsrt enable Haivision SRT protocol via libsrt [no]
--enable-libssh enable SFTP protocol via libssh [no]
--enable-libsvtav1 enable AV1 encoding via SVT [no]
@@ -9,7 +10,7 @@ diff -Naur ffmpeg-7.1.1.old/configure ffmpeg-7.1.1/configure
--enable-libtensorflow enable TensorFlow as a DNN module backend
for DNN based filters like sr [no]
--enable-libtesseract enable Tesseract, needed for ocr filter [no]
@@ -1953,6 +1954,7 @@
@@ -1973,6 +1974,7 @@ EXTERNAL_LIBRARY_LIST="
libshaderc
libshine
libsmbclient
@@ -17,7 +18,7 @@ diff -Naur ffmpeg-7.1.1.old/configure ffmpeg-7.1.1/configure
libsnappy
libsoxr
libspeex
@@ -3575,6 +3577,7 @@
@@ -3658,6 +3660,7 @@ libvpx_vp8_decoder_deps="libvpx"
libvpx_vp8_encoder_deps="libvpx"
libvpx_vp9_decoder_deps="libvpx"
libvpx_vp9_encoder_deps="libvpx"
@@ -25,18 +26,31 @@ diff -Naur ffmpeg-7.1.1.old/configure ffmpeg-7.1.1/configure
libvvenc_encoder_deps="libvvenc"
libwebp_encoder_deps="libwebp"
libwebp_anim_encoder_deps="libwebp"
@@ -6997,6 +7000,7 @@
enabled libspeex && require_pkg_config libspeex speex speex/speex.h speex_decoder_init
enabled libsrt && require_pkg_config libsrt "srt >= 1.3.0" srt/srt.h srt_socket
enabled libsvtav1 && require_pkg_config libsvtav1 "SvtAv1Enc >= 0.9.0" EbSvtAv1Enc.h svt_av1_enc_init_handle
@@ -7160,6 +7163,7 @@ enabled libtwolame && require libtwolame twolame.h twolame_init -ltwolame
die "ERROR: libtwolame must be installed and version must be >= 0.3.10"; }
enabled libuavs3d && require_pkg_config libuavs3d "uavs3d >= 1.1.41" uavs3d.h uavs3d_decode
enabled libv4l2 && require_pkg_config libv4l2 libv4l2 libv4l2.h v4l2_ioctl
+enabled libsvtvp9 && require_pkg_config libsvtvp9 SvtVp9Enc EbSvtVp9Enc.h eb_vp9_svt_init_handle
enabled libtensorflow && require libtensorflow tensorflow/c/c_api.h TF_Version -ltensorflow
enabled libtesseract && require_pkg_config libtesseract tesseract tesseract/capi.h TessBaseAPICreate
enabled libtheora && require libtheora theora/theoraenc.h th_info_init -ltheoraenc -ltheoradec -logg
diff -Naur ffmpeg-7.1.1.old/libavcodec/allcodecs.c ffmpeg-7.1.1/libavcodec/allcodecs.c
--- ffmpeg-7.1.1.old/libavcodec/allcodecs.c 2025-03-24 10:54:38.119756212 +0100
+++ ffmpeg-7.1.1/libavcodec/allcodecs.c 2025-03-24 10:54:38.619934060 +0100
@@ -796,6 +796,7 @@
enabled libvidstab && require_pkg_config libvidstab "vidstab >= 0.98" vid.stab/libvidstab.h vsMotionDetectInit
enabled libvmaf && require_pkg_config libvmaf "libvmaf >= 2.0.0" libvmaf.h vmaf_init
enabled libvmaf && check_pkg_config libvmaf_cuda "libvmaf >= 2.0.0" libvmaf_cuda.h vmaf_cuda_state_init
diff --git a/libavcodec/Makefile b/libavcodec/Makefile
index 83ef92963a..d63ec14d84 100644
--- a/libavcodec/Makefile
+++ b/libavcodec/Makefile
@@ -1191,6 +1191,7 @@ OBJS-$(CONFIG_LIBVO_AMRWBENC_ENCODER) += libvo-amrwbenc.o
OBJS-$(CONFIG_LIBVORBIS_DECODER) += libvorbisdec.o
OBJS-$(CONFIG_LIBVORBIS_ENCODER) += libvorbisenc.o \
vorbis_data.o
+OBJS-$(CONFIG_LIBSVT_VP9_ENCODER) += libsvt_vp9.o
OBJS-$(CONFIG_LIBVPX_VP8_DECODER) += libvpxdec.o
OBJS-$(CONFIG_LIBVPX_VP8_ENCODER) += libvpxenc.o
OBJS-$(CONFIG_LIBVPX_VP9_DECODER) += libvpxdec.o
diff --git a/libavcodec/allcodecs.c b/libavcodec/allcodecs.c
index f5ec2e01e8..11928d7afa 100644
--- a/libavcodec/allcodecs.c
+++ b/libavcodec/allcodecs.c
@@ -809,6 +809,7 @@ extern const FFCodec ff_libuavs3d_decoder;
extern const FFCodec ff_libvo_amrwbenc_encoder;
extern const FFCodec ff_libvorbis_encoder;
extern const FFCodec ff_libvorbis_decoder;
@@ -44,9 +58,11 @@ diff -Naur ffmpeg-7.1.1.old/libavcodec/allcodecs.c ffmpeg-7.1.1/libavcodec/allco
extern const FFCodec ff_libvpx_vp8_encoder;
extern const FFCodec ff_libvpx_vp8_decoder;
extern FFCodec ff_libvpx_vp9_encoder;
diff -Naur ffmpeg-7.1.1.old/libavcodec/libsvt_vp9.c ffmpeg-7.1.1/libavcodec/libsvt_vp9.c
--- ffmpeg-7.1.1.old/libavcodec/libsvt_vp9.c 1970-01-01 01:00:00.000000000 +0100
+++ ffmpeg-7.1.1/libavcodec/libsvt_vp9.c 2025-03-24 10:54:38.620176868 +0100
diff --git a/libavcodec/libsvt_vp9.c b/libavcodec/libsvt_vp9.c
new file mode 100644
index 0000000000..90ed5cbff2
--- /dev/null
+++ b/libavcodec/libsvt_vp9.c
@@ -0,0 +1,701 @@
+/*
+* Scalable Video Technology for VP9 encoder library plugin
@@ -260,11 +276,11 @@ diff -Naur ffmpeg-7.1.1.old/libavcodec/libsvt_vp9.c ffmpeg-7.1.1/libavcodec/libs
+ param->intra_period = avctx->gop_size - 1;
+
+ if (avctx->framerate.num > 0 && avctx->framerate.den > 0) {
+ param->frame_rate_numerator = avctx->framerate.num;
+ param->frame_rate_denominator = avctx->framerate.den * avctx->ticks_per_frame;
+ param->frame_rate_numerator = avctx->framerate.num;
+ param->frame_rate_denominator = avctx->framerate.den;
+ } else {
+ param->frame_rate_numerator = avctx->time_base.den;
+ param->frame_rate_denominator = avctx->time_base.num * avctx->ticks_per_frame;
+ param->frame_rate_numerator = avctx->time_base.den;
+ param->frame_rate_denominator = avctx->time_base.num;
+ }
+
+ if (param->rate_control_mode) {
@@ -749,14 +765,6 @@ diff -Naur ffmpeg-7.1.1.old/libavcodec/libsvt_vp9.c ffmpeg-7.1.1/libavcodec/libs
+ .defaults = eb_enc_defaults,
+ .p.wrapper_name = "libsvt_vp9",
+};
diff -Naur ffmpeg-7.1.1.old/libavcodec/Makefile ffmpeg-7.1.1/libavcodec/Makefile
--- ffmpeg-7.1.1.old/libavcodec/Makefile 2025-03-24 10:54:37.935753999 +0100
+++ ffmpeg-7.1.1/libavcodec/Makefile 2025-03-24 10:54:38.620394147 +0100
@@ -1157,6 +1157,7 @@
OBJS-$(CONFIG_LIBVORBIS_DECODER) += libvorbisdec.o
OBJS-$(CONFIG_LIBVORBIS_ENCODER) += libvorbisenc.o \
vorbis_data.o
+OBJS-$(CONFIG_LIBSVT_VP9_ENCODER) += libsvt_vp9.o
OBJS-$(CONFIG_LIBVPX_VP8_DECODER) += libvpxdec.o
OBJS-$(CONFIG_LIBVPX_VP8_ENCODER) += libvpxenc.o
OBJS-$(CONFIG_LIBVPX_VP9_DECODER) += libvpxdec.o
--
2.50.1
+70 -90
View File
@@ -1,13 +1,12 @@
%global _lto_cflags %{nil}
%global avcodec_soversion 61
%global avdevice_soversion 61
%global avfilter_soversion 10
%global avformat_soversion 61
%global avutil_soversion 59
%global postproc_soversion 58
%global swresample_soversion 5
%global swscale_soversion 8
%global avcodec_soversion 62
%global avdevice_soversion 62
%global avfilter_soversion 11
%global avformat_soversion 62
%global avutil_soversion 60
%global swresample_soversion 6
%global swscale_soversion 9
Summary: A complete solution to record, convert and stream audio and video
Name: ffmpeg
@@ -21,15 +20,13 @@ Source0: http://%{name}.org/releases/%{name}-%{version}.tar.xz
# https://github.com/OpenVisualCloud/SVT-VP9/tree/master/ffmpeg_plugin
Patch0: %{name}-svt-vp9.patch
# https://github.com/HandBrake/HandBrake/tree/e117cfe7fca37abeec59ea4201e5d93ed7477746
Patch2: %{name}-HandBrake.patch
# https://bugzilla.redhat.com/show_bug.cgi?id=2240127
# Reference: https://crbug.com/1306560
Patch3: %{name}-chromium.patch
# Fix build with recent NVCC:
Patch4: %{name}-nvcc.patch
BuildRequires: AMF-devel >= 1.4.28
BuildRequires: AMF-devel
BuildRequires: bzip2-devel
BuildRequires: codec2-devel
BuildRequires: doxygen
@@ -37,8 +34,9 @@ BuildRequires: frei0r-devel
BuildRequires: gmp-devel
BuildRequires: gsm-devel
BuildRequires: ilbc-devel
BuildRequires: lame-devel >= 3.98.3
BuildRequires: lame-devel
BuildRequires: ladspa-devel
BuildRequires: LCEVCdec-devel >= 4.0.0
BuildRequires: libavc1394-devel
BuildRequires: libchromaprint-devel
BuildRequires: libgcrypt-devel
@@ -57,61 +55,60 @@ BuildRequires: snappy-devel
BuildRequires: soxr-devel
BuildRequires: subversion
BuildRequires: texinfo
BuildRequires: twolame-devel >= 0.3.10
BuildRequires: twolame-devel
BuildRequires: vo-amrwbenc-devel
BuildRequires: xvidcore-devel
BuildRequires: xz-devel
BuildRequires: pkgconfig(alsa)
BuildRequires: pkgconfig(aom) >= 1.0.0
BuildRequires: pkgconfig(aribb24) >= 1.0.3
BuildRequires: pkgconfig(aom)
BuildRequires: pkgconfig(aribb24)
BuildRequires: pkgconfig(caca)
BuildRequires: pkgconfig(dav1d) >= 0.5.0
BuildRequires: pkgconfig(davs2) >= 1.6.0
BuildRequires: pkgconfig(dvdnav) >= 6.1.1
BuildRequires: pkgconfig(dav1d)
BuildRequires: pkgconfig(davs2)
BuildRequires: pkgconfig(dvdnav)
BuildRequires: pkgconfig(fdk-aac)
BuildRequires: pkgconfig(fontconfig)
BuildRequires: pkgconfig(freetype2)
BuildRequires: pkgconfig(fribidi)
BuildRequires: pkgconfig(harfbuzz)
BuildRequires: pkgconfig(jack)
BuildRequires: pkgconfig(kvazaar) >= 0.8.1
BuildRequires: pkgconfig(lc3) >= 1.1.0
BuildRequires: pkgconfig(lcms2) >= 2.13
BuildRequires: pkgconfig(lcevc_dec) >= 2.0.0
BuildRequires: pkgconfig(libaribcaption) >= 1.1.1
BuildRequires: pkgconfig(libass) >= 0.11.0
BuildRequires: pkgconfig(kvazaar)
BuildRequires: pkgconfig(lc3)
BuildRequires: pkgconfig(lcms2)
BuildRequires: pkgconfig(libaribcaption)
BuildRequires: pkgconfig(libass)
BuildRequires: pkgconfig(libbluray)
BuildRequires: pkgconfig(libbs2b)
BuildRequires: pkgconfig(libcdio_paranoia)
BuildRequires: pkgconfig(libdc1394-2)
BuildRequires: pkgconfig(libdrm)
BuildRequires: pkgconfig(libgme)
BuildRequires: pkgconfig(libjxl) >= 0.7.0
#BuildRequires: pkgconfig(lensfun) > 0.3.95
BuildRequires: pkgconfig(libjxl)
#BuildRequires: pkgconfig(lensfun)
BuildRequires: pkgconfig(libmodplug)
BuildRequires: pkgconfig(libmysofa)
BuildRequires: pkgconfig(libopenjp2) >= 2.1.0
BuildRequires: pkgconfig(libopenmpt) >= 0.2.6557
BuildRequires: pkgconfig(libplacebo) >= 4.192.0
BuildRequires: pkgconfig(libopenjp2)
BuildRequires: pkgconfig(libopenmpt)
#BuildRequires: pkgconfig(libplacebo) >= 7.351.0
BuildRequires: pkgconfig(libpulse)
BuildRequires: pkgconfig(libqrencode)
#BuildRequires: pkgconfig(libquirc)
BuildRequires: pkgconfig(librabbitmq) >= 0.7.1
BuildRequires: pkgconfig(librist) >= 0.2.7
BuildRequires: pkgconfig(librabbitmq)
BuildRequires: pkgconfig(librist)
BuildRequires: pkgconfig(librtmp)
BuildRequires: pkgconfig(librsvg-2.0)
BuildRequires: pkgconfig(libssh)
BuildRequires: pkgconfig(libtcmalloc)
BuildRequires: pkgconfig(libva) >= 0.35.0
BuildRequires: pkgconfig(libva)
BuildRequires: pkgconfig(libva-drm)
BuildRequires: pkgconfig(libva-x11)
BuildRequires: pkgconfig(libv4l2)
BuildRequires: pkgconfig(libvvenc) >= 1.11.0
BuildRequires: pkgconfig(libvvenc)
BuildRequires: pkgconfig(libwebp)
BuildRequires: pkgconfig(libwebpmux) >= 0.4.0
BuildRequires: pkgconfig(libwebpmux)
BuildRequires: pkgconfig(libxml-2.0)
BuildRequires: pkgconfig(libzmq) >= 4.2.1
BuildRequires: pkgconfig(libzmq)
BuildRequires: pkgconfig(lilv-0)
BuildRequires: pkgconfig(lv2)
#BuildRequires: pkgconfig(OpenCL)
@@ -119,24 +116,24 @@ BuildRequires: pkgconfig(lv2)
BuildRequires: pkgconfig(openh264)
BuildRequires: pkgconfig(openssl)
BuildRequires: pkgconfig(opus)
BuildRequires: pkgconfig(rav1e) >= 0.4.0
BuildRequires: pkgconfig(rubberband) >= 1.8.1
BuildRequires: pkgconfig(rav1e)
BuildRequires: pkgconfig(rubberband)
BuildRequires: pkgconfig(sdl2)
BuildRequires: pkgconfig(shaderc) >= 2019.1
BuildRequires: pkgconfig(shaderc)
#BuildRequires: pkgconfig(shine)
BuildRequires: pkgconfig(smbclient)
BuildRequires: pkgconfig(speex)
BuildRequires: pkgconfig(srt) >= 1.3.0
BuildRequires: pkgconfig(srt)
BuildRequires: pkgconfig(tesseract)
BuildRequires: pkgconfig(uavs3d) >= 1.1.41
BuildRequires: pkgconfig(vapoursynth-script) >= 42
BuildRequires: pkgconfig(vidstab) >= 0.98
BuildRequires: pkgconfig(uavs3d)
BuildRequires: pkgconfig(vapoursynth-script)
BuildRequires: pkgconfig(vidstab)
BuildRequires: pkgconfig(vorbis)
BuildRequires: pkgconfig(vorbisenc)
BuildRequires: pkgconfig(vpx) >= 1.4.0
BuildRequires: pkgconfig(vulkan) >= 1.3.277
BuildRequires: pkgconfig(xavs2) >= 1.3.0
BuildRequires: pkgconfig(xcb) >= 1.4
BuildRequires: pkgconfig(vpx)
BuildRequires: pkgconfig(vulkan)
BuildRequires: pkgconfig(xavs2)
BuildRequires: pkgconfig(xcb)
BuildRequires: pkgconfig(xcb-shape)
BuildRequires: pkgconfig(xcb-shm)
BuildRequires: pkgconfig(xcb-xfixes)
@@ -145,9 +142,9 @@ BuildRequires: pkgconfig(x11)
BuildRequires: pkgconfig(x264)
BuildRequires: pkgconfig(x265)
BuildRequires: pkgconfig(xv)
BuildRequires: pkgconfig(zimg) >= 2.7.0
BuildRequires: pkgconfig(zimg)
BuildRequires: pkgconfig(zlib)
BuildRequires: pkgconfig(zvbi-0.2) >= 0.2.28
BuildRequires: pkgconfig(zvbi-0.2)
%ifarch x86_64 aarch64
# Nvidia CUVID support and Performance Primitives based code
@@ -159,14 +156,15 @@ BuildRequires: pkgconfig(ffnvcodec) >= 12.0.16.0
%ifarch x86_64
BuildRequires: pkgconfig(libmfx)
BuildRequires: pkgconfig(libvmaf) >= 2.0.0
BuildRequires: pkgconfig(SvtAv1Enc) >= 0.9.0
BuildRequires: pkgconfig(libvmaf)
BuildRequires: pkgconfig(SvtAv1Enc)
BuildRequires: pkgconfig(SvtVp9Enc)
BuildRequires: pkgconfig(vpl) >= 2.6
#BuildRequires: pkgconfig(xevd) >= 0.4.1
#BuildRequires: pkgconfig(xeve) >= 0.4.3
BuildRequires: pkgconfig(vpl)
#BuildRequires: pkgconfig(xevd)
#BuildRequires: pkgconfig(xeve)
%endif
Obsoletes: %{name} < %{epoch}:%{version}-%{release}
Obsoletes: %{name}-free < %{epoch}:%{version}-%{release}
Provides: %{name}-free = %{epoch}:%{version}-%{release}
@@ -183,9 +181,11 @@ Requires: libavdevice%{?_isa} = %{epoch}:%{version}-%{release}
Requires: libavfilter%{?_isa} = %{epoch}:%{version}-%{release}
Requires: libavformat%{?_isa} = %{epoch}:%{version}-%{release}
Requires: libavutil%{?_isa} = %{epoch}:%{version}-%{release}
Requires: libpostproc%{?_isa} = %{epoch}:%{version}-%{release}
Requires: libswresample%{?_isa} = %{epoch}:%{version}-%{release}
Requires: libswscale%{?_isa} = %{epoch}:%{version}-%{release}
Obsoletes: libpostproc-free < %{epoch}:%{version}-%{release}
Obsoletes: libpostproc < %{epoch}:%{version}-%{release}
Obsoletes: %{name}-libs < %{epoch}:%{version}-%{release}
%description libs
FFmpeg is a complete and free Internet live audio and video
@@ -198,6 +198,9 @@ This metapackage pulls in all the %{name} libraries.
Summary: Metapackage for %{name} development files
Requires: %{name}-libs%{?_isa} = %{epoch}:%{version}-%{release}
Requires: pkgconfig
Obsoletes: %{name}-devel < %{epoch}:%{version}-%{release}
Obsoletes: %{name}-free-devel < %{epoch}:%{version}-%{release}
Provides: %{name}-free-devel = %{epoch}:%{version}-%{release}
%description devel
FFmpeg is a complete and free Internet live audio and video broadcasting
@@ -206,6 +209,7 @@ time in many formats. This package contains development files for %{name}.
%package -n libavcodec
Summary: FFmpeg codec library
Obsoletes: libavcodec < %{epoch}:%{version}-%{release}
Obsoletes: libavcodec-free < %{epoch}:%{version}-%{release}
Provides: libavcodec-free = %{epoch}:%{version}-%{release}
@@ -219,6 +223,7 @@ Summary: Development files for FFmpeg's codec library
Requires: libavcodec%{?_isa} = %{epoch}:%{version}-%{release}
Requires: libavutil-devel%{?_isa} = %{epoch}:%{version}-%{release}
Requires: pkgconfig
Obsoletes: libavcodec-devel < %{epoch}:%{version}-%{release}
Obsoletes: libavcodec-free-devel < %{epoch}:%{version}-%{release}
Provides: libavcodec-free-devel = %{epoch}:%{version}-%{release}
@@ -231,6 +236,7 @@ This subpackage contains the headers for FFmpeg libavcodec.
%package -n libavdevice
Summary: FFMpeg devices muxing/demuxing library
Obsoletes: libavdevice < %{epoch}:%{version}-%{release}
Obsoletes: libavdevice-free < %{epoch}:%{version}-%{release}
Provides: libavdevice-free = %{epoch}:%{version}-%{release}
@@ -247,6 +253,7 @@ Requires: libavfilter-devel%{?_isa} = %{epoch}:%{version}-%{release}
Requires: libavformat-devel%{?_isa} = %{epoch}:%{version}-%{release}
Requires: libavutil-devel%{?_isa} = %{epoch}:%{version}-%{release}
Requires: pkgconfig
Obsoletes: libavdevice-devel < %{epoch}:%{version}-%{release}
Obsoletes: libavdevice-free-devel < %{epoch}:%{version}-%{release}
Provides: libavdevice-free-devel = %{epoch}:%{version}-%{release}
@@ -258,9 +265,9 @@ Summary: FFmpeg audio and video filtering library
Requires: libavcodec%{?_isa} = %{epoch}:%{version}-%{release}
Requires: libavformat%{?_isa} = %{epoch}:%{version}-%{release}
Requires: libavutil%{?_isa} = %{epoch}:%{version}-%{release}
Requires: libpostproc%{?_isa} = %{epoch}:%{version}-%{release}
Requires: libswresample%{?_isa} = %{epoch}:%{version}-%{release}
Requires: libswscale%{?_isa} = %{epoch}:%{version}-%{release}
Obsoletes: libavfilter < %{epoch}:%{version}-%{release}
Obsoletes: libavfilter-free < %{epoch}:%{version}-%{release}
Provides: libavfilter-free = %{epoch}:%{version}-%{release}
@@ -274,10 +281,10 @@ Requires: libavcodec-devel%{?_isa} = %{epoch}:%{version}-%{release}
Requires: libavfilter%{?_isa} = %{epoch}:%{version}-%{release}
Requires: libavformat-devel%{?_isa} = %{epoch}:%{version}-%{release}
Requires: libavutil-devel%{?_isa} = %{epoch}:%{version}-%{release}
Requires: libpostproc-devel%{?_isa} = %{epoch}:%{version}-%{release}
Requires: libswresample-devel%{?_isa} = %{epoch}:%{version}-%{release}
Requires: libswscale-devel%{?_isa} = %{epoch}:%{version}-%{release}
Requires: pkgconfig
Obsoletes: libavfilter-devel < %{epoch}:%{version}-%{release}
Obsoletes: libavfilter-free-devel < %{epoch}:%{version}-%{release}
Provides: libavfilter-free-devel = %{epoch}:%{version}-%{release}
@@ -286,6 +293,7 @@ This subpackage contains the headers for FFmpeg libavfilter.
%package -n libavformat
Summary: FFmpeg's stream format library
Obsoletes: libavformat < %{epoch}:%{version}-%{release}
Obsoletes: libavformat-free < %{epoch}:%{version}-%{release}
Provides: libavformat-free = %{epoch}:%{version}-%{release}
@@ -301,6 +309,7 @@ Requires: libavformat%{?_isa} = %{epoch}:%{version}-%{release}
Requires: libavutil-devel%{?_isa} = %{epoch}:%{version}-%{release}
Requires: libswresample-devel%{?_isa} = %{epoch}:%{version}-%{release}
Requires: pkgconfig
Obsoletes: libavformat-devel < %{epoch}:%{version}-%{release}
Obsoletes: libavformat-free-devel < %{epoch}:%{version}-%{release}
Provides: libavformat-free-devel = %{epoch}:%{version}-%{release}
@@ -309,6 +318,7 @@ This subpackage contains the headers for FFmpeg libavformat.
%package -n libavutil
Summary: FFmpeg's utility library
Obsoletes: libavutil < %{epoch}:%{version}-%{release}
Obsoletes: libavutil-free < %{epoch}:%{version}-%{release}
Provides: libavutil-free = %{epoch}:%{version}-%{release}
@@ -323,38 +333,17 @@ for pixel and sample formats).
Summary: Development files for FFmpeg's utility library
Requires: libavutil%{?_isa} = %{epoch}:%{version}-%{release}
Requires: pkgconfig
Obsoletes: libavutil-devel < %{epoch}:%{version}-%{release}
Obsoletes: libavutil-free-devel < %{epoch}:%{version}-%{release}
Provides: libavutil-free-devel = %{epoch}:%{version}-%{release}
%description -n libavutil-devel
This subpackage contains the headers for FFmpeg libavutil.
%package -n libpostproc
Summary: FFmpeg post-processing library
Obsoletes: libpostproc-free < %{epoch}:%{version}-%{release}
Provides: libpostproc-free = %{epoch}:%{version}-%{release}
%description -n libpostproc
A library with video postprocessing filters, such as deblocking and
deringing filters, noise reduction, automatic contrast and brightness
correction, linear/cubic interpolating deinterlacing.
%package -n libpostproc-devel
Summary: Development files for the FFmpeg post-processing library
Requires: libavutil-devel%{?_isa} = %{epoch}:%{version}-%{release}
Requires: libpostproc%{?_isa} = %{epoch}:%{version}-%{release}
Requires: pkgconfig
Obsoletes: libpostproc-free-devel < %{epoch}:%{version}-%{release}
Provides: libpostproc-free-devel = %{epoch}:%{version}-%{release}
%description -n libpostproc-devel
This subpackage contains the headers for FFmpeg libpostproc.
%package -n libswresample
Summary: FFmpeg software resampling library
Requires: libavutil%{?_isa} = %{epoch}:%{version}-%{release}
Obsoletes: libavresemple < %{epoch}:%{version}-%{release}
Provides: libavresemple = %{epoch}:%{version}-%{release}
Obsoletes: libswresample-free < %{epoch}:%{version}-%{release}
Provides: libswresample-free = %{epoch}:%{version}-%{release}
@@ -367,7 +356,6 @@ Summary: Development files for the FFmpeg software resampling library
Requires: libavutil-devel%{?_isa} = %{epoch}:%{version}-%{release}
Requires: libswresample%{?_isa} = %{epoch}:%{version}-%{release}
Obsoletes: libavresemple-devel < %{epoch}:%{version}-%{release}
Provides: libavresemple-devel = %{epoch}:%{version}-%{release}
Obsoletes: libswresample-free-devel < %{epoch}:%{version}-%{release}
Provides: libswresample-free-devel = %{epoch}:%{version}-%{release}
@@ -376,6 +364,7 @@ This subpackage contains the headers for FFmpeg libswresample.
%package -n libswscale
Summary: FFmpeg image scaling and colorspace/pixel conversion library
Obsoletes: libswscale < %{epoch}:%{version}-%{release}
Obsoletes: libswscale-free < %{epoch}:%{version}-%{release}
Provides: libswscale-free = %{epoch}:%{version}-%{release}
@@ -387,6 +376,7 @@ pixel format conversion operations.
Summary: Development files for FFmpeg's image scaling and colorspace library
Requires: libavutil-devel%{?_isa} = %{epoch}:%{version}-%{release}
Requires: libswscale%{?_isa} = %{epoch}:%{version}-%{release}
Obsoletes: libswscale-devel < %{epoch}:%{version}-%{release}
Obsoletes: libswscale-free-devel < %{epoch}:%{version}-%{release}
Provides: libswscale-free-devel = %{epoch}:%{version}-%{release}
@@ -472,7 +462,7 @@ export CFLAGS="%{optflags} -Wno-incompatible-pointer-types"
--enable-libopenjpeg \
--enable-libopenmpt \
--enable-libopus \
--enable-libplacebo \
--disable-libplacebo \
--enable-libpulse \
--enable-libqrencode \
--disable-libquirc \
@@ -524,7 +514,6 @@ export CFLAGS="%{optflags} -Wno-incompatible-pointer-types"
--enable-opencl \
--enable-opengl \
--enable-openssl \
--enable-postproc \
--enable-sdl2 \
--enable-shared \
--enable-swresample \
@@ -641,15 +630,6 @@ mv doc/*.html doc/html
%{_libdir}/libavutil.so
%{_mandir}/man3/libavutil.3*
%files -n libpostproc
%license COPYING.GPLv2 LICENSE.md
%{_libdir}/libpostproc.so.%{postproc_soversion}*
%files -n libpostproc-devel
%{_includedir}/libpostproc
%{_libdir}/pkgconfig/libpostproc.pc
%{_libdir}/libpostproc.so
%files -n libswresample
%license COPYING.GPLv2 LICENSE.md
%{_libdir}/libswresample.so.%{swresample_soversion}*