@ -1,32 +1,54 @@
# TODO: add make test to %%check section
# TODO: add make test to %%check section
#global branch oldabi-
#global branch oldabi-
#global date 20180419
#global date 20220104
#global rel rc1
#global commit 311ea9c529117fb8e38abd6ca7e81782b6b21257
#global rel %(c=%{commit}; echo ${c:0:7})
# Cuda and others are only available on some arches
%if (0%{?fedora} >= 37 || 0%{?rhel} >= 9) && 0%{!?_with_cuda:0}
%global cuda_arches x86_64
%bcond_without libavcodec_freeworld
%else
%bcond_with libavcodec_freeworld
%endif
%if 0%{?el7}
%undefine _package_note_file
%global _without_aom 1
%global _without_dav1d 1
%ifarch %{ix86}
%global _without_frei0r 1
# Fails due to asm issue
%global _without_opus 1
%global _lto_cflags %{nil}
%global _without_srt 1
%global _without_vpx 1
%endif
%endif
%if 0%{?fedora} || 0%{?rhel} > 7
# Cuda and others are only available on some arches
%if 0%{?rhel} > 7
%global cuda_arches x86_64
%ifarch x86_64 i686
%global _with_vapoursynth 1
# Disable because of gcc issue
%global _without_lensfun 1
%if 0%{?fedora}
%global _with_placebo 1
%ifnarch i686
%global _with_bs2b 1
%global _with_chromaprint 1
%global _with_ilbc 1
%global _with_openh264 1
%global _with_rav1e 1
%global _with_smb 1
%global _with_snappy 1
%global _with_tesseract 1
%global _with_twolame 1
%global _with_wavpack 1
%global _with_webp 1
%global _with_zmq 1
%else
%global _without_rubberband 1
%global _without_vulkan 1
%endif
%endif
%endif
%endif
%ifarch x86_64
%ifarch x86_64
%global _with_mfx 1
%global _with_mfx 1
%global _with_svtav1 1
%global _with_vapoursynth 1
%global _with_vmaf 1
%global _with_vmaf 1
%endif
%endif
%endif
# flavor nonfree
# flavor nonfree
%if 0%{?_with_cuda:1}
%if 0%{?_with_cuda:1}
@ -42,20 +64,22 @@
%global _without_cdio 1
%global _without_cdio 1
%global _without_frei0r 1
%global _without_frei0r 1
%global _without_gpl 1
%global _without_gpl 1
%global _without_rubberband 1
%global _without_vidstab 1
%global _without_vidstab 1
%global _without_x264 1
%global _without_x264 1
%global _without_x265 1
%global _without_x265 1
%global _without_xvid 1
%global _without_xvid 1
%undefine _with_smb
%endif
%endif
# Disable nvenc when not relevant
# Disable nvenc when not relevant
%ifnarch %{cuda_arches}
%ifnarch %{cuda_arches} aarch64
%global _without_nvenc 1
%global _without_nvenc 1
%endif
%endif
# extras flags
# extras flags
%if 0%{!?_cuda_version:1}
%if 0%{!?_cuda_version:1}
%global _cuda_version 10 .2
%global _cuda_version 11 .2
%endif
%endif
%global _cuda_version_rpm %(echo %{_cuda_version} | sed -e 's/\\./-/')
%global _cuda_version_rpm %(echo %{_cuda_version} | sed -e 's/\\./-/')
%global _cuda_bindir %{_cuda_prefix}/bin
%global _cuda_bindir %{_cuda_prefix}/bin
@ -80,7 +104,7 @@ ExclusiveArch: armv7hnl
%global lesser L
%global lesser L
%endif
%endif
%if 0%{!?_without_amr} || 0%{?_with_gmp} || 0%{?_with_smb}
%if 0%{!?_without_amr} || 0%{?_with_gmp} || 0%{?_with_smb} || 0%{?_with_vmaf}
%global ffmpeg_license %{?lesser}GPLv3+
%global ffmpeg_license %{?lesser}GPLv3+
%else
%else
%global ffmpeg_license %{?lesser}GPLv2+
%global ffmpeg_license %{?lesser}GPLv2+
@ -88,21 +112,26 @@ ExclusiveArch: armv7hnl
Summary: Digital VCR and streaming server
Summary: Digital VCR and streaming server
Name: ffmpeg%{?flavor}
Name: ffmpeg%{?flavor}
Version: 4.2.10
Version: 5.1.6
Release: 1%{?dist}
Release: 1%{?dist}
License: %{ffmpeg_license}
License: %{ffmpeg_license}
URL: http://ffmpeg.org/
URL: https ://ffmpeg.org/
%if 0%{?date}
%if 0%{?date}
Source0: ffmpeg-%{?branch}%{date}.tar.bz2
Source0: ffmpeg-%{?branch}%{date}.tar.bz2
%else
%else
Source0: http://ffmpeg.org/releases/ffmpeg-%{version}.tar.xz
Source0: https://ffmpeg.org/releases/ffmpeg-%{version}.tar.xz
Source1: https://ffmpeg.org/releases/ffmpeg-%{version}.tar.xz.asc
Source2: https://ffmpeg.org/ffmpeg-devel.asc
%endif
%endif
Patch0: fix_ppc_build.patch
# We don't endorse adding this patch but fedora insists on breaking the ffmpeg ABI
Patch1: fix-vmaf-model-path.patch
Patch0: ffmpeg-chromium.patch
Conflicts: %{name}-free
Requires: %{name}-libs%{?_isa} = %{version}-%{release}
Requires: %{name}-libs%{?_isa} = %{version}-%{release}
%{?_with_cuda:BuildRequires: cuda-minimal-build-%{_cuda_version_rpm} cuda-drivers-devel}
%{?_with_cuda:BuildRequires: cuda-minimal-build-%{_cuda_version_rpm} cuda-drivers-devel}
%{?_with_cuda:%{?!_with_cuda_nvcc:BuildRequires: clang}}
%{?_with_libnpp:BuildRequires: pkgconfig(nppc-%{_cuda_version})}
%{?_with_libnpp:BuildRequires: pkgconfig(nppc-%{_cuda_version})}
BuildRequires: alsa-lib-devel
BuildRequires: alsa-lib-devel
BuildRequires: AMF-devel
BuildRequires: bzip2-devel
BuildRequires: bzip2-devel
%{?_with_faac:BuildRequires: faac-devel}
%{?_with_faac:BuildRequires: faac-devel}
%{?_with_fdk_aac:BuildRequires: fdk-aac-devel}
%{?_with_fdk_aac:BuildRequires: fdk-aac-devel}
@ -112,14 +141,16 @@ BuildRequires: freetype-devel
BuildRequires: fribidi-devel
BuildRequires: fribidi-devel
%{!?_without_frei0r:BuildRequires: frei0r-devel}
%{!?_without_frei0r:BuildRequires: frei0r-devel}
%{?_with_gme:BuildRequires: game-music-emu-devel}
%{?_with_gme:BuildRequires: game-music-emu-devel}
BuildRequires: gnupg2
BuildRequires: gnutls-devel
BuildRequires: gnutls-devel
BuildRequires: gsm-devel
BuildRequires: gsm-devel
%{?_with_ilbc:BuildRequires: ilbc-devel}
%{?_with_ilbc:BuildRequires: ilbc-devel}
BuildRequires: lame-devel >= 3.98.3
BuildRequires: lame-devel >= 3.98.3
%{!?_without_jack:BuildRequires: jack-audio-connection-kit-devel}
%{!?_without_jack:BuildRequires: jack-audio-connection-kit-devel}
%{!?_without_jxl:BuildRequires: libjxl-devel}
%{!?_without_ladspa:BuildRequires: ladspa-devel}
%{!?_without_ladspa:BuildRequires: ladspa-devel}
%{!?_without_aom:BuildRequires: libaom-devel}
%{!?_without_aom:BuildRequires: libaom-devel}
%{!?_without_dav1d:BuildRequires: libdav1d-devel >= 0.2.1 }
%{!?_without_dav1d:BuildRequires: libdav1d-devel}
%{!?_without_ass:BuildRequires: libass-devel}
%{!?_without_ass:BuildRequires: libass-devel}
%{!?_without_bluray:BuildRequires: libbluray-devel}
%{!?_without_bluray:BuildRequires: libbluray-devel}
%{?_with_bs2b:BuildRequires: libbs2b-devel}
%{?_with_bs2b:BuildRequires: libbs2b-devel}
@ -127,6 +158,7 @@ BuildRequires: lame-devel >= 3.98.3
%{!?_without_cdio:BuildRequires: libcdio-paranoia-devel}
%{!?_without_cdio:BuildRequires: libcdio-paranoia-devel}
%{?_with_chromaprint:BuildRequires: libchromaprint-devel}
%{?_with_chromaprint:BuildRequires: libchromaprint-devel}
%{?_with_crystalhd:BuildRequires: libcrystalhd-devel}
%{?_with_crystalhd:BuildRequires: libcrystalhd-devel}
%{!?_without_lensfun:BuildRequires: lensfun-devel}
%if 0%{?_with_ieee1394}
%if 0%{?_with_ieee1394}
BuildRequires: libavc1394-devel
BuildRequires: libavc1394-devel
BuildRequires: libdc1394-devel
BuildRequires: libdc1394-devel
@ -136,10 +168,14 @@ BuildRequires: libdrm-devel
BuildRequires: libgcrypt-devel
BuildRequires: libgcrypt-devel
BuildRequires: libGL-devel
BuildRequires: libGL-devel
BuildRequires: libmodplug-devel
BuildRequires: libmodplug-devel
BuildRequires: libmysofa-devel
%{?_with_openh264:BuildRequires: openh264-devel}
BuildRequires: libopenmpt-devel
%{?_with_placebo:BuildRequires: libplacebo-devel}
BuildRequires: librsvg2-devel
BuildRequires: librsvg2-devel
# Disable rtmp because of rfbz: 6441 & 2399
%{?_with_rtmp:BuildRequires: librtmp-devel}
%{?_with_rtmp:BuildRequires: librtmp-devel}
%{?_with_smb:BuildRequires: libsmbclient-devel}
%{?_with_smb:BuildRequires: libsmbclient-devel}
%{!?_without_srt:BuildRequires: srt-devel > 1.3.0}
BuildRequires: libssh-devel
BuildRequires: libssh-devel
BuildRequires: libtheora-devel
BuildRequires: libtheora-devel
BuildRequires: libv4l-devel
BuildRequires: libv4l-devel
@ -159,6 +195,8 @@ BuildRequires: nasm
%{!?_without_amr:BuildRequires: opencore-amr-devel vo-amrwbenc-devel}
%{!?_without_amr:BuildRequires: opencore-amr-devel vo-amrwbenc-devel}
%{?_with_omx:BuildRequires: libomxil-bellagio-devel}
%{?_with_omx:BuildRequires: libomxil-bellagio-devel}
BuildRequires: libxcb-devel
BuildRequires: libxcb-devel
BuildRequires: libxml2-devel
%{!?_without_lv2:BuildRequires: lilv-devel lv2-devel}
%{!?_without_openal:BuildRequires: openal-soft-devel}
%{!?_without_openal:BuildRequires: openal-soft-devel}
%if 0%{!?_without_opencl:1}
%if 0%{!?_without_opencl:1}
BuildRequires: opencl-headers ocl-icd-devel
BuildRequires: opencl-headers ocl-icd-devel
@ -169,22 +207,26 @@ BuildRequires: openjpeg2-devel
%{!?_without_opus:BuildRequires: opus-devel >= 1.1.3}
%{!?_without_opus:BuildRequires: opus-devel >= 1.1.3}
%{!?_without_pulse:BuildRequires: pulseaudio-libs-devel}
%{!?_without_pulse:BuildRequires: pulseaudio-libs-devel}
BuildRequires: perl(Pod::Man)
BuildRequires: perl(Pod::Man)
%{?_with_rubberband:BuildRequires: rubberband-devel}
%{?_with_rav1e:BuildRequires: pkgconfig(rav1e)}
%{!?_without_rubberband:BuildRequires: rubberband-devel}
%{!?_without_tools:BuildRequires: SDL2-devel}
%{!?_without_tools:BuildRequires: SDL2-devel}
%{?_with_snappy:BuildRequires: snappy-devel}
%{?_with_snappy:BuildRequires: snappy-devel}
BuildRequires: soxr-devel
BuildRequires: soxr-devel
BuildRequires: speex-devel
BuildRequires: speex-devel
BuildRequires: pkgconfig(srt)
%{?_with_svtav1:BuildRequires: svt-av1-devel >= 0.9.0}
%{?_with_tesseract:BuildRequires: tesseract-devel}
%{?_with_tesseract:BuildRequires: tesseract-devel}
#BuildRequires: texi2html
#BuildRequires: texi2html
BuildRequires: texinfo
BuildRequires: texinfo
%{?_with_twolame:BuildRequires: twolame-devel}
%{?_with_twolame:BuildRequires: twolame-devel}
%{?_with_vmaf:BuildRequires: libvmaf-devel}
%{?_with_vmaf:BuildRequires: libvmaf-devel >= 1.5.2 }
%{?_with_wavpack:BuildRequires: wavpack-devel}
%{?_with_wavpack:BuildRequires: wavpack-devel}
%{!?_without_vidstab:BuildRequires: vid.stab-devel}
%{!?_without_vidstab:BuildRequires: vid.stab-devel}
%{!?_without_vulkan:BuildRequires: vulkan-loader-devel pkgconfig(shaderc)}
%{!?_without_x264:BuildRequires: x264-devel >= 0.0.0-0.31}
%{!?_without_x264:BuildRequires: x264-devel >= 0.0.0-0.31}
%{!?_without_x265:BuildRequires: x265-devel}
%{!?_without_x265:BuildRequires: x265-devel}
%{!?_without_xvid:BuildRequires: xvidcore-devel}
%{!?_without_xvid:BuildRequires: xvidcore-devel}
BuildRequires: zimg-devel >= 2.7.0
%{!?_without_zimg: BuildRequires: zimg-devel >= 2.7.0}
BuildRequires: zlib-devel
BuildRequires: zlib-devel
%{?_with_zmq:BuildRequires: zeromq-devel}
%{?_with_zmq:BuildRequires: zeromq-devel}
%{!?_without_zvbi:BuildRequires: zvbi-devel}
%{!?_without_zvbi:BuildRequires: zvbi-devel}
@ -197,6 +239,15 @@ and video, MPEG4, h263, ac3, asf, avi, real, mjpeg, and flash.
%package libs
%package libs
Summary: Libraries for %{name}
Summary: Libraries for %{name}
Conflicts: libavcodec-free
Conflicts: libavfilter-free
Conflicts: libavformat-free
Conflicts: libavutil-free
Conflicts: libpostproc-free
Conflicts: libswresample-free
Conflicts: libswscale-free
%{?_with_vmaf:Recommends: vmaf-models}
Provides: libavcodec-freeworld = %{version}-%{release}
%description libs
%description libs
FFmpeg is a complete and free Internet live audio and video
FFmpeg is a complete and free Internet live audio and video
@ -207,6 +258,7 @@ This package contains the libraries for %{name}
%package -n libavdevice%{?flavor}
%package -n libavdevice%{?flavor}
Summary: Special devices muxing/demuxing library
Summary: Special devices muxing/demuxing library
Conflicts: libavdevice-free
Requires: %{name}-libs%{_isa} = %{version}-%{release}
Requires: %{name}-libs%{_isa} = %{version}-%{release}
%description -n libavdevice%{?flavor}
%description -n libavdevice%{?flavor}
@ -216,6 +268,7 @@ devices, audio capture and playback etc.
%package devel
%package devel
Summary: Development package for %{name}
Summary: Development package for %{name}
Conflicts: %{name}-free-devel
Requires: %{name}-libs%{_isa} = %{version}-%{release}
Requires: %{name}-libs%{_isa} = %{version}-%{release}
Requires: libavdevice%{?flavor}%{_isa} = %{version}-%{release}
Requires: libavdevice%{?flavor}%{_isa} = %{version}-%{release}
Requires: pkgconfig
Requires: pkgconfig
@ -227,6 +280,18 @@ VCR. It can encode in real time in many formats including MPEG1 audio
and video, MPEG4, h263, ac3, asf, avi, real, mjpeg, and flash.
and video, MPEG4, h263, ac3, asf, avi, real, mjpeg, and flash.
This package contains development files for %{name}
This package contains development files for %{name}
%if %{with libavcodec_freeworld}
%package -n libavcodec-freeworld
Summary: Freeworld libavcodec to complement the distro counterparts
# Supplements doesn't work well yet - we can rely on comps for now
#Supplements: libavcodec-free >= %%{version}
Conflicts: libavcodec-free < %{version}
%description -n libavcodec-freeworld
Freeworld libavcodec to complement the distro counterparts
%endif
# Don't use the %%configure macro as this is not an autotool script
# Don't use the %%configure macro as this is not an autotool script
%global ff_configure \
%global ff_configure \
./configure \\\
./configure \\\
@ -240,7 +305,7 @@ This package contains development files for %{name}
--arch=%{_target_cpu} \\\
--arch=%{_target_cpu} \\\
--optflags="%{optflags}" \\\
--optflags="%{optflags}" \\\
--extra-ldflags="%{?__global_ldflags} %{?cuda_ldflags} %{?libnpp_ldlags}" \\\
--extra-ldflags="%{?__global_ldflags} %{?cuda_ldflags} %{?libnpp_ldlags}" \\\
--extra-cflags="%{?cuda_cflags} %{?libnpp_cflags}" \\\
--extra-cflags="%{?cuda_cflags} %{?libnpp_cflags} -I%{_includedir}/rav1e " \\\
%{?flavor:--disable-manpages} \\\
%{?flavor:--disable-manpages} \\\
%{?progs_suffix:--progs-suffix=%{progs_suffix}} \\\
%{?progs_suffix:--progs-suffix=%{progs_suffix}} \\\
%{?build_suffix:--build-suffix=%{build_suffix}} \\\
%{?build_suffix:--build-suffix=%{build_suffix}} \\\
@ -260,7 +325,7 @@ This package contains development files for %{name}
%{!?_without_bluray:--enable-libbluray} \\\
%{!?_without_bluray:--enable-libbluray} \\\
%{?_with_bs2b:--enable-libbs2b} \\\
%{?_with_bs2b:--enable-libbs2b} \\\
%{?_with_caca:--enable-libcaca} \\\
%{?_with_caca:--enable-libcaca} \\\
%{?_with_cuda:--enable-cuda-sdk --enable-nonfree} \\\
%{?_with_cuda_nvcc:--enable-cuda-nvcc --enable-nonfree} \\\
%{?_with_cuvid:--enable-cuvid --enable-nonfree} \\\
%{?_with_cuvid:--enable-cuvid --enable-nonfree} \\\
%{!?_without_cdio:--enable-libcdio} \\\
%{!?_without_cdio:--enable-libcdio} \\\
%{?_with_ieee1394:--enable-libdc1394 --enable-libiec61883} \\\
%{?_with_ieee1394:--enable-libdc1394 --enable-libiec61883} \\\
@ -269,13 +334,16 @@ This package contains development files for %{name}
%{?_with_fdk_aac:--enable-libfdk-aac --enable-nonfree} \\\
%{?_with_fdk_aac:--enable-libfdk-aac --enable-nonfree} \\\
%{?_with_flite:--enable-libflite} \\\
%{?_with_flite:--enable-libflite} \\\
%{!?_without_jack:--enable-libjack} \\\
%{!?_without_jack:--enable-libjack} \\\
%{!?_without_jxl:--enable-libjxl} \\\
--enable-libfreetype \\\
--enable-libfreetype \\\
%{!?_without_fribidi:--enable-libfribidi} \\\
%{!?_without_fribidi:--enable-libfribidi} \\\
%{?_with_gme:--enable-libgme} \\\
%{?_with_gme:--enable-libgme} \\\
--enable-libgsm \\\
--enable-libgsm \\\
%{?_with_ilbc:--enable-libilbc} \\\
%{?_with_ilbc:--enable-libilbc} \\\
%{!?_without_lensfun:--enable-liblensfun} \\\
%{?_with_libnpp:--enable-libnpp --enable-nonfree} \\\
%{?_with_libnpp:--enable-libnpp --enable-nonfree} \\\
--enable-libmp3lame \\\
--enable-libmp3lame \\\
--enable-libmysofa \\\
%{?_with_netcdf:--enable-netcdf} \\\
%{?_with_netcdf:--enable-netcdf} \\\
%{?_with_mmal:--enable-mmal} \\\
%{?_with_mmal:--enable-mmal} \\\
%{!?_without_nvenc:--enable-nvenc} \\\
%{!?_without_nvenc:--enable-nvenc} \\\
@ -285,18 +353,23 @@ This package contains development files for %{name}
%{!?_without_opencl:--enable-opencl} \\\
%{!?_without_opencl:--enable-opencl} \\\
%{?_with_opencv:--enable-libopencv} \\\
%{?_with_opencv:--enable-libopencv} \\\
%{!?_without_opengl:--enable-opengl} \\\
%{!?_without_opengl:--enable-opengl} \\\
%{?_with_openh264:--enable-libopenh264} \\\
--enable-libopenjpeg \\\
--enable-libopenjpeg \\\
--enable-libopenmpt \\\
%{!?_without_opus:--enable-libopus} \\\
%{!?_without_opus:--enable-libopus} \\\
%{!?_without_pulse:--enable-libpulse} \\\
%{!?_without_pulse:--enable-libpulse} \\\
%{?_with_placebo:--enable-libplacebo} \\\
--enable-librsvg \\\
--enable-librsvg \\\
%{?_with_rav1e:--enable-librav1e} \\\
%{?_with_rtmp:--enable-librtmp} \\\
%{?_with_rtmp:--enable-librtmp} \\\
%{?_with_rubberband:--enable-librubberband} \\\
%{! ?_without _rubberband:--enable-librubberband} \\\
%{?_with_smb:--enable-libsmbclient} \\\
%{?_with_smb:--enable-libsmbclient --enable-version3 } \\\
%{?_with_snappy:--enable-libsnappy} \\\
%{?_with_snappy:--enable-libsnappy} \\\
%{!?_without_srt:--enable-libsrt} \\\
--enable-libsoxr \\\
--enable-libsoxr \\\
--enable-libspeex \\\
--enable-libspeex \\\
--enable-libsrt \\\
--enable-libssh \\\
--enable-libssh \\\
%{?_with_svtav1:--enable-libsvtav1} \\\
%{?_with_tesseract:--enable-libtesseract} \\\
%{?_with_tesseract:--enable-libtesseract} \\\
--enable-libtheora \\\
--enable-libtheora \\\
%{?_with_twolame:--enable-libtwolame} \\\
%{?_with_twolame:--enable-libtwolame} \\\
@ -306,15 +379,17 @@ This package contains development files for %{name}
%{?_with_vmaf:--enable-libvmaf --enable-version3} \\\
%{?_with_vmaf:--enable-libvmaf --enable-version3} \\\
%{?_with_vapoursynth:--enable-vapoursynth} \\\
%{?_with_vapoursynth:--enable-vapoursynth} \\\
%{!?_without_vpx:--enable-libvpx} \\\
%{!?_without_vpx:--enable-libvpx} \\\
%{!?_without_vulkan:--enable-vulkan --enable-libshaderc} \\\
%{?_with_webp:--enable-libwebp} \\\
%{?_with_webp:--enable-libwebp} \\\
%{!?_without_x264:--enable-libx264} \\\
%{!?_without_x264:--enable-libx264} \\\
%{!?_without_x265:--enable-libx265} \\\
%{!?_without_x265:--enable-libx265} \\\
%{!?_without_xvid:--enable-libxvid} \\\
%{!?_without_xvid:--enable-libxvid} \\\
--enable-libzimg \\\
--enable-libxml2 \\\
%{!?_without_zimg:--enable-libzimg} \\\
%{?_with_zmq:--enable-libzmq} \\\
%{?_with_zmq:--enable-libzmq} \\\
%{!?_without_zvbi:--enable-libzvbi} \\\
%{!?_without_zvbi:--enable-libzvbi} \\\
%{!?_without_lv2:--enable-lv2} \\\
--enable-avfilter \\\
--enable-avfilter \\\
--enable-avresample \\\
--enable-libmodplug \\\
--enable-libmodplug \\\
--enable-postproc \\\
--enable-postproc \\\
--enable-pthreads \\\
--enable-pthreads \\\
@ -330,6 +405,7 @@ This package contains development files for %{name}
%autosetup -p1 -n ffmpeg-%{?branch}%{date}
%autosetup -p1 -n ffmpeg-%{?branch}%{date}
echo "git-snapshot-%{?branch}%{date}-rpmfusion" > VERSION
echo "git-snapshot-%{?branch}%{date}-rpmfusion" > VERSION
%else
%else
%{gpgverify} --keyring='%{SOURCE2}' --signature='%{SOURCE1}' --data='%{SOURCE0}'
%autosetup -p1 -n ffmpeg-%{version}
%autosetup -p1 -n ffmpeg-%{version}
%endif
%endif
# fix -O3 -g in host_cflags
# fix -O3 -g in host_cflags
@ -345,6 +421,9 @@ cp -pr doc/examples/{*.c,Makefile,README} _doc/examples/
--disable-doc \
--disable-doc \
--disable-ffmpeg --disable-ffplay --disable-ffprobe \
--disable-ffmpeg --disable-ffplay --disable-ffprobe \
%endif
%endif
%ifnarch %{ix86}
--enable-lto \
%endif
%ifarch %{ix86}
%ifarch %{ix86}
--cpu=%{_target_cpu} \
--cpu=%{_target_cpu} \
%endif
%endif
@ -396,6 +475,17 @@ rm -r %{buildroot}%{_datadir}/%{name}/examples
install -pm755 tools/qt-faststart %{buildroot}%{_bindir}
install -pm755 tools/qt-faststart %{buildroot}%{_bindir}
%endif
%endif
%if %{with libavcodec_freeworld}
# Install the libavcodec freeworld counterpart
mkdir -p %{buildroot}%{_sysconfdir}/ld.so.conf.d/
mkdir -p %{buildroot}%{_libdir}/%{name}
echo -e "%{_libdir}/%{name}\n" > %{buildroot}%{_sysconfdir}/ld.so.conf.d/%{name}-%{_lib}.conf
cp -pa %{buildroot}%{_libdir}/libavcodec.so.* \
%{buildroot}%{_libdir}/%{name}
# Strip to prevent debuginfo duplication
strip %{buildroot}%{_libdir}/%{name}/libavcodec.so.*
%endif
%ldconfig_scriptlets libs
%ldconfig_scriptlets libs
%ldconfig_scriptlets -n libavdevice%{?flavor}
%ldconfig_scriptlets -n libavdevice%{?flavor}
@ -429,68 +519,322 @@ install -pm755 tools/qt-faststart %{buildroot}%{_bindir}
%files devel
%files devel
%doc MAINTAINERS doc/APIchanges doc/*.txt
%doc MAINTAINERS doc/APIchanges doc/*.txt
%doc _doc/examples
%doc _doc/examples
%doc %{_docdir}/%{name}/*.html
%doc %{_docdir}/%{name}/*.{css, html}
%{_includedir}/%{name}
%{_includedir}/%{name}
%{_libdir}/pkgconfig/lib*.pc
%{_libdir}/pkgconfig/lib*.pc
%{_libdir}/lib*.so
%{_libdir}/lib*.so
%if %{with libavcodec_freeworld}
%files -n libavcodec-freeworld
%{_sysconfdir}/ld.so.conf.d/%{name}-%{_lib}.conf
%{_libdir}/%{name}/libavcodec.so.*
%endif
%changelog
%changelog
* Sun Aug 04 2024 Leigh Scott <leigh123linux@gmail.com> - 4.2.10-1
* Mon Aug 05 2024 Leigh Scott <leigh123linux@gmail.com> - 5.1.6-1
- Update to 4.2.10
- Update to 5.1.6
* Sun Jun 16 2024 Leigh Scott <leigh123linux@gmail.com> - 5.1.5-1
- Update to 5.1.5
* Wed Nov 15 2023 Nicolas Chauvet <kwizart@gmail.com> - 5.1.4-1
- Update to 5.1.4
* Sun May 14 2023 Leigh Scott <leigh123linux@gmail.com> - 5.1.3-3
- fedora cisco repo isn't multiarch
* Fri May 12 2023 Leigh Scott <leigh123linux@gmail.com> - 5.1.3-2
- Enable openh264 for fedora
* Fri Mar 31 2023 Leigh Scott <leigh123linux@gmail.com> - 5.1.3-1
- Update to 5.1.3 release
- verify upstream source signature
* Sun Jan 08 2023 Leigh Scott <leigh123linux@gmail.com> - 5.1.2-9
- Enable libplacebo (rfbz#6549)
* Fri Dec 23 2022 Nicolas Chauvet <kwizart@gmail.com> - 5.1.2-8
- rebuild
* Sat Apr 22 2023 Leigh Scott <leigh123linux@gmail.com> - 4.2.9-1
* Mon Nov 21 2022 Nicolas Chauvet <kwizart@gmail.com> - 5.1.2-6
- Update to 4.2.9 release
- Enable libjxl
- Enable svt-av1 on el9 x86_64
* Mon Oct 17 2022 Leigh Scott <leigh123linux@gmail.com> - 4.2.8-1
* Thu Nov 17 2022 Nicolas Chauvet <kwizart@gmail.com> - 5.1.2-5
- Update to 4.2.8 release
- Rework el9 cases
* Thu May 26 2022 Leigh Scott <leigh123linux@gmail.com> - 4.2.7-1
* Mon Oct 17 2022 Leigh Scott <leigh123linux@gmail.com> - 5.1.2-3
- Update to 4.2.7 release
- Disable rtmp because of rfbz: 6441 & 2399
* Sat Apr 16 2022 Leigh Scott <leigh123linux@gmail.com> - 4.2.6-1
* Wed Sep 28 2022 Nicolas Chauvet <kwizart@gmail.com> - 5.1.2-2
- Update to 4.2.6 release
- Implement libavcodec-freeworld
* Wed Dec 01 2021 Leigh Scott <leigh123linux@gmail.com> - 4.2.5-2
* Sun Sep 25 2022 Leigh Scott <leigh123linux@gmail.com> - 5.1.2-1
- Update to 5.1.2 release
* Mon Sep 05 2022 Leigh Scott <leigh123linux@gmail.com> - 5.1.1-3
- Switch from glslang to shaderc
* Sun Sep 04 2022 Leigh Scott <leigh123linux@gmail.com> - 5.1.1-2
- move libs to a subdirectory to allow parallel installation with ffmpeg-free
* Thu Sep 01 2022 Leigh Scott <leigh123linux@gmail.com> - 5.1.1-1
- Update to 5.1.1 release
* Sun Aug 07 2022 RPM Fusion Release Engineering <sergiomb@rpmfusion.org> - 5.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild and ffmpeg
5.1
* Fri Jul 22 2022 Leigh Scott <leigh123linux@gmail.com> - 5.1-1
- Update to 5.1 release
* Mon Jul 11 2022 Leigh Scott <leigh123linux@gmail.com> - 5.0.1-10
- rebuilt
* Thu Jun 23 2022 Robert-André Mauchin <zebob.m@gmail.com> - 5.0.1-9
- Rebuilt for new AOM, dav1d, rav1e and svt-av1
* Fri Jun 17 2022 Nicolas Chauvet <kwizart@gmail.com> - 5.0.1-8
- Rebuilt
* Sun Jun 12 2022 Sérgio Basto <sergio@serjux.com> - 5.0.1-7
- unbootstrap
* Sun Jun 12 2022 Sérgio Basto <sergio@serjux.com> - 5.0.1-6
- Mass rebuild for x264-0.164
- Bootstrap build without chromaprint
* Fri May 27 2022 Leigh Scott <leigh123linux@gmail.com> - 5.0.1-5
- rebuilt
* Fri May 27 2022 Leigh Scott <leigh123linux@gmail.com> - 5.0.1-4
- rebuilt
- rebuilt
* Fri Oct 15 2021 Leigh Scott <leigh123linux@gmail.com> - 4.2.5-1
* Fri Apr 29 2022 Leigh Scott <leigh123linux@gmail.com> - 5.0.1-3
- Update to 4.2.5 release
- Fix zimg
* Tue Apr 05 2022 Leigh Scott <leigh123linux@gmail.com> - 5.0.1-2
- Add conflicts
* Tue Apr 05 2022 Leigh Scott <leigh123linux@gmail.com> - 5.0.1-1
- Update to 5.0.1 release
* Sun Mar 13 2022 Leigh Scott <leigh123linux@gmail.com> - 5.0-7
- Rebuilt
* Fri Mar 11 2022 Leigh Scott <leigh123linux@gmail.com> - 5.0-6
- Enable AMF support
* Thu Mar 03 2022 Leigh Scott <leigh123linux@gmail.com> - 5.0-5
- Rebuild
* Sat Feb 26 2022 Leigh Scott <leigh123linux@gmail.com> - 5.0-4
- Drop patch for chrome
* Fri Feb 11 2022 Leigh Scott <leigh123linux@gmail.com> - 5.0-3
- Add patch for chrome
* Fri Feb 04 2022 Leigh Scott <leigh123linux@gmail.com> - 5.0-2
- rebuilt
* Sat Jan 15 2022 Leigh Scott <leigh123linux@gmail.com> - 5.0-1
- Update to 5.0 release
* Tue Jan 04 2022 Leigh Scott <leigh123linux@gmail.com> - 5.0-0.1.20220104git311ea9c
- Update to 5.0-0.1.20220104git311ea9c
* Sun Dec 19 2021 Leigh Scott <leigh123linux@gmail.com> - 4.5-0.3.20211108git45dc668
- rebuilt
* Sun Jun 13 2021 Leigh Scott <leigh123linux@gmail.com> - 4.2.4-2
* Thu Dec 16 2021 Nicolas Chauvet <kwizart@gmail.com> - 4.5-0.2.20211108git45dc668
- Rebuilt
* Mon Nov 08 2021 Leigh Scott <leigh123linux@gmail.com> - 4.5-0.1.20211108git45dc668
- Update to 4.5-0.1.20211108git45dc668
* Mon Oct 25 2021 Leigh Scott <leigh123linux@gmail.com> - 4.4.1-1
- Update to 4.4.1 release
* Mon Aug 02 2021 RPM Fusion Release Engineering <leigh123linux@gmail.com> - 4.4-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Wed Jul 28 2021 Leigh Scott <leigh123linux@gmail.com> - 4.4-6
- Enable libwebp support
* Sat Jul 10 2021 Sérgio Basto <sergio@serjux.com> - 4.4-5
- Mass rebuild for x264-0.163
* Sun Jun 13 2021 Leigh Scott <leigh123linux@gmail.com> - 4.4-4
- Rebuild for aom bump
- Rebuild for aom bump
* Thu Jul 09 2020 Leigh Scott <leigh123linux@gmail.com> - 4.2.4-1
* Mon May 10 2021 Leigh Scott <leigh123linux@gmail.com> - 4.4-3
- Update to 4.2.4 release
- rebuilt
- Enable vapoursynth for el8
* Wed Apr 14 2021 Leigh Scott <leigh123linux@gmail.com> - 4.4-2
- Rebuild for new x265
* Fri Apr 09 2021 Leigh Scott <leigh123linux@gmail.com> - 4.4-1
- Update to 4.4 release
* Thu Apr 08 2021 Leigh Scott <leigh123linux@gmail.com> - 4.4-0.8.20210408git25e794a
- Update to 4.4-0.8.20210408git25e794a
* Wed Mar 24 2021 Leigh Scott <leigh123linux@gmail.com> - 4.4-0.7.20210323git0be265e
- rebuilt
* Tue Mar 23 2021 Leigh Scott <leigh123linux@gmail.com> - 4.4-0.6.20210323git0be265e
- Update to 4.4-0.6.20210323git0be265e
- Switch to release/4.4 branch
* Fri Mar 12 2021 Leigh Scott <leigh123linux@gmail.com> - 4.4-0.5.20210312git5136726
- Update to 20210312git5136726
* Thu Feb 18 2021 Leigh Scott <leigh123linux@gmail.com> - 4.4-0.4.20210218gitc2bf1dc
- Update to 20210218gitc2bf1dc
* Wed Feb 03 2021 RPM Fusion Release Engineering <leigh123linux@gmail.com> - 4.4-0.3.20210125gitc7016e3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Mon Jan 25 2021 Leigh Scott <leigh123linux@gmail.com> - 4.4-0.2.20210125gitc7016e3
- Update to 20210125gitc7016e3
* Thu Dec 31 2020 Leigh Scott <leigh123linux@gmail.com> - 4.4-0.1.20201231git477dd2d
- Update to 20201231git477dd2d
* Thu Dec 24 2020 Leigh Scott <leigh123linux@gmail.com> - 4.3.1-15
- Enable dash demuxer (rfbz#5876)
- Enable lv2 support (rfbz#5863)
* Mon Dec 14 2020 Leigh Scott <leigh123linux@gmail.com> - 4.3.1-14
- Actually do the dav1d rebuild
* Mon Dec 14 2020 Robert-André Mauchin <zebob.m@gmail.com> - 4.3.1-13
- Rebuild for dav1d SONAME bump
* Fri Nov 27 2020 Sérgio Basto <sergio@serjux.com> - 4.3.1-12
- Mass rebuild for x264-0.161
* Sat Oct 10 2020 Leigh Scott <leigh123linux@gmail.com> - 4.3.1-11
- Revert last commit
* Sat Oct 10 2020 Leigh Scott <leigh123linux@gmail.com> - 4.3.1-10
- Add VP9 10/12 Bit support for VDPAU
* Tue Aug 18 2020 Leigh Scott <leigh123linux@gmail.com> - 4.3.1-9
- Disable vulkan on i686
* Mon Aug 17 2020 RPM Fusion Release Engineering <leigh123linux@gmail.com> - 4.3.1-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Sat Jul 04 2020 Leigh Scott <leigh123linux@gmail.com> - 4.2.3-6
* Sun Aug 16 2020 Leigh Scott <leigh123linux@gmail.com> - 4.3.1-7
- Disable vapoursynth
- Disable rav1e support as rust packaging is rawhide only
* Thu Jul 02 2020 Leigh Scott <leigh123linux@gmail.com> - 4.2.3-5
* Sun Aug 09 2020 Leigh Scott <leigh123linux@gmail.com> - 4.3.1-6
- Enable LTO for x86
- Add glslang patches and bump version for build requires
- Add upstream patches to suppress asm warnings
* Mon Aug 03 2020 Leigh Scott <leigh123linux@gmail.com> - 4.3.1-5
- Disable LTO for x86
* Mon Aug 03 2020 Leigh Scott <leigh123linux@gmail.com> - 4.3.1-4
- Add patch to fix x86_64 LTO build issue
* Wed Jul 15 2020 Leigh Scott <leigh123linux@gmail.com> - 4.3.1-3
- Enabled libopenmpt
* Tue Jul 14 2020 Leigh Scott <leigh123linux@gmail.com> - 4.3.1-2
- Enable libmysofa
* Sat Jul 11 2020 Leigh Scott <leigh123linux@gmail.com> - 4.3.1-1
- Update to 4.3.1 release
* Wed Jul 08 2020 Leigh Scott <leigh123linux@gmail.com> - 4.3-5
- Rebuilt
- Rebuilt
* Wed Jun 24 2020 Leigh Scott <leigh123linux@gmail.com> - 4.2.3-4
* Tue Jul 07 2020 Sérgio Basto <sergio@serjux.com> - 4.3-4
- Mass rebuild for x264
* Wed Jul 01 2020 Leigh Scott <leigh123linux@gmail.com> - 4.3-3
- Rebuilt
* Wed Jun 24 2020 Leigh Scott <leigh123linux@gmail.com> - 4.3-2
- Enable vapoursynth
- Enable vapoursynth
* Sat Jun 06 2020 Leigh Scott <leigh123linux@gmail.com> - 4.2.3-3
* Mon Jun 15 2020 Leigh Scott <leigh123linux@gmail.com> - 4.3-1
- Enable libmodplug (rfbz#5670)
- Update to 4.3 release
* Sat Jun 06 2020 Leigh Scott <leigh123linux@gmail.com> - 4.3-0.23.20200606git
- Update to 20200606git
* Sun May 31 2020 Leigh Scott <leigh123linux@gmail.com> - 4.3-0.22.20200531git
- Update to 20200531git
* Mon May 25 2020 Leigh Scott <leigh123linux@gmail.com> - 4.3-0.21.20200524git
- Enable lensfun
* Sun May 24 2020 Leigh Scott <leigh123linux@gmail.com> - 4.3-0.20.20200524git
- Rebuild for dav1d SONAME bump
* Sat May 23 2020 Leigh Scott <leigh123linux@gmail.com> - 4.2.3-2
* Sat May 23 2020 Leigh Scott <leigh123linux@gmail.com> - 4.3-0.19.20 200523git
- Fix vmaf model path
- Update to 20200523git
* Thu May 21 2020 Leigh Scott <leigh123linux@gmail.com> - 4.2.3-1
* Sat May 16 2020 Leigh Scott <leigh123linux@gmail.com> - 4.3-0. 18.20200516git
- Update to 4.2.3 release
- Update to 20200516git
* Fri Apr 10 2020 Nicolas Chauvet <kwizart@gmail.com> - 4.2.2-5
* Fri May 08 2020 Leigh Scott <leigh123linux@gmail.com> - 4.3-0.17.20200508git
- Enable libsrt by default
- Update to 20200508gi t
* Thu Mar 12 2020 leigh123linux <leigh123linux@googlemail.com> - 4.2.2-4
* Fri May 01 2020 Leigh Scott <leigh123linux@gmail.com> - 4.3-0.16.20200501git
- Update to 20200501git
* Thu Apr 23 2020 Leigh Scott <leigh123linux@gmail.com> - 4.3-0.15.20200423git
- Update to 20200423git
- Enable nvdec for aarch64
* Sun Apr 19 2020 Leigh Scott <leigh123linux@gmail.com> - 4.3-0.14.20200419git
- Update to 20200419git
* Sun Apr 12 2020 Leigh Scott <leigh123linux@gmail.com> - 4.3-0.13.20200412git
- Update to 20200412git
* Wed Apr 08 2020 Nicolas Chauvet <kwizart@gmail.com> - 4.3-0.12.20200401git
- Enable srt
* Wed Apr 01 2020 Leigh Scott <leigh123linux@gmail.com> - 4.3-0.11.20200401git
- Update snapshot, fixes rfbz#5537
* Wed Apr 01 2020 leigh123linux <leigh123linux@googlemail.com> - 4.3-0.10.20200401git
- Update to 20200401git
* Sat Mar 21 2020 Leigh Scott <leigh123linux@gmail.com> - 4.3-0.9.20200321git
- Update to 20200321git
* Fri Mar 13 2020 leigh123linux <leigh123linux@googlemail.com> - 4.3-0.8.20200313git
- Update to 20200313git
* Wed Mar 11 2020 Leigh Scott <leigh123linux@gmail.com> - 4.3-0.7.20200305git
- Rebuilt for i686
- Rebuilt for i686
* Sun Feb 23 2020 Leigh Scott <leigh123linux@gmail.com> - 4.2.2-3
* Mon Mar 09 2020 leigh123linux <leigh123linux@googlemail.com> - 4.3-0.6.20200305git
- Enable rav1e support
* Thu Mar 05 2020 Leigh Scott <leigh123linux@gmail.com> - 4.3-0.5.20200305git
- Update to 20200305git
* Tue Feb 25 2020 Leigh Scott <leigh123linux@gmail.com> - 4.3-0.4.20200225git
- Update to 20200225git
* Sun Feb 23 2020 Leigh Scott <leigh123linux@gmail.com> - 4.3-0.3.20200222git
- Rebuild for x265
- Rebuild for x265
* Sun Feb 23 2020 Leigh Scott <leigh123linux@gmail.com> - 4.3-0.2.20200222git
- Enable vulkan support
* Sat Feb 22 2020 Leigh Scott <leigh123linux@googlemail.com> - 4.3-0.1.20200222git
- Update to 20200222git
* Tue Feb 04 2020 RPM Fusion Release Engineering <leigh123linux@gmail.com> - 4.2.2-2
* Tue Feb 04 2020 RPM Fusion Release Engineering <leigh123linux@gmail.com> - 4.2.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild