]> git.pld-linux.org Git - packages/ffmpeg.git/blobdiff - ffmpeg.spec
- release 4 (libjxl 0.10.x)
[packages/ffmpeg.git] / ffmpeg.spec
index 209621970698e29f873275a5554936d197cd2f8a..c76cf7c921f550797676d6186ad9e1bb54412b77 100644 (file)
@@ -1,6 +1,8 @@
 # TODO:
+# - avisynth+ >= 3.7.3 https://github.com/AviSynth/AviSynthPlus
+# - libopenvino
 # - libtensorflow [-ltensorflow tensorflow/c/c_api.h]
-# - AMF >= 1.4.9.0 (available at https://github.com/GPUOpen-LibrariesAndSDKs/AMF, where is original source?)
+# - AMF >= 1.4.29.0 (available at https://github.com/GPUOpen-LibrariesAndSDKs/AMF, where is original source?)
 #
 # How to deal with ffmpeg/opencv/chromaprint checken-egg problem:
 #      1. make-request -r --with bootstrap ffmpeg.spec
@@ -13,6 +15,7 @@
 %bcond_with    bootstrap       # disable features to able to build without installed ffmpeg
 %bcond_with    nonfree         # unblock non free options of package (currently: cuda_nvcc, decklib, fdk_aac, npp, openssl, libressl/libtls)
 %bcond_without amr             # AMR-NB/WB de/encoding via libopencore-amrnb/wb
+%bcond_without aom             # AV1 viden de/encoding via libaom
 %bcond_without aribb24         # ARIB text and caption decoding via libaribb24
 %bcond_without avs             # AVS encoding via xavs
 %bcond_without avs2            # AVS2 de/encoding via libdavs2/libxavs2
 %bcond_without codec2          # codec2 support using libcodec2
 %bcond_without chromaprint     # audio fingerprinting with chromaprint
 %bcond_with    cudasdk         # NVIDIA CUDA code using nvcc from CUDA SDK [BR: cuda.h, non-free]
-%bcond_without dav1d           # AV1 decoding via libdav1d
+%bcond_with    dav1d           # AV1 decoding via libdav1d
 %bcond_without dc1394          # IIDC-1394 grabbing using libdc1394
 %bcond_with    decklink        # Blackmagic DeckLink I/O support (requires nonfree)
 %bcond_with    fdk_aac         # AAC de/encoding via libfdk_aac (requires nonfree)
 %bcond_without ffnvcodec       # NVIDIA codecs support using ffnvcodec headers (covered: cuda cuvid nvdec nvenc)
 %bcond_without flite           # flite voice synthesis support
 %bcond_without frei0r          # frei0r video filtering
-%bcond_without fribidi         # fribidi support
-%bcond_without glslang         # GLSL->SPIRV compilation via libglslang
+%bcond_without fribidi         # fribidi support in drawtext filter
+%bcond_with    glslang         # GLSL->SPIRV compilation via libglslang
 %bcond_without gme             # Game Music Emu support
 %bcond_without gsm             # GSM de/encoding via libgsm
 %bcond_without iec61883        # ec61883 via libiec61883
 %bcond_without ilbc            # iLBC de/encoding via WebRTC libilbc
 %bcond_without kvazaar         # Kvazaar HEVC encoder support
 %bcond_without ladspa          # LADSPA audio filtering
-%bcond_without lensfun         # lensfun lens correction
+%bcond_without lcms            # ICC profile support via lcms2
+%bcond_with    lensfun         # lensfun lens correction
+%bcond_with    libaribcaption  # ARIB text and caption decoding via libaribcaption
 %bcond_with    libdrm          # Linux Direct Rendering Manager code
+%bcond_without libjxl          # JPEG XL de/encoding via libjxl
 %bcond_with    libklvanc       # Kernel Labs VANC processing (in decklink driver)
 %bcond_without libmysofa       # sofalizer filter
+%bcond_with    libplacebo      # libplacebo filters
+%bcond_without librist         # RIST support via librist
 %bcond_with    librsvg         # SVG rasterization via librsvg
 %bcond_with    libxml2         # XML parsing using libxml2
 %bcond_without lv2             # LV2 audio filtering
 %bcond_with    rav1e           # AV1 encoding using rav1e
 %bcond_with    rkmpp           # Rockchip Media Process Platform code [implies libdrm]
 %bcond_without rubberband      # rubberband filter
+%bcond_without shaderc         # GLSL->SPIRV compilation via libshaderc
 %bcond_without shine           # shine fixed-point MP3 encoder
+%bcond_with    smb             # SMB support via libsmbclient
 %bcond_without snappy          # Snappy compression support (needed for hap encoding)
+%bcond_without soxr            # SoX Resampler support
 %bcond_without srt             # Haivision SRT protocol support
 %bcond_without ssh             # SFTP protocol support via libssh
-%bcond_with    smb             # SMB support via libsmbclient
-%bcond_without soxr            # SoX Resampler support
+%bcond_with    svtav1          # AV1 encoding via SVT-AV1
 %bcond_with    tesseract       # OCR filter based on Tesseract
 %bcond_without theora          # Theora encoding via libtheora
-%bcond_without vmaf            # VMAF filter support
-%bcond_without x264            # H.264 x264 encoder
-%bcond_without x265            # H.265/HEVC x265 encoder
+%bcond_with    uavs3d          # AVS3 decoding via libuavs3d (TODO: enable when 1.1.41 released)
+%bcond_with    v4l2_request    # V4L2 request API for stateless hw decoding
 %bcond_without va              # VAAPI (Video Acceleration API)
 %bcond_without vapoursynth     # VapourSynth demuxer
 %bcond_without vidstab         # vid.stab video stabilization support
+%bcond_without vmaf            # VMAF filter support
 %bcond_without voamrwbenc      # MR-WB encoding via libvo-amrwbenc
+%bcond_with    vpl             # oneVPL instead of MFX
 %bcond_without vpx             # VP8, a high-quality video codec
 %bcond_without vulkan          # Vulkan code
-%bcond_without wavpack         # wavpack encoding support
 %bcond_without webp            # WebP encoding support
+%bcond_without x264            # H.264 x264 encoder
+%bcond_without x265            # H.265/HEVC x265 encoder
 %bcond_without xvid            # vid encoding via xvidcore
 %bcond_without zimg            # zscale filter based on z.lib
 %bcond_without zmq             # 0MQ message passing
 %bcond_without zvbi            # teletext via libzvbi
-%bcond_without doc             # don't build docs
+%bcond_without doc             # HTML documentation
+%bcond_without static_libs     # static libraries
 %bcond_with    tests           # "make check" (some tests fail as of 2.5)
 
 %if %{with bootstrap}
 %undefine      with_opencv
 %undefine      with_chromaprint
 %endif
-%if %{with rkmpp}
+%if %{with rkmpp} || %{with v4l2_request}
 %define                with_libdrm     1
 %endif
+%if %{with glslang}
+%undefine      with_shaderc
+%endif
+%if %{with vpl}
+%undefine      with_mfx
+%endif
 
 %ifnarch %{ix86} %{x8664}
 %undefine      with_ffnvcodec
 Summary:       FFmpeg - a very fast video and audio converter
 Summary(pl.UTF-8):     FFmpeg - szybki konwerter audio/wideo
 Name:          ffmpeg
-Version:       4.3.2
-Release:       3
+# NOTE: 7.0 prepared on DEVEL-7 branch, but other software is not ready (e.g. xine-lib 1.2.13, gstreamer-libav 1.24.2)
+Version:       6.1.1
+Release:       4
 # LGPL or GPL, chosen at configure time (GPL version is more featured)
 # GPL: frei0r libcdio libdavs2 rubberband vidstab x264 x265 xavs xavs2 xvid
 # v3 (allows *GPLv3 or Apache-licensed libs): gmp lensfun opencore-amr vmaf vo-*enc rkmpp
@@ -120,26 +140,29 @@ Release:  3
 License:       GPL v3+ with LGPL v3+ parts
 Group:         Applications/Multimedia
 Source0:       https://ffmpeg.org/releases/%{name}-%{version}.tar.xz
-# Source0-md5: 29529337d9b8f794a6142db10b717ec5
+# Source0-md5: 341d719415b7f95bb59f5016f2864ac6
 Patch0:                %{name}-omx-libnames.patch
 Patch1:                %{name}-atadenoise.patch
-URL:           http://www.ffmpeg.org/
-%{?with_decklink:BuildRequires:        Blackmagic_DeckLink_SDK >= 10.9.5}
+Patch2:                opencv4.patch
+Patch3:                v4l2-request-hwdec.patch
+Patch4:                %{name}-vulkan1.3.280.patch
+URL:           https://ffmpeg.org/
+%{?with_decklink:BuildRequires:        Blackmagic_DeckLink_SDK >= 10.11}
 %{?with_openal:BuildRequires:  OpenAL-devel >= 1.1}
 %{?with_opencl:BuildRequires:  OpenCL-devel >= 1.2}
 %{?with_opengl:BuildRequires:  OpenGL-GLX-devel}
 # libomxil-bellagio-devel or limoi-core-devel (just headers, library is dlopened at runtime)
 %{?with_omx:BuildRequires:     OpenMAX-IL-devel}
 BuildRequires: SDL2-devel >= 2.0.1
-BuildRequires: SDL2-devel < 2.1.0
-%{?with_vulkan:BuildRequires:  Vulkan-Loader-devel >= 1.1.97}
+BuildRequires: SDL2-devel < 3.0.0
+%{?with_vulkan:BuildRequires:  Vulkan-Loader-devel >= 1.3.277}
 BuildRequires: alsa-lib-devel
-BuildRequires: aom-devel >= 1.0.0
+%{?with_aom:BuildRequires:     aom-devel >= 1.0.0}
 %{?with_aribb24:BuildRequires: aribb24-devel}
 BuildRequires: bzip2-devel
 BuildRequires: celt-devel >= 0.11.0
 %{?with_codec2:BuildRequires:  codec2-devel}
-%{?with_dav1d:BuildRequires:   dav1d-devel >= 0.4.0}
+%{?with_dav1d:BuildRequires:   dav1d-devel >= 0.5.0}
 %{?with_avs2:BuildRequires:    davs2-devel >= 1.6}
 %{?with_fdk_aac:BuildRequires: fdk-aac-devel}
 %{?with_flite:BuildRequires:   flite-devel >= 1.4}
@@ -148,19 +171,25 @@ BuildRequires:    freetype-devel
 %{?with_frei0r:BuildRequires:  frei0r-devel}
 %{?with_fribidi:BuildRequires: fribidi-devel}
 %{?with_gme:BuildRequires:     game-music-emu-devel}
+BuildRequires: harfbuzz-devel
 %ifarch ppc
 # require version with altivec support fixed
 BuildRequires: gcc >= 5:3.3.2-3
 %endif
-%{?with_glslang:BuildRequires: glslang-devel}
+%{?with_glslang:BuildRequires: glslang-devel >= 11}
 BuildRequires: gmp-devel
 BuildRequires: gnutls-devel
 BuildRequires: jack-audio-connection-kit-devel
-%{?with_kvazaar:BuildRequires: kvazaar-devel >= 0.8.1}
+%{?with_kvazaar:BuildRequires: kvazaar-devel >= 2.0.0}
 %{?with_ladspa:BuildRequires:  ladspa-devel}
 BuildRequires: lame-libs-devel >= 3.98.3
-%{?with_lensfun:BuildRequires: lensfun-devel}
-BuildRequires: libass-devel
+%{?with_lcms:BuildRequires:    lcms2-devel >= 2.13}
+%{?with_lensfun:BuildRequires: lensfun-devel >= 0.3.95}
+%{?with_aribcaption:BuildRequires:     libaribcaption-devel}
+BuildRequires: libass-devel >= 0.11.0
+%ifnarch %arch_with_atomics64
+BuildRequires: libatomic-devel
+%endif
 %{?with_iec61883:BuildRequires:        libavc1394-devel}
 %{?with_bs2b:BuildRequires:    libbs2b-devel}
 BuildRequires: libbluray-devel
@@ -172,16 +201,19 @@ BuildRequires:    libcdio-paranoia-devel >= 0.90-2
 %{?with_libdrm:BuildRequires:  libdrm-devel}
 %{?with_gsm:BuildRequires:     libgsm-devel}
 %{?with_iec61883:BuildRequires:        libiec61883-devel}
+%{?with_libjxl:BuildRequires:  libjxl-devel >= 0.7.0}
 %{?with_libklvanc:BuildRequires:       libklvanc-devel}
 %{?with_modplug:BuildRequires: libmodplug-devel}
 %{?with_libmysofa:BuildRequires:       libmysofa-devel >= 0.7}
 %{?with_openmpt:BuildRequires: libopenmpt-devel >= 0.4.5}
+%{?with_libplacebo:BuildRequires:      libplacebo-devel >= 4.192.0}
 %if %{with dc1394} || %{with iec61883}
 BuildRequires: libraw1394-devel >= 2
 %endif
+%{?with_librist:BuildRequires: librist-devel >= 0.2.7}
 %{?with_librsvg:BuildRequires: librsvg-devel >= 2}
 BuildRequires: librtmp-devel
-%{?with_ssh:BuildRequires:     libssh-devel}
+%{?with_ssh:BuildRequires:     libssh-devel >= 0.6.0}
 %{?with_smb:BuildRequires:     libsmbclient-devel}
 %{?with_theora:BuildRequires:  libtheora-devel >= 1.0-0.beta3}
 BuildRequires: libtool >= 2:1.4d-3
@@ -195,22 +227,24 @@ BuildRequires:    libvdpau-devel >= 1.3
 BuildRequires: libvorbis-devel
 %{?with_vpx:BuildRequires:     libvpx-devel >= 1.4.0}
 %{?with_webp:BuildRequires:    libwebp-devel >= 0.4.0}
-# X264_BUILD >= 118
-%{?with_x264:BuildRequires:    libx264-devel >= 0.1.3-1.20111212_2245}
-# X265_BUILD >= 70
-%{?with_x265:BuildRequires:    libx265-devel >= 1.9}
+# X264_BUILD >= 122
+%{?with_x264:BuildRequires:    libx264-devel >= 0.1.3-1.20130827_2245}
+# X265_BUILD >= 89
+%{?with_x265:BuildRequires:    libx265-devel >= 2.0}
 # libxcb xcb-shm xcb-xfixes xcb-shape
 BuildRequires: libxcb-devel >= 1.4
 %{?with_libxml2:BuildRequires: libxml2-devel >= 2}
 %{?with_lv2:BuildRequires:     lilv-devel}
+%{?with_v4l2_request:BuildRequires:    linux-libc-headers >= 7:5.11.0}
 %{?with_lv2:BuildRequires:     lv2-devel}
-%{?with_mfx:BuildRequires:     mfx_dispatch-devel >= 1.19}
+%{?with_mfx:BuildRequires:     mfx_dispatch-devel >= 1.28}
 %ifarch %{ix86}
 %ifnarch i386 i486
 BuildRequires: nasm
 %endif
 %endif
-%{?with_ffnvcodec:BuildRequires:       nv-codec-headers >= 9.1.23.1}
+%{?with_ffnvcodec:BuildRequires:       nv-codec-headers >= 12.1.14.0}
+%{?with_vpl:BuildRequires:     oneVPL-devel >= 2.6}
 # amrnb,amrwb
 %{?with_amr:BuildRequires:     opencore-amr-devel}
 %{?with_opencv:BuildRequires:  opencv-devel >= 2}
@@ -223,27 +257,30 @@ BuildRequires:    perl-tools-pod
 BuildRequires: pkgconfig
 %{?with_pulseaudio:BuildRequires:      pulseaudio-devel}
 %{?with_rabbitmq:BuildRequires:        rabbitmq-c-devel >= 0.7.1}
-%{?with_rav1e:BuildRequires:   rav1e-devel >= 0.1.0}
+%{?with_rav1e:BuildRequires:   rav1e-devel >= 0.5.0}
 %{?with_rkmpp:BuildRequires:   rockchip-mpp-devel >= 1.3.7}
-BuildRequires: rpmbuild(macros) >= 1.752
+BuildRequires: rpmbuild(macros) >= 2.025
 %{?with_rubberband:BuildRequires:      rubberband-devel >= 1.8.1}
+%{?with_shaderc:BuildRequires: shaderc-devel >= 2019.1}
 %{?with_shine:BuildRequires:   shine-devel >= 3.0.0}
 %{?with_snappy:BuildRequires:  snappy-devel}
 %{?with_soxr:BuildRequires:    soxr-devel}
 BuildRequires: speex-devel >= 1:1.2-rc1
 %{?with_glslang:BuildRequires: spirv-tools-devel}
 %{?with_srt:BuildRequires:     srt-devel >= 1.3}
+%{?with_svtav1:BuildRequires:  svt-av1-devel >= 0.9.0}
 BuildRequires: tar >= 1:1.22
 %{?with_tesseract:BuildRequires:       tesseract-devel}
 %{?with_doc:BuildRequires:     tetex}
 %{?with_doc:BuildRequires:     texi2html}
 %{?with_doc:BuildRequires:     texinfo}
 BuildRequires: twolame-devel >= 0.3.10
+%{?with_uavs3d:BuildRequires:  uavs3d-devel >= 1.1.41}
+%{?with_v4l2_request:BuildRequires:    udev-devel}
 %{?with_vapoursynth:BuildRequires:     vapoursynth-devel >= 42}
 %{?with_vidstab:BuildRequires: vid.stab-devel >= 0.98}
-%{?with_vmaf:BuildRequires:    vmaf-devel >= 1.3.9}
+%{?with_vmaf:BuildRequires:    vmaf-devel >= 2.0.0}
 %{?with_voamrwbenc:BuildRequires:      vo-amrwbenc-devel}
-%{?with_wavpack:BuildRequires: wavpack-devel}
 %{?with_ilbc:BuildRequires:    webrtc-libilbc-devel}
 %{?with_avs:BuildRequires:     xavs-devel}
 %{?with_avs2:BuildRequires:    xavs2-devel >= 1.3}
@@ -253,28 +290,25 @@ BuildRequires:    xorg-lib-libXv-devel
 %{?with_xvid:BuildRequires:    xvid-devel >= 1:1.1.0}
 BuildRequires: xz
 BuildRequires: xz-devel
-BuildRequires: yasm
 %{?with_zmq:BuildRequires:     zeromq-devel >= 4.2.1}
 %{?with_zimg:BuildRequires:    zimg-devel >= 2.7.0}
 BuildRequires: zlib-devel
 %{?with_zvbi:BuildRequires:    zvbi-devel >= 0.2.28}
-%{?with_autoreqdep:BuildConflicts:     libpostproc}
 # overflows maximum hash table size
 BuildConflicts:        pdksh < 5.2.14-57
 Requires:      %{name}-libs = %{version}-%{release}
 Suggests:      fontconfig
 Suggests:      fonts-TTF-Roboto
-Obsoletes:     libpostproc
+Obsoletes:     libpostproc < 2:1.0-1
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
-%define                specflags       -fno-strict-aliasing
+%define                specflags       -fno-strict-aliasing -fPIC
 
 # -fomit-frame-pointer is always needed on x86 due to lack of registers (-fPIC takes one)
 %define                specflags_ia32  -fomit-frame-pointer
 # -mmmx is needed to enable <mmintrin.h> code.
 %define                specflags_i586  -mmmx
 %define                specflags_i686  -mmmx
-%define                specflags_ppc   -fPIC
 
 %description
 FFmpeg is a complete solution to record, convert and stream audio and
@@ -294,19 +328,24 @@ Summary:  ffmpeg libraries
 Summary(pl.UTF-8):     Biblioteki ffmpeg
 Group:         Libraries
 Requires:      SDL2 >= 2.0.1
-%{?with_vulkan:Requires:       Vulkan-Loader >= 1.1.97}
-Requires:      aom >= 1.0.0
+%{?with_vulkan:Requires:       Vulkan-Loader >= 1.3.277}
+%{?with_aom:Requires:  aom >= 1.0.0}
 Requires:      celt >= 0.11.0
-%{?with_dav1d:Requires:        dav1d >= 0.4.0}
+%{?with_dav1d:Requires:        dav1d >= 0.5.0}
 %{?with_avs2:Requires: davs2 >= 1.6}
 %{?with_flite:Requires:        flite >= 1.4}
 %if "%(rpm -q --qf '%{V}' gnutls-devel)" >= "3.0.20"
 # uses gnutls_certificate_set_x509_system_trust if >= 3.0.20
 Requires:      gnutls-libs >= 3.0.20
 %endif
-%{?with_kvazaar:Requires:      kvazaar-libs >= 0.8.1}
+%{?with_kvazaar:Requires:      kvazaar-libs >= 2.0.0}
+Requires:      libass >= 0.11.0
+%{?with_libjxl:Requires:       libjxl >= 0.7.0}
 %{?with_libmysofa:Requires:    libmysofa >= 0.7}
 %{?with_openmpt:Requires: libopenmpt >= 0.4.5}
+%{?with_libplacebo:Requires:   libplacebo >= 4.192.0}
+%{?with_librist:Requires:      librist >= 0.2.7}
+%{?with_ssh:Requires:  libssh >= 0.6.0}
 %{?with_theora:Requires:       libtheora >= 1.0-0.beta3}
 %if %{with va}
 Requires:      libva >= 1.0.3
@@ -316,24 +355,28 @@ Requires: libva-x11 >= 1.0.3
 Requires:      libvdpau >= 1.3
 %{?with_vpx:Requires:  libvpx >= 1.4.0}
 %{?with_webp:Requires: libwebp >= 0.4.0}
-%{?with_x264:Requires: libx264 >= 0.1.3-1.20111212_2245}
-%{?with_x265:Requires: libx265 >= 1.9}
+%{?with_x264:Requires: libx264 >= 0.1.3-1.20130827_2245}
+%{?with_x265:Requires: libx265 >= 2.0}
 Requires:      libxcb >= 1.4
 Requires:      lame-libs >= 3.98.3
-%{?with_mfx:Requires:  mfx_dispatch >= 1.19}
+%{?with_lcms:Requires: lcms2 >= 2.13}
+%{?with_mfx:Requires:  mfx_dispatch >= 1.28}
+%{?with_vpl:Requires:  oneVPL >= 2.6}
 %{?with_openh264:Requires:     openh264 >= 1.3}
 Requires:      openjpeg2 >= 2.1
 %{?with_rabbitmq:Requires:     rabbitmq-c >= 0.7.1}
-%{?with_rav1e:Requires:        rav1e-libs >= 0.1.0}
+%{?with_rav1e:Requires:        rav1e-libs >= 0.5.0}
 %{?with_rkmpp:Requires:        rockchip-mpp >= 1.3.7}
 %{?with_rubberband:Requires:   rubberband-libs >= 1.8.1}
 %{?with_shine:Requires:        shine >= 3.0.0}
 Requires:      speex >= 1:1.2-rc1
 %{?with_srt:Requires:  srt >= 1.3}
+%{?with_svtav1:Requires:       svt-av1 >= 0.9.0}
 Requires:      twolame-libs >= 0.3.10
+%{?with_uavs3d:Requires:       uavs3d >= 1.1.41}
 %{?with_vapoursynth:Requires:  vapoursynth >= 42}
 %{?with_vidstab:Requires:      vid.stab >= 0.98}
-%{?with_vmaf:Requires: vmaf-libs >= 1.3.9}
+%{?with_vmaf:Requires: vmaf-libs >= 2.0.0}
 %{?with_avs2:Requires: xavs2 >= 1.3}
 %{?with_xvid:Requires: xvid >= 1:1.1.0}
 %{?with_zmq:Requires:  zeromq >= 4.2.1}
@@ -365,16 +408,16 @@ Requires: %{name}-libs = %{version}-%{release}
 %{?with_openal:Requires:       OpenAL-devel >= 1.1}
 %{?with_opencl:Requires:       OpenCL-devel >= 1.2}
 %{?with_opengl:Requires:       OpenGL-devel}
-%{?with_vulkan:Requires:       Vulkan-Loader-devel >= 1.1.97}
 Requires:      SDL2-devel >= 2.0.1
+%{?with_vulkan:Requires:       Vulkan-Loader-devel >= 1.3.277}
 Requires:      alsa-lib-devel
-Requires:      aom-devel >= 1.0.0
+%{?with_aom:Requires:  aom-devel >= 1.0.0}
 %{?with_aribb24:Requires:      aribb24-devel}
-%{?with_avs2:Requires: davs2-devel >= 1.6}
 Requires:      bzip2-devel
 Requires:      celt-devel >= 0.11.0
 %{?with_codec2:Requires:       codec2-devel}
-%{?with_dav1d:Requires:        dav1d-devel >= 0.4.0}
+%{?with_dav1d:Requires:        dav1d-devel >= 0.5.0}
+%{?with_avs2:Requires: davs2-devel >= 1.6}
 %{?with_fdk_aac:Requires:      fdk-aac-devel}
 %{?with_flite:Requires:        flite-devel >= 1.4}
 Requires:      fontconfig-devel
@@ -383,11 +426,14 @@ Requires: freetype-devel
 %{?with_gme:Requires:  game-music-emu-devel}
 %{?with_glslang:Requires:      glslang-devel}
 Requires:      gnutls-devel
+Requires:      harfbuzz-devel
 Requires:      jack-audio-connection-kit-devel
-%{?with_kvazaar:Requires:      kvazaar-devel >= 0.8.1}
+%{?with_kvazaar:Requires:      kvazaar-devel >= 2.0.0}
 Requires:      lame-libs-devel >= 3.98.3
-%{?with_lensfun:Requires:      lensfun-devel}
-Requires:      libass-devel
+%{?with_lcms:Requires: lcms2-devel >= 2.13}
+%{?with_lensfun:Requires:      lensfun-devel >= 0.3.95}
+%{?with_libaribcaption:Requires:       libaribcaption-devel}
+Requires:      libass-devel >= 0.11.0
 %{?with_iec61883:Requires:     libavc1394-devel}
 Requires:      libbluray-devel
 %{?with_bs2b:Requires: libbs2b-devel}
@@ -399,6 +445,7 @@ Requires:   libcdio-paranoia-devel >= 0.90-2
 %{?with_libdrm:Requires:       libdrm-devel}
 %{?with_gsm:Requires:  libgsm-devel}
 %{?with_iec61883:Requires:     libiec61883-devel}
+%{?with_libjxl:Requires:       libjxl-devel >= 0.7.0}
 %{?with_libklvanc:Requires:    libklvanc-devel}
 %{?with_modplug:Requires:      libmodplug-devel}
 %{?with_libmysofa:Requires:    libmysofa-devel >= 0.7}
@@ -406,10 +453,11 @@ Requires: libcdio-paranoia-devel >= 0.90-2
 %if %{with dc1394} || %{with iec61883}
 Requires:      libraw1394-devel >= 2
 %endif
+%{?with_librist:Requires:      librist-devel >= 0.2.7}
 %{?with_librsvg:Requires:      librsvg-devel >= 2}
 Requires:      librtmp-devel
 %{?with_smb:Requires:  libsmbclient-devel}
-%{?with_ssh:Requires:  libssh-devel}
+%{?with_ssh:Requires:  libssh-devel >= 0.6.0}
 Requires:      libstdc++-devel
 %{?with_theora:Requires:       libtheora-devel >= 1.0-0.beta3}
 Requires:      libv4l-devel
@@ -420,13 +468,14 @@ Requires: libvdpau-devel >= 1.3
 Requires:      libvorbis-devel
 %{?with_vpx:Requires:  libvpx-devel >= 1.4.0}
 %{?with_webp:Requires: libwebp-devel >= 0.4.0}
-%{?with_x264:Requires: libx264-devel >= 0.1.3-1.20110625_2245}
-%{?with_x265:Requires: libx265-devel >= 1.9}
+%{?with_x264:Requires: libx264-devel >= 0.1.3-1.20130827_2245}
+%{?with_x265:Requires: libx265-devel >= 2.0}
 # libxcb xcb-shm xcb-xfixes xcb-shape
 Requires:      libxcb-devel >= 1.4
 %{?with_libxml2:Requires:      libxml2-devel >= 2}
 %{?with_lv2:Requires:  lilv-devel}
-%{?with_mfx:Requires:  mfx_dispatch-devel >= 1.19}
+%{?with_mfx:Requires:  mfx_dispatch-devel >= 1.28}
+%{?with_vpl:Requires:  oneVPL-devel >= 2.6}
 %{?with_amr:Requires:  opencore-amr-devel}
 %{?with_opencv:Requires:       opencv-devel >= 2}
 %{?with_openh264:Requires:     openh264-devel >= 1.3}
@@ -434,22 +483,24 @@ Requires: openjpeg2-devel >= 2.1
 Requires:      opus-devel
 %{?with_pulseaudio:Requires:   pulseaudio-devel}
 %{?with_rabbitmq:Requires:     rabbitmq-c-devel >= 0.7.1}
-%{?with_rav1e:Requires:        rav1e-devel >= 0.1.0}
+%{?with_rav1e:Requires:        rav1e-devel >= 0.5.0}
 %{?with_rkmpp:Requires:        rockchip-mpp-devel >= 1.3.7}
 %{?with_rubberband:Requires:   rubberband-devel >= 1.8.1}
+%{?with_shaderc:Requires:      shaderc-devel >= 2019.1}
 %{?with_shine:Requires:        shine-devel >= 3.0.0}
 %{?with_snappy:Requires:       snappy-devel}
 %{?with_soxr:Requires: soxr-devel}
 Requires:      speex-devel >= 1:1.2-rc1
 %{?with_glslang:Requires:      spirv-tools-devel}
 %{?with_srt:Requires:  srt-devel >= 1.3}
+%{?with_svtav1:Requires:       svt-av1-devel >= 0.9.0}
 %{?with_tesseract:Requires:    tesseract-devel}
 Requires:      twolame-devel >= 0.3.10
+%{?with_uavs3d:Requires:       uavs3d-devel >= 1.1.41}
 %{?with_vapoursynth:Requires:  vapoursynth-devel >= 42}
 %{?with_vidstab:Requires:      vid.stab-devel >= 0.98}
 %{?with_voamrwbenc:Requires:   vo-amrwbenc-devel}
-%{?with_vmaf:Requires: vmaf-devel >= 1.3.9}
-%{?with_wavpack:Requires:      wavpack-devel}
+%{?with_vmaf:Requires: vmaf-devel >= 2.0.0}
 %{?with_ilbc:Requires: webrtc-libilbc-devel}
 %{?with_avs:Requires:  xavs-devel}
 %{?with_avs2:Requires: xavs2-devel >= 1.3}
@@ -462,7 +513,7 @@ Requires:   xz-devel
 %{?with_zimg:Requires: zimg-devel >= 2.7.0}
 Requires:      zlib-devel
 %{?with_zvbi:Requires: zvbi-devel >= 0.2.28}
-Obsoletes:     libpostproc-devel
+Obsoletes:     libpostproc-devel < 2:1.0-1
 
 %description devel
 ffmpeg header files.
@@ -502,7 +553,7 @@ testowania różnych API FFmpeg.
 Summary:       FFmpeg documentation in HTML format
 Summary(pl.UTF-8):     Dokumentacja pakietu FFmpeg w formacie HTML
 Group:         Documentation
-%{?noarchpackage}
+BuildArch:     noarch
 
 %description doc
 FFmpeg documentation in HTML format.
@@ -514,6 +565,11 @@ Dokumentacja pakietu FFmpeg w formacie HTML.
 %setup -q
 %patch0 -p1
 %patch1 -p1
+%patch2 -p1
+%if %{with v4l2_request}
+%patch3 -p1
+%endif
+%patch4 -p1
 
 # package the grep result for mplayer, the result formatted as ./mplayer/configure
 cat <<EOF > ffmpeg-avconfig
@@ -588,7 +644,8 @@ EOF
        --libdir=%{_libdir} \
        --shlibdir=%{_libdir} \
        --mandir=%{_mandir} \
-       --extra-cflags="-D_GNU_SOURCE=1 %{rpmcppflags} %{rpmcflags}%{?with_decklink: -I/usr/include/decklink}" \
+       --extra-cflags="-D_GNU_SOURCE=1 %{rpmcppflags} %{rpmcflags}%{?with_decklink: -I/usr/include/decklink}%{?with_opencv: -I/usr/include/opencv4}" \
+       --extra-cxxflags="-D_GNU_SOURCE=1 %{rpmcppflags} %{rpmcxxflags}%{?with_decklink: -I/usr/include/decklink}%{?with_opencv: -I/usr/include/opencv4}" \
        --extra-ldflags="%{rpmcflags} %{rpmldflags}" \
        --cc="%{__cc}" \
        --disable-debug \
@@ -596,7 +653,6 @@ EOF
        --disable-stripping \
        %{!?with_doc:--disable-doc} \
        --enable-avfilter \
-       --enable-avresample \
        %{?with_chromaprint:--enable-chromaprint} \
        %{?with_cudasdk:--enable-cuda-nvcc} \
        %{?with_decklink:--enable-decklink} \
@@ -606,8 +662,10 @@ EOF
        --enable-version3 \
        %{?with_frei0r:--enable-frei0r} \
        %{?with_ladspa:--enable-ladspa} \
-       --enable-libaom \
+       %{?with_lcms:--enable-lcms2} \
+       %{?with_aom:--enable-libaom} \
        %{?with_aribb24:--enable-libaribb24} \
+       %{?with_libaribcaption:--enable-libaribcaption} \
        --enable-libass \
        --enable-libbluray \
        %{?with_bs2b:--enable-libbs2b} \
@@ -626,9 +684,11 @@ EOF
        %{?with_glslang:--enable-libglslang} \
        %{?with_gme:--enable-libgme} \
        %{?with_gsm:--enable-libgsm} \
+       --enable-libharfbuzz \
        %{?with_iec61883:--enable-libiec61883} \
        %{?with_ilbc:--enable-libilbc} \
        --enable-libjack \
+       %{?with_libjxl:--enable-libjxl} \
        %{?with_kvazaar:--enable-libkvazaar} \
        %{?with_libklvanc:--enable-libklvanc} \
        %{?with_lensfun:--enable-liblensfun} \
@@ -643,12 +703,15 @@ EOF
        --enable-libopenjpeg \
        %{?with_openmpt:--enable-libopenmpt} \
        --enable-libopus \
+       %{?with_libplacebo:--enable-libplacebo} \
        %{?with_pulseaudio:--enable-libpulse} \
        %{?with_rabbitmq:--enable-librabbitmq} \
        %{?with_rav1e:--enable-librav1e} \
+       %{?with_librist:--enable-librist} \
        %{?with_librsvg:--enable-librsvg} \
        --enable-librtmp \
        %{?with_rubberband:--enable-librubberband} \
+       %{?with_shaderc:--enable-libshaderc} \
        %{?with_shine:--enable-libshine} \
        %{?with_smb:--enable-libsmbclient} \
        %{?with_snappy:--enable-libsnappy} \
@@ -656,16 +719,17 @@ EOF
        --enable-libspeex \
        %{?with_srt:--enable-libsrt} \
        %{?with_ssh:--enable-libssh} \
+       %{?with_svtav1:--enable-libsvtav1} \
        %{?with_tesseract:--enable-libtesseract} \
        %{?with_theora:--enable-libtheora} \
        --enable-libtwolame \
+       %{?with_uavs3d:--enable-libuavs3d} \
        --enable-libv4l2 \
        %{?with_vidstab:--enable-libvidstab} \
        %{?with_vmaf:--enable-libvmaf} \
        %{?with_voamrwbenc:--enable-libvo-amrwbenc} \
        --enable-libvorbis \
        %{?with_vpx:--enable-libvpx} \
-       %{?with_wavpack:--enable-libwavpack} \
        %{?with_webp:--enable-libwebp} \
        %{?with_x264:--enable-libx264} \
        %{?with_x265:--enable-libx265} \
@@ -687,10 +751,15 @@ EOF
        --enable-pthreads \
        %{?with_rkmpp:--enable-rkmpp} \
        --enable-shared \
+       %{!?with_static_libs:--disable-static} \
        --enable-swscale \
        %{!?with_va:--disable-vaapi} \
        %{?with_vapoursynth:--enable-vapoursynth} \
-       %{?with_vulkan:--enable-vulkan} \
+       %{!?with_vulkan:--disable-vulkan} \
+%if %{with v4l2_request}
+       --enable-libudev \
+       --enable-v4l2-request \
+%endif
 %ifnarch %{ix86} %{x8664}
        --disable-mmx \
 %endif
@@ -740,7 +809,7 @@ install -p ffmpeg-avconfig $RPM_BUILD_ROOT%{_bindir}/ffmpeg-avconfig
 
 # packaged as %doc in -doc
 %if %{with doc}
-%{__rm} $RPM_BUILD_ROOT%{_docdir}/ffmpeg/*.html
+%{__rm} $RPM_BUILD_ROOT%{_docdir}/ffmpeg/*.{css,html}
 %endif
 
 install -d $RPM_BUILD_ROOT%{_examplesdir}
@@ -780,23 +849,21 @@ rm -rf $RPM_BUILD_ROOT
 %files libs
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/libavcodec.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libavcodec.so.58
+%attr(755,root,root) %ghost %{_libdir}/libavcodec.so.60
 %attr(755,root,root) %{_libdir}/libavdevice.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libavdevice.so.58
+%attr(755,root,root) %ghost %{_libdir}/libavdevice.so.60
 %attr(755,root,root) %{_libdir}/libavfilter.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libavfilter.so.7
+%attr(755,root,root) %ghost %{_libdir}/libavfilter.so.9
 %attr(755,root,root) %{_libdir}/libavformat.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libavformat.so.58
-%attr(755,root,root) %{_libdir}/libavresample.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libavresample.so.4
+%attr(755,root,root) %ghost %{_libdir}/libavformat.so.60
 %attr(755,root,root) %{_libdir}/libavutil.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libavutil.so.56
+%attr(755,root,root) %ghost %{_libdir}/libavutil.so.58
 %attr(755,root,root) %{_libdir}/libpostproc.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libpostproc.so.55
+%attr(755,root,root) %ghost %{_libdir}/libpostproc.so.57
 %attr(755,root,root) %{_libdir}/libswresample.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libswresample.so.3
+%attr(755,root,root) %ghost %{_libdir}/libswresample.so.4
 %attr(755,root,root) %{_libdir}/libswscale.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libswscale.so.5
+%attr(755,root,root) %ghost %{_libdir}/libswscale.so.7
 
 %files devel
 %defattr(644,root,root,755)
@@ -806,7 +873,6 @@ rm -rf $RPM_BUILD_ROOT
 %attr(755,root,root) %{_libdir}/libavdevice.so
 %attr(755,root,root) %{_libdir}/libavfilter.so
 %attr(755,root,root) %{_libdir}/libavformat.so
-%attr(755,root,root) %{_libdir}/libavresample.so
 %attr(755,root,root) %{_libdir}/libavutil.so
 %attr(755,root,root) %{_libdir}/libpostproc.so
 %attr(755,root,root) %{_libdir}/libswresample.so
@@ -816,7 +882,6 @@ rm -rf $RPM_BUILD_ROOT
 %{_includedir}/libavdevice
 %{_includedir}/libavfilter
 %{_includedir}/libavformat
-%{_includedir}/libavresample
 %{_includedir}/libavutil
 %{_includedir}/libpostproc
 %{_includedir}/libswresample
@@ -825,7 +890,6 @@ rm -rf $RPM_BUILD_ROOT
 %{_pkgconfigdir}/libavdevice.pc
 %{_pkgconfigdir}/libavfilter.pc
 %{_pkgconfigdir}/libavformat.pc
-%{_pkgconfigdir}/libavresample.pc
 %{_pkgconfigdir}/libavutil.pc
 %{_pkgconfigdir}/libpostproc.pc
 %{_pkgconfigdir}/libswresample.pc
@@ -841,17 +905,18 @@ rm -rf $RPM_BUILD_ROOT
 %endif
 %{_examplesdir}/%{name}-%{version}
 
+%if %{with static_libs}
 %files static
 %defattr(644,root,root,755)
 %{_libdir}/libavcodec.a
 %{_libdir}/libavdevice.a
 %{_libdir}/libavfilter.a
 %{_libdir}/libavformat.a
-%{_libdir}/libavresample.a
 %{_libdir}/libavutil.a
 %{_libdir}/libpostproc.a
 %{_libdir}/libswresample.a
 %{_libdir}/libswscale.a
+%endif
 
 %files ffplay
 %defattr(644,root,root,755)
@@ -864,5 +929,5 @@ rm -rf $RPM_BUILD_ROOT
 %if %{with doc}
 %files doc
 %defattr(644,root,root,755)
-%doc doc/*.html
+%doc doc/*.{css,html}
 %endif
This page took 0.169937 seconds and 4 git commands to generate.