X-Git-Url: http://git.pld-linux.org/?p=packages%2Fffmpeg.git;a=blobdiff_plain;f=ffmpeg.spec;h=6791feb432aea2a3417c7d0e8b3f27af0b9f2d95;hp=c8f0ac17eab78df66a8f90eef69ae0e1ad87acfd;hb=c2533e03612d87ea4e6e90136835e0b1ee262d47;hpb=2c60a33dba3eb776c88e7c59d3b8e36c3c1a9ef5 diff --git a/ffmpeg.spec b/ffmpeg.spec index c8f0ac1..6791feb 100644 --- a/ffmpeg.spec +++ b/ffmpeg.spec @@ -1,3 +1,7 @@ +# TODO: +# - libklvanc [-lklvanc libklvanc/vanc.h] +# - libtensorflow [-ltensorflow tensorflow/c/c_api.h] +# - AMF >= 1.4.4.1 (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 @@ -8,13 +12,18 @@ # # Conditional build: %bcond_with bootstrap # disable features to able to build without installed ffmpeg -%bcond_with nonfree # non free options of package (currently: faac, fdk_aac, nvenc) -%bcond_with fdk_aac # AAC de/encoding via libfdk_aac (requires nonfree) -%bcond_with faac # faac (requires nonfree) +%bcond_with nonfree # unblock non free options of package (currently: cuda_nvcc, decklib, fdk_aac, npp, openssl, libressl/libtls) +%bcond_without aribb24 # ARIB text and caption decoding via libaribb24 +%bcond_without avs2 # AVS2 de/encoding via libdavs2/libxavs2 %bcond_without bs2b # BS2B audio filter support %bcond_without caca # textual display using libcaca +%bcond_without codec2 # codec2 support using libcodec2 %bcond_without chromaprint # audio fingerprinting with chromaprint -%bcond_without decklink # Blackmagic DeskLink output support +%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 decklink # Blackmagic DeskLink output 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 @@ -22,24 +31,37 @@ %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_with libdrm # Linux Direct Rendering Manager code +%bcond_without libmysofa # sofalizer filter +%bcond_with librsvg # SVG rasterization via librsvg +%bcond_with libxml2 # XML parsing using libxml2 +%bcond_without lv2 # LV2 audio filtering %bcond_with mfx # MFX hardware acceleration support -%bcond_with nvenc # NVIDIA NVENC support (requires nonfree) +%bcond_with npp # NVIDIA Performance Primitives-based code (requires nonfree) [BR: libnppc+libnppi, npp.h] +%bcond_without omx # OpenMAX IL support %bcond_without openal # OpenAL 1.1 capture support %bcond_without opencl # OpenCL 1.2 code %bcond_without opencv # OpenCV video filtering %bcond_without opengl # OpenGL rendering support %bcond_with openh264 # OpenH264 H.264 encoder +%bcond_without openmpt # OpenMPT module decoder +%bcond_with pocketsphinx # asr filter using PocketSphinx %bcond_without pulseaudio # PulseAudio input support +%bcond_with rkmpp # Rockchip Media Process Platform code [implies libdrm] %bcond_without rubberband # rubberband filter %bcond_without shine # shine fixed-point MP3 encoder %bcond_without snappy # Snappy compression support (needed for hap encoding) +%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 tesseract # OCR filter based on Tesseract +%bcond_without vmaf # VMAF filter support %bcond_without x264 # H.264 x264 encoder %bcond_without x265 # H.265/HEVC x265 encoder %bcond_without va # VAAPI (Video Acceleration API) +%bcond_without vapoursynth # VapourSynth demuxer %bcond_without vidstab # vid.stab video stabilization support %bcond_without vpx # VP8, a high-quality video codec %bcond_without wavpack # wavpack encoding support @@ -54,8 +76,14 @@ %undefine with_opencv %undefine with_chromaprint %endif +%if %{with rkmpp} +%define with_libdrm 1 +%endif -%ifnarch %{ix86} %{x8664} arm +%ifnarch %{ix86} %{x8664} +%undefine with_ffnvcodec +%endif +%ifnarch %{ix86} %{x8664} %{arm} %undefine with_x265 %endif %ifarch i386 i486 @@ -64,29 +92,34 @@ Summary: FFmpeg - a very fast video and audio converter Summary(pl.UTF-8): FFmpeg - szybki konwerter audio/wideo Name: ffmpeg -Version: 3.1 -Release: 3.1 +Version: 4.2.1 +Release: 2.1 # LGPL or GPL, chosen at configure time (GPL version is more featured) -# (postprocessing, some filters, x264, x265, xavs, xvid, x11grab) -# using v3 allows Apache-licensed libs (opencore-amr, libvo-*enc) +# 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 +# GPLv3: smbclient License: GPL v3+ with LGPL v3+ parts Group: Applications/Multimedia Source0: http://ffmpeg.org/releases/%{name}-%{version}.tar.xz -# Source0-md5: 24ef0c0d541c857c8bc39215619b126f -Source1: ffserver.init -Source2: ffserver.sysconfig -Source3: ffserver.conf -Patch0: %{name}-openjpeg-build.patch +# Source0-md5: 67da904cf9fddeeb10a1308fc0dc39de +Patch0: %{name}-omx-libnames.patch URL: http://www.ffmpeg.org/ -%{?with_decklink:BuildRequires: Blackmagic_DeckLink_SDK} +%{?with_decklink:BuildRequires: Blackmagic_DeckLink_SDK >= 10.9.5} %{?with_openal:BuildRequires: OpenAL-devel >= 1.1} %{?with_opencl:BuildRequires: OpenCL-devel >= 1.2} %{?with_opengl:BuildRequires: OpenGL-GLX-devel} -BuildRequires: SDL-devel >= 1.2.1 +# 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 BuildRequires: alsa-lib-devel +BuildRequires: aom-devel >= 1.0.0 +%{?with_aribb24:BuildRequires: aribb24-devel} BuildRequires: bzip2-devel BuildRequires: celt-devel >= 0.11.0 -%{?with_faac:BuildRequires: faac-devel} +%{?with_codec2:BuildRequires: codec2-devel} +%{?with_dav1d:BuildRequires: dav1d-devel >= 0.2.1} +%{?with_avs2:BuildRequires: davs2-devel >= 1.6} %{?with_fdk_aac:BuildRequires: fdk-aac-devel} %{?with_flite:BuildRequires: flite-devel >= 1.4} BuildRequires: fontconfig-devel @@ -104,6 +137,7 @@ BuildRequires: jack-audio-connection-kit-devel %{?with_kvazaar:BuildRequires: kvazaar-devel >= 0.8.1} %{?with_ladspa:BuildRequires: ladspa-devel} BuildRequires: lame-libs-devel >= 3.98.3 +%{?with_lensfun:BuildRequires: lensfun-devel} BuildRequires: libass-devel BuildRequires: libavc1394-devel %{?with_bs2b:BuildRequires: libbs2b-devel} @@ -111,83 +145,96 @@ BuildRequires: libbluray-devel %{?with_caca:BuildRequires: libcaca-devel} BuildRequires: libcdio-paranoia-devel >= 0.90-2 %{?with_chromaprint:BuildRequires: libchromaprint-devel} +BuildRequires: libcrystalhd-devel BuildRequires: libdc1394-devel >= 2 +%{?with_libdrm:BuildRequires: libdrm-devel} BuildRequires: libgsm-devel BuildRequires: libiec61883-devel BuildRequires: libmodplug-devel -BuildRequires: libnut-devel +%{?with_libmysofa:BuildRequires: libmysofa-devel >= 0.7} +%{?with_openmpt:BuildRequires: libopenmpt-devel >= 0.4.5} BuildRequires: libraw1394-devel >= 2 +%{?with_librsvg:BuildRequires: librsvg-devel >= 2} BuildRequires: librtmp-devel %{?with_ssh:BuildRequires: libssh-devel} %{?with_smb:BuildRequires: libsmbclient-devel} BuildRequires: libtheora-devel >= 1.0-0.beta3 BuildRequires: libtool >= 2:1.4d-3 BuildRequires: libv4l-devel -%{?with_va:BuildRequires: libva-devel >= 1.0.3} +%if %{with va} +BuildRequires: libva-devel >= 1.0.3 +BuildRequires: libva-drm-devel >= 1.0.3 +BuildRequires: libva-x11-devel >= 1.0.3 +%endif BuildRequires: libvdpau-devel >= 0.2 BuildRequires: libvorbis-devel -%{?with_vpx:BuildRequires: libvpx-devel >= 1.3.0} +%{?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 >= 57 -%{?with_x265:BuildRequires: libx265-devel >= 1.3-0.20150610.1} +# X265_BUILD >= 68 +%{?with_x265:BuildRequires: libx265-devel >= 1.8} # libxcb xcb-shm xcb-xfixes xcb-shape BuildRequires: libxcb-devel >= 1.4 +%{?with_libxml2:BuildRequires: libxml2-devel >= 2} +%{?with_lv2:BuildRequires: lilv-devel} +%{?with_lv2:BuildRequires: lv2-devel} %{?with_mfx:BuildRequires: mfx_dispatch-devel} %ifarch %{ix86} %ifnarch i386 i486 BuildRequires: nasm %endif %endif -# which package? -#%{?with_nvenc:BuildRequires: NVIDIA-NVENC-API} +%{?with_ffnvcodec:BuildRequires: nv-codec-headers >= 9.0.18.0} +# amrnb,amrwb BuildRequires: opencore-amr-devel -%{?with_opencv:BuildRequires: opencv-devel} +%{?with_opencv:BuildRequires: opencv-devel >= 2} %{?with_openh264:BuildRequires: openh264-devel >= 1.3} -BuildRequires: openjpeg-devel >= 1.5 +BuildRequires: openjpeg2-devel >= 2.1 BuildRequires: opus-devel BuildRequires: perl-Encode BuildRequires: perl-tools-pod +%{?with_pocketsphinx:BuildRequires: pocketsphinx-devel > 0.8} BuildRequires: pkgconfig %{?with_pulseaudio:BuildRequires: pulseaudio-devel} +%{?with_rkmpp:BuildRequires: rockchip-mpp-devel >= 1.3.7} BuildRequires: rpmbuild(macros) >= 1.470 %{?with_rubberband:BuildRequires: rubberband-devel >= 1.8.1} -BuildRequires: schroedinger-devel %{?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_srt:BuildRequires: srt-devel >= 1.3} %{?with_tesseract:BuildRequires: tesseract-devel} %{?with_doc:BuildRequires: tetex} %{?with_doc:BuildRequires: texi2html} %{?with_doc:BuildRequires: texinfo} -BuildRequires: twolame-devel +BuildRequires: twolame-devel >= 0.3.10 +%{?with_vapoursynth:BuildRequires: vapoursynth-devel >= 42} %{?with_vidstab:BuildRequires: vid.stab-devel >= 0.98} +%{?with_vmaf:BuildRequires: vmaf-devel >= 1.3.9} BuildRequires: vo-amrwbenc-devel %{?with_wavpack:BuildRequires: wavpack-devel} %{?with_ilbc:BuildRequires: webrtc-libilbc-devel} BuildRequires: xavs-devel +%{?with_avs2:BuildRequires: xavs2-devel >= 1.3} BuildRequires: xorg-lib-libX11-devel BuildRequires: xorg-lib-libXext-devel -BuildRequires: xorg-lib-libXfixes-devel +BuildRequires: xorg-lib-libXv-devel BuildRequires: xvid-devel >= 1:1.1.0 +BuildRequires: xz-devel BuildRequires: yasm %{?with_zmq:BuildRequires: zeromq-devel} -%{?with_zimg:BuildRequires: zimg-devel} +%{?with_zimg:BuildRequires: zimg-devel >= 2.7.0} BuildRequires: zlib-devel -%{?with_zvbi:BuildRequires: zvbi-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} -%{?with_ilbc:Requires: webrtc-libilbc} -Requires: xvid >= 1:1.1.0 Obsoletes: libpostproc BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) -%define _noautoreqdep libGL.so.1 libGLU.so.1 - %define specflags -fno-strict-aliasing # -fomit-frame-pointer is always needed on x86 due to lack of registers (-fPIC takes one) @@ -214,12 +261,47 @@ telewizyjnej. Summary: ffmpeg libraries Summary(pl.UTF-8): Biblioteki ffmpeg Group: Libraries +Requires: SDL2 >= 2.0.1 +Requires: aom >= 1.0.0 +Requires: celt >= 0.11.0 +%{?with_dav1d:Requires: dav1d >= 0.2.1} +%{?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_vpx:Requires: libvpx >= 1.3.0} +%{?with_kvazaar:Requires: kvazaar-libs >= 0.8.1} +%{?with_libmysofa:Requires: libmysofa >= 0.7} +%{?with_openmpt:Requires: libopenmpt >= 0.4.5} +Requires: libtheora >= 1.0-0.beta3 +%if %{with va} +Requires: libva >= 1.0.3 +Requires: libva-drm >= 1.0.3 +Requires: libva-x11 >= 1.0.3 +%endif +Requires: libvdpau >= 0.2 +%{?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.8} +Requires: libxcb >= 1.4 +Requires: lame-libs >= 3.98.3 +%{?with_openh264:Requires: openh264 >= 1.3} +Requires: openjpeg2 >= 2.1 +%{?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} +Requires: twolame-libs >= 0.3.10 +%{?with_vapoursynth:Requires: vapoursynth >= 42} +%{?with_vidstab:Requires: vid.stab >= 0.98} +%{?with_vmaf:Requires: vmaf-libs >= 1.3.9} +%{?with_avs2:Requires: xavs2 >= 1.3} +Requires: xvid >= 1:1.1.0 +%{?with_zimg:Requires: zimg >= 2.7.0} +%{?with_zvbi:Requires: zvbi >= 0.2.28} %description libs This package contains the ffmpeg shared libraries: @@ -242,23 +324,30 @@ Summary: ffmpeg header files Summary(pl.UTF-8): Pliki nagłówkowe ffmpeg Group: Development/Libraries Requires: %{name}-libs = %{version}-%{release} -# Libs.private from *.pc (unreasonably they are all the same) +# Libs.private from *.pc +%{?with_openal:Requires: OpenAL-devel >= 1.1} %{?with_opencl:Requires: OpenCL-devel >= 1.2} %{?with_opengl:Requires: OpenGL-devel} -Requires: SDL-devel >= 1.2.1 +Requires: SDL2-devel >= 2.0.1 Requires: alsa-lib-devel +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_faac:Requires: faac-devel} +%{?with_codec2:Requires: codec2-devel} +%{?with_dav1d:Requires: dav1d-devel >= 0.2.1} %{?with_fdk_aac:Requires: fdk-aac-devel} %{?with_flite:Requires: flite-devel >= 1.4} Requires: fontconfig-devel Requires: freetype-devel %{?with_fribidi:Requires: fribidi-devel} %{?with_gme:Requires: game-music-emu-devel} +Requires: gnutls-devel Requires: jack-audio-connection-kit-devel -%{?with_kvazaar:Requires: kvazaar-devel >= 0.7} +%{?with_kvazaar:Requires: kvazaar-devel >= 0.8.1} Requires: lame-libs-devel >= 3.98.3 +%{?with_lensfun:Requires: lensfun-devel} Requires: libass-devel Requires: libavc1394-devel Requires: libbluray-devel @@ -266,45 +355,68 @@ Requires: libbluray-devel %{?with_caca:Requires: libcaca-devel} Requires: libcdio-paranoia-devel >= 0.90-2 %{?with_chromaprint:Requires: libchromaprint-devel} +Requires: libcrystalhd-devel Requires: libdc1394-devel >= 2 +%{?with_libdrm:Requires: libdrm-devel} Requires: libgsm-devel Requires: libiec61883-devel Requires: libmodplug-devel -Requires: libnut-devel +%{?with_libmysofa:Requires: libmysofa-devel >= 0.7} +%{?with_openmpt:Requires: libopenmpt-devel >= 0.4.5} Requires: libraw1394-devel >= 2 +%{?with_librsvg:Requires: librsvg-devel >= 2} Requires: librtmp-devel %{?with_smb:Requires: libsmbclient-devel} +%{?with_ssh:Requires: libssh-devel} +Requires: libstdc++-devel Requires: libtheora-devel >= 1.0-0.beta3 +Requires: libv4l-devel %{?with_va:Requires: libva-devel >= 1.0.3} +%{?with_va:Requires: libva-drm-devel >= 1.0.3} +%{?with_va:Requires: libva-x11-devel >= 1.0.3} +Requires: libvdpau-devel >= 0.2 Requires: libvorbis-devel -%{?with_vpx:Requires: libvpx-devel >= 1.3.0} +%{?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.3-0.20150610.1} +%{?with_x265:Requires: libx265-devel >= 1.8} +# 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} Requires: opencore-amr-devel -%{?with_opencv:Requires: opencv-devel} +%{?with_opencv:Requires: opencv-devel >= 2} %{?with_openh264:Requires: openh264-devel >= 1.3} -Requires: openjpeg-devel >= 1.5 +Requires: openjpeg2-devel >= 2.1 +Requires: opus-devel +%{?with_pulseaudio:Requires: pulseaudio-devel} +%{?with_rkmpp:Requires: rockchip-mpp-devel >= 1.3.7} %{?with_rubberband:Requires: rubberband-devel >= 1.8.1} -Requires: schroedinger-devel %{?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_srt:Requires: srt-devel >= 1.3} %{?with_tesseract:Requires: tesseract-devel} -Requires: twolame-devel +Requires: twolame-devel >= 0.3.10 +%{?with_vapoursynth:Requires: vapoursynth-devel >= 42} %{?with_vidstab:Requires: vid.stab-devel >= 0.98} Requires: vo-amrwbenc-devel +%{?with_vmaf:Requires: vmaf-devel >= 1.3.9} %{?with_wavpack:Requires: wavpack-devel} %{?with_ilbc:Requires: webrtc-libilbc-devel} Requires: xavs-devel +%{?with_avs2:Requires: xavs2-devel >= 1.3} +Requires: xorg-lib-libX11-devel Requires: xorg-lib-libXext-devel -Requires: xorg-lib-libXfixes-devel +Requires: xorg-lib-libXv-devel Requires: xvid-devel >= 1:1.1.0 +Requires: xz-devel %{?with_zmq:Requires: zeromq-devel} -%{?with_zimg:Requires: zimg-devel} +%{?with_zimg:Requires: zimg-devel >= 2.7.0} Requires: zlib-devel +%{?with_zvbi:Requires: zvbi-devel >= 0.2.28} Obsoletes: libpostproc-devel %description devel @@ -341,27 +453,6 @@ FFplay to bardzo prosty i przenośny odtwarzacz mediów używający bibliotek FFmpeg oraz biblioteki SDL. Jest używany głównie do testowania różnych API FFmpeg. -%package ffserver -Summary: FFserver video server -Summary(pl.UTF-8): FFserver - serwer strumieni obrazu -Group: Daemons -Requires(post,preun): /sbin/chkconfig -Requires: %{name}-libs = %{version}-%{release} -Requires: rc-scripts >= 0.4.0.10 - -%description ffserver -FFserver is a streaming server for both audio and video. It supports -several live feeds, streaming from files and time shifting on live -feeds (you can seek to positions in the past on each live feed, -provided you specify a big enough feed storage in ffserver.conf). - -%description ffserver -l pl.UTF-8 -FFserver to serwer strumieni dla dźwięku i obrazu. Obsługuje kilka -źródeł na żywo, przekazywanie strumieni z plików i przesuwanie w -czasie dla źródeł na żywo (można przeskakiwać na położenia w -przeszłości dla każdego źródła na żywo, pod warunkiem odpowiednio -dużej przestrzeni na dane skonfigurowanej w ffserver.conf). - %package doc Summary: FFmpeg documentation in HTML format Summary(pl.UTF-8): Dokumentacja pakietu FFmpeg w formacie HTML @@ -463,42 +554,55 @@ EOF --enable-avfilter \ --enable-avresample \ %{?with_chromaprint:--enable-chromaprint} \ + %{?with_cudasdk:--enable-cuda-nvcc} \ %{?with_decklink:--enable-decklink} \ + %{!?with_ffnvcodec:--disable-ffnvcodec} \ --enable-gnutls \ --enable-gpl \ --enable-version3 \ - --enable-fontconfig \ %{?with_frei0r:--enable-frei0r} \ %{?with_ladspa:--enable-ladspa} \ + --enable-libaom \ + %{?with_aribb24:--enable-libaribb24} \ --enable-libass \ --enable-libbluray \ %{?with_bs2b:--enable-libbs2b} \ %{?with_caca:--enable-libcaca} \ --enable-libcelt \ --enable-libcdio \ + %{?with_codec2:--enable-libcodec2} \ + %{?with_dav1d:--enable-libdav1d} \ + %{?with_avs2:--enable-libdavs2} \ --enable-libdc1394 \ + %{?with_libdrm:--enable-libdrm} \ %{?with_flite:--enable-libflite} \ + --enable-libfontconfig \ --enable-libfreetype \ %{?with_fribidi:--enable-libfribidi} \ %{?with_gme:--enable-libgme} \ --enable-libgsm \ --enable-libiec61883 \ %{?with_ilbc:--enable-libilbc} \ + --enable-libjack \ %{?with_kvazaar:--enable-libkvazaar} \ + %{?with_lensfun:--enable-liblensfun} \ %{?with_mfx:--enable-libmfx} \ --enable-libmodplug \ --enable-libmp3lame \ - --enable-libnut \ + %{?with_libmysofa:--enable-libmysofa} \ --enable-libopencore-amrnb \ --enable-libopencore-amrwb \ %{?with_opencv:--enable-libopencv} \ %{?with_openh264:--enable-libopenh264} \ --enable-libopenjpeg \ + %{?with_openmpt:--enable-libopenmpt} \ --enable-libopus \ %{?with_pulseaudio:--enable-libpulse} \ + %{?with_librsvg:--enable-librsvg} \ --enable-librtmp \ + %{?with_srt:--enable-libsrt} \ + %{?with_libxml2:--enable-libxml2} \ %{?with_rubberband:--enable-librubberband} \ - --enable-libschroedinger \ %{?with_shine:--enable-libshine} \ %{?with_smb:--enable-libsmbclient} \ %{?with_snappy:--enable-libsnappy} \ @@ -510,6 +614,7 @@ EOF --enable-libtwolame \ --enable-libv4l2 \ %{?with_vidstab:--enable-libvidstab} \ + %{?with_vmaf:--enable-libvmaf} \ --enable-libvo-amrwbenc \ --enable-libvorbis \ %{?with_vpx:--enable-libvpx} \ @@ -518,19 +623,25 @@ EOF %{?with_x264:--enable-libx264} \ %{?with_x265:--enable-libx265} \ --enable-libxavs \ + %{?with_avs2:--enable-libxavs2} \ + --enable-libxcb \ --enable-libxvid \ %{?with_zimg:--enable-libzimg} \ %{?with_zmq:--enable-libzmq} \ %{?with_zvbi:--enable-libzvbi} \ + %{?with_lv2:--enable-lv2} \ + %{?with_omx:--enable-omx} \ %{?with_openal:--enable-openal} \ %{?with_opencl:--enable-opencl} \ %{?with_opengl:--enable-opengl} \ + %{?with_pocketsphinx:--enable-pocketsphinx} \ --enable-postproc \ --enable-pthreads \ + %{?with_rkmpp:--enable-rkmpp} \ --enable-shared \ --enable-swscale \ %{!?with_va:--disable-vaapi} \ - --enable-x11grab \ + %{?with_vapoursynth:--enable-vapoursynth} \ %ifnarch %{ix86} %{x8664} --disable-mmx \ %endif @@ -542,9 +653,8 @@ EOF %endif %if %{with nonfree} --enable-nonfree \ - %{?with_faac:--enable-libfaac} \ %{?with_fdk_aac:--enable-libfdk-aac} \ - %{?with_nvenc:--enable-nvenc} \ + %{?with_npp:--enable-libnpp} \ %endif --enable-runtime-cpudetect @@ -559,8 +669,7 @@ EOF %install rm -rf $RPM_BUILD_ROOT install -d $RPM_BUILD_ROOT{%{_sysconfdir},%{_sbindir},/etc/{sysconfig,rc.d/init.d}} \ - $RPM_BUILD_ROOT%{_includedir}/ffmpeg \ - $RPM_BUILD_ROOT/var/{cache,log}/ffserver + $RPM_BUILD_ROOT%{_includedir}/ffmpeg %{__make} install install-headers \ DESTDIR=$RPM_BUILD_ROOT \ @@ -572,13 +681,7 @@ for a in libavutil/*/{asm,bswap}.h; do install -Dp $a $RPM_BUILD_ROOT%{_includedir}/$a done cp -a libavformat/riff.h $RPM_BUILD_ROOT%{_includedir}/libavformat -# for lim-omx ffmpeg components -cp -a libavcodec/audioconvert.h $RPM_BUILD_ROOT%{_includedir}/libavcodec -install -p %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/ffserver -cp -a %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/ffserver -cp -a %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/ffserver.conf -mv -f $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/ffserver install -p tools/qt-faststart $RPM_BUILD_ROOT%{_bindir} # install as ffmpeg-avconfig to avoid with possible programs looking for @@ -600,26 +703,6 @@ rm -rf $RPM_BUILD_ROOT %post libs -p /sbin/ldconfig %postun libs -p /sbin/ldconfig -%pre ffserver -%groupadd -g 167 ffserver -%useradd -g ffserver -u 167 ffserver - -%post ffserver -/sbin/chkconfig --add ffserver -%service ffserver restart - -%preun ffserver -if [ "$1" = 0 ]; then - %service ffserver stop - /sbin/chkconfig --del ffserver -fi - -%postun ffserver -if [ "$1" = 0 ]; then - %userremove ffserver - %groupremove ffserver -fi - %files %defattr(644,root,root,755) %doc CREDITS LICENSE.md MAINTAINERS README.md RELEASE_NOTES doc/APIchanges @@ -648,23 +731,23 @@ fi %files libs %defattr(644,root,root,755) %attr(755,root,root) %{_libdir}/libavcodec.so.*.*.* -%attr(755,root,root) %ghost %{_libdir}/libavcodec.so.57 +%attr(755,root,root) %ghost %{_libdir}/libavcodec.so.58 %attr(755,root,root) %{_libdir}/libavdevice.so.*.*.* -%attr(755,root,root) %ghost %{_libdir}/libavdevice.so.57 +%attr(755,root,root) %ghost %{_libdir}/libavdevice.so.58 %attr(755,root,root) %{_libdir}/libavfilter.so.*.*.* -%attr(755,root,root) %ghost %{_libdir}/libavfilter.so.6 +%attr(755,root,root) %ghost %{_libdir}/libavfilter.so.7 %attr(755,root,root) %{_libdir}/libavformat.so.*.*.* -%attr(755,root,root) %ghost %{_libdir}/libavformat.so.57 +%attr(755,root,root) %ghost %{_libdir}/libavformat.so.58 %attr(755,root,root) %{_libdir}/libavresample.so.*.*.* -%attr(755,root,root) %ghost %{_libdir}/libavresample.so.3 +%attr(755,root,root) %ghost %{_libdir}/libavresample.so.4 %attr(755,root,root) %{_libdir}/libavutil.so.*.*.* -%attr(755,root,root) %ghost %{_libdir}/libavutil.so.55 +%attr(755,root,root) %ghost %{_libdir}/libavutil.so.56 %attr(755,root,root) %{_libdir}/libpostproc.so.*.*.* -%attr(755,root,root) %ghost %{_libdir}/libpostproc.so.54 +%attr(755,root,root) %ghost %{_libdir}/libpostproc.so.55 %attr(755,root,root) %{_libdir}/libswresample.so.*.*.* -%attr(755,root,root) %ghost %{_libdir}/libswresample.so.2 +%attr(755,root,root) %ghost %{_libdir}/libswresample.so.3 %attr(755,root,root) %{_libdir}/libswscale.so.*.*.* -%attr(755,root,root) %ghost %{_libdir}/libswscale.so.4 +%attr(755,root,root) %ghost %{_libdir}/libswscale.so.5 %files devel %defattr(644,root,root,755) @@ -729,19 +812,6 @@ fi %{_mandir}/man1/ffplay-all.1* %endif -%files ffserver -%defattr(644,root,root,755) -%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/ffserver.conf -%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/ffserver -%attr(755,root,root) %{_sbindir}/ffserver -%attr(754,root,root) /etc/rc.d/init.d/ffserver -%if %{with doc} -%{_mandir}/man1/ffserver.1* -%{_mandir}/man1/ffserver-all.1* -%endif -%dir %attr(770,root,ffserver) /var/cache/ffserver -%dir %attr(770,root,ffserver) /var/log/ffserver - %if %{with doc} %files doc %defattr(644,root,root,755)