]> git.pld-linux.org Git - packages/ffmpeg.git/blobdiff - ffmpeg.spec
updated BRs
[packages/ffmpeg.git] / ffmpeg.spec
index 69ddc98bc1196de10e09ac6b6ec00915ff2d9407..43d27c1e4e3548537656e39cbfc580546ce28f09 100644 (file)
@@ -1,3 +1,8 @@
+# TODO:
+# - libvmaf [BR: libvmaf.pc, libvmaf, libvmaf.h]
+# - libndi_newtek[nonfree, BR: Processing.NDI.Lib.h]
+# - libmysofa [BR: libmysofa, mysofa.h]
+# - rkmpp[GPLv3, BR: rockchip_mpp.pc, rockchip/rk_mpi_cmd.h, libdrm]
 #
 # How to deal with ffmpeg/opencv/chromaprint checken-egg problem:
 #      1. make-request -r --with bootstrap ffmpeg.spec
 #
 # Conditional build:
 %bcond_with    bootstrap       # disable features to able to build without installed ffmpeg
-%bcond_with    nonfree         # non free options of package (currently: decklib, fdk_aac, openssl)
+%bcond_with    nonfree         # unblock non free options of package (currently: cuda_sdk, decklib, fdk_aac, libndi_newtek, npp, openssl)
 %bcond_without bs2b            # BS2B audio filter support
 %bcond_without caca            # textual display using libcaca
 %bcond_without chromaprint     # audio fingerprinting with chromaprint
-%bcond_with    cuda            # NVIDIA CUDA code [BR: cuda.h]
+%bcond_without cuda            # NVIDIA CUDA code
+%bcond_with    cudasdk         # NVIDIA CUDA code using SDK [BR: cuda.h, non-free]
 %bcond_with    cuvid           # NVIDIA CUVID support
 %bcond_with    decklink        # Blackmagic DeskLink output support (requires nonfree)
 %bcond_with    fdk_aac         # AAC de/encoding via libfdk_aac (requires nonfree)
@@ -23,6 +29,9 @@
 %bcond_without ilbc            # iLBC de/encoding via WebRTC libilbc
 %bcond_without kvazaar         # Kvazaar HEVC encoder support
 %bcond_without ladspa          # LADSPA audio filtering
+%bcond_with    libdrm          # Linux Direct Rendering Manager code
+%bcond_with    librsvg         # SVG rasterization via librsvg
+%bcond_with    libxml2         # XML parsing using libxml2
 %bcond_with    mfx             # MFX hardware acceleration support
 %bcond_with    npp             # NVIDIA Performance Primitives-based code (requires nonfree) [BR: libnppc+libnppi, npp.h]
 %bcond_with    nvenc           # NVIDIA NVENC support
 Summary:       FFmpeg - a very fast video and audio converter
 Summary(pl.UTF-8):     FFmpeg - szybki konwerter audio/wideo
 Name:          ffmpeg
-Version:       3.3.2
-Release:       2
+Version:       4.1
+Release:       1
 # LGPL or GPL, chosen at configure time (GPL version is more featured)
 # (postprocessing, some filters, x264, x265, xavs, xvid, xcbgrab)
 # using v3 allows Apache-licensed libs (opencore-amr, libvo-*enc)
 License:       GPL v3+ with LGPL v3+ parts
 Group:         Applications/Multimedia
 Source0:       http://ffmpeg.org/releases/%{name}-%{version}.tar.xz
-# Source0-md5: d6c09c84e3d0d9ca8a51f481da660603
-Source1:       ffserver.init
-Source2:       ffserver.sysconfig
-Source3:       ffserver.conf
+# Source0-md5: b011c94e075c2d0cd7c914730f55f9a9
 Patch0:                %{name}-omx-libnames.patch
 URL:           http://www.ffmpeg.org/
 %{?with_decklink:BuildRequires:        Blackmagic_DeckLink_SDK >= 10.6.1}
@@ -89,7 +95,9 @@ URL:          http://www.ffmpeg.org/
 # 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
 BuildRequires: bzip2-devel
 BuildRequires: celt-devel >= 0.11.0
 %{?with_fdk_aac:BuildRequires: fdk-aac-devel}
@@ -117,12 +125,13 @@ BuildRequires:    libbluray-devel
 BuildRequires: libcdio-paranoia-devel >= 0.90-2
 %{?with_chromaprint:BuildRequires:     libchromaprint-devel}
 BuildRequires: libdc1394-devel >= 2
+%{?with_libdrm:BuildRequires:  libdrm-devel}
 BuildRequires: libgsm-devel
 BuildRequires: libiec61883-devel
 BuildRequires: libmodplug-devel
-BuildRequires: libnut-devel
 %{?with_openmpt:BuildRequires: libopenmpt-devel >= 0.2.6557}
 BuildRequires: libraw1394-devel >= 2
+%{?with_librsvg:BuildRequires: librsvg-devel >= 2}
 BuildRequires: librtmp-devel
 %{?with_ssh:BuildRequires:     libssh-devel}
 %{?with_smb:BuildRequires:     libsmbclient-devel}
@@ -136,14 +145,15 @@ 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_mfx:BuildRequires:     mfx_dispatch-devel}
 %ifarch %{ix86}
 %ifnarch i386 i486
@@ -163,7 +173,6 @@ BuildRequires:      pkgconfig
 %{?with_pulseaudio:BuildRequires:      pulseaudio-devel}
 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}
@@ -172,7 +181,7 @@ BuildRequires:      speex-devel >= 1:1.2-rc1
 %{?with_doc:BuildRequires:     tetex}
 %{?with_doc:BuildRequires:     texi2html}
 %{?with_doc:BuildRequires:     texinfo}
-BuildRequires: twolame-devel
+BuildRequires: twolame-devel >= 0.3.10
 %{?with_vidstab:BuildRequires: vid.stab-devel >= 0.98}
 BuildRequires: vo-amrwbenc-devel
 %{?with_wavpack:BuildRequires: wavpack-devel}
@@ -185,7 +194,7 @@ BuildRequires:      xvid-devel >= 1:1.1.0
 BuildRequires: xz-devel
 BuildRequires: yasm
 %{?with_zmq:BuildRequires:     zeromq-devel}
-%{?with_zimg:BuildRequires:    zimg-devel >= 2.3.0}
+%{?with_zimg:BuildRequires:    zimg-devel >= 2.7.0}
 BuildRequires: zlib-devel
 %{?with_zvbi:BuildRequires:    zvbi-devel}
 %{?with_autoreqdep:BuildConflicts:     libpostproc}
@@ -224,14 +233,16 @@ Summary:  ffmpeg libraries
 Summary(pl.UTF-8):     Biblioteki ffmpeg
 Group:         Libraries
 Requires:      SDL2 >= 2.0.1
+Requires:      aom >= 1.0.0
 %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_openmpt:Requires: libopenmpt >= 0.2.6557}
-%{?with_vpx:Requires:  libvpx >= 1.3.0}
+%{?with_vpx:Requires:  libvpx >= 1.4.0}
 %{?with_rubberband:Requires:   rubberband-libs >= 1.8.1}
-%{?with_zimg:Requires: zimg >= 2.3.0}
+Requires:      twolame-libs >= 0.3.10
+%{?with_zimg:Requires: zimg >= 2.7.0}
 
 %description libs
 This package contains the ffmpeg shared libraries:
@@ -268,7 +279,7 @@ Requires:   freetype-devel
 %{?with_fribidi:Requires:      fribidi-devel}
 %{?with_gme:Requires:  game-music-emu-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
 Requires:      libass-devel
 Requires:      libavc1394-devel
@@ -278,34 +289,35 @@ Requires: libbluray-devel
 Requires:      libcdio-paranoia-devel >= 0.90-2
 %{?with_chromaprint:Requires:  libchromaprint-devel}
 Requires:      libdc1394-devel >= 2
+%{?with_libdrm:Requires:       libdrm-devel}
 Requires:      libgsm-devel
 Requires:      libiec61883-devel
 Requires:      libmodplug-devel
-Requires:      libnut-devel
 %{?with_openmpt:Requires: libopenmpt-devel >= 0.2.6557}
 Requires:      libraw1394-devel >= 2
+%{?with_librsvg:Requires:      librsvg-devel >= 2}
 Requires:      librtmp-devel
 %{?with_smb:Requires:  libsmbclient-devel}
 Requires:      libtheora-devel >= 1.0-0.beta3
 %{?with_va:Requires:   libva-devel >= 1.0.3}
 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}
+%{?with_libxml2:Requires:      libxml2-devel >= 2}
 %{?with_mfx:Requires:  mfx_dispatch-devel}
 Requires:      opencore-amr-devel
 %{?with_opencv:Requires:       opencv-devel}
 %{?with_openh264:Requires:     openh264-devel >= 1.3}
 Requires:      openjpeg2-devel >= 2.1
 %{?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_tesseract:Requires:    tesseract-devel}
-Requires:      twolame-devel
+Requires:      twolame-devel >= 0.3.10
 %{?with_vidstab:Requires:      vid.stab-devel >= 0.98}
 Requires:      vo-amrwbenc-devel
 %{?with_wavpack:Requires:      wavpack-devel}
@@ -353,27 +365,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
@@ -476,6 +467,7 @@ EOF
        --enable-avresample \
        %{?with_chromaprint:--enable-chromaprint} \
        %{!?with_cuda:--disable-cuda} \
+       %{?with_cudasdk:--enable-cuda-sdk} \
        %{!?with_cuvid:--disable-cuvid} \
        %{?with_decklink:--enable-decklink} \
        --enable-gnutls \
@@ -483,6 +475,7 @@ EOF
        --enable-version3 \
        %{?with_frei0r:--enable-frei0r} \
        %{?with_ladspa:--enable-ladspa} \
+       --enable-libaom \
        --enable-libass \
        --enable-libbluray \
        %{?with_bs2b:--enable-libbs2b} \
@@ -490,6 +483,7 @@ EOF
        --enable-libcelt \
        --enable-libcdio \
        --enable-libdc1394 \
+       %{?with_libdrm:--enable-libdrm} \
        %{?with_flite:--enable-libflite} \
        --enable-libfontconfig \
        --enable-libfreetype \
@@ -502,7 +496,6 @@ EOF
        %{?with_mfx:--enable-libmfx} \
        --enable-libmodplug \
        --enable-libmp3lame \
-       --enable-libnut \
        --enable-libopencore-amrnb \
        --enable-libopencore-amrwb \
        %{?with_opencv:--enable-libopencv} \
@@ -511,9 +504,10 @@ EOF
        %{?with_openmpt:--enable-libopenmpt} \
        --enable-libopus \
        %{?with_pulseaudio:--enable-libpulse} \
+       %{?with_librsvg:--enable-librsvg} \
        --enable-librtmp \
+       %{?with_libxml2:--enable-libxml2} \
        %{?with_rubberband:--enable-librubberband} \
-       --enable-libschroedinger \
        %{?with_shine:--enable-libshine} \
        %{?with_smb:--enable-libsmbclient} \
        %{?with_snappy:--enable-libsnappy} \
@@ -533,6 +527,7 @@ EOF
        %{?with_x264:--enable-libx264} \
        %{?with_x265:--enable-libx265} \
        --enable-libxavs \
+       --enable-libxcb \
        --enable-libxvid \
        %{?with_zimg:--enable-libzimg} \
        %{?with_zmq:--enable-libzmq} \
@@ -547,7 +542,6 @@ EOF
        --enable-shared \
        --enable-swscale \
        %{!?with_va:--disable-vaapi} \
-       --enable-libxcb \
 %ifnarch %{ix86} %{x8664}
        --disable-mmx \
 %endif
@@ -575,8 +569,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 \
@@ -588,13 +581,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
@@ -616,26 +603,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
@@ -664,23 +631,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)
@@ -745,19 +712,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)
This page took 0.234707 seconds and 4 git commands to generate.