]> git.pld-linux.org Git - packages/ffmpeg.git/blobdiff - ffmpeg.spec
- deal with new options (libbs2b,libfribidi,libsmbclient)
[packages/ffmpeg.git] / ffmpeg.spec
index 45d55b1f7d2e75570d17c2673549d8ef5024de32..2b80495f107dd7e5c80a22f6af5b36d35ba617d1 100644 (file)
@@ -1,4 +1,3 @@
-# TODO: libzmq ?
 #
 # How to deal with ffmpeg/opencv checken-egg problem:
 #      1. make-request -r --without opencv ffmpeg.spec
 %bcond_with    nonfree         # non free options of package (currently: faac)
 %bcond_with    aacplus         # AAC+ encoding via libaacplus (requires nonfree)
 %bcond_with    fdk_aac         # AAC de/encoding via libfdk_aac (requires nonfree)
+%bcond_without bs2b            # BS2B audio filter support
 %bcond_without caca            # textual display using libcaca
+%bcond_without decklink        # Blackmagic DeskLink output support
 %bcond_without flite           # flite voice synthesis support
 %bcond_without frei0r          # frei0r video filtering
+%bcond_without fribidi         # fribidi support
 %bcond_without gme             # Game Music Emu support
 %bcond_without ilbc            # iLBC de/encoding via WebRTC libilbc
 %bcond_without ladspa          # LADSPA audio filtering
 %bcond_without ssh             # SFTP protocol support via libssh
 %bcond_without openal          # OpenAL 1.1 capture support
-%bcond_with    opencl          # OpenCL code [OpenCL 1.2, but Mesa 9.1.x headers don't suffice]
+%bcond_without opencl          # OpenCL 1.2 code
+%bcond_without opengl          # OpenGL rendering support
 %bcond_without opencv          # OpenCV video filtering
 %bcond_without pulseaudio      # PulseAudio input support
 %bcond_without quvi            # quvi input support
 %bcond_without shine           # shine fixed-point MP3 encoder
+%bcond_with    smb             # SMB support via libsmbclient
 %bcond_without soxr            # SoX Resampler support
-%bcond_without x264            # x264 encoder
+%bcond_without x264            # H.264 x264 encoder
+%bcond_without x265            # H.265/HEVC x265 encoder
 %bcond_without utvideo         # Ut Video decoder
 %bcond_without va              # VAAPI (Video Acceleration API)
 %bcond_without vidstab         # vid.stab video stabilization support
 %bcond_without vpx             # VP8, a high-quality video codec
 %bcond_without wavpack         # wavpack encoding support
+%bcond_without webp            # WebP encoding support
 %bcond_without zmq             # 0MQ message passing
 %bcond_without zvbi            # teletext via libzvbi
 %bcond_without doc             # don't build docs
 
+%ifnarch %{ix86} %{x8664} arm
+%undefine      with_x265
+%endif
+%ifarch i386 i486
+%undefine      with_x265
+%endif
 Summary:       FFmpeg - a very fast video and audio converter
 Summary(pl.UTF-8):     FFmpeg - szybki konwerter audio/wideo
 Name:          ffmpeg
-Version:       2.1.1
-Release:       2
+Version:       2.3.3
+Release:       1
 # LGPL or GPL, chosen at configure time (GPL version is more featured)
-# (postprocessing, some filters, x264, xavs, xvid, x11grab)
+# (postprocessing, some filters, x264, x265, xavs, xvid, x11grab)
 # 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.bz2
-# Source0-md5: 2719ab2b3311ac3775b9cdeb66c54849
+# Source0-md5: 72361d3b8717b6db3ad2b9da8df7af5e
 Source1:       ffserver.init
 Source2:       ffserver.sysconfig
 Source3:       ffserver.conf
 Patch0:                %{name}-opencv24.patch
 URL:           http://www.ffmpeg.org/
+%{?with_decklink:BuildRequires:        Blackmagic_DeckLink_SDK}
 %{?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
 BuildRequires: alsa-lib-devel
 BuildRequires: bzip2-devel
@@ -63,6 +77,7 @@ BuildRequires:        celt-devel >= 0.11.0
 BuildRequires: fontconfig-devel
 BuildRequires: freetype-devel
 %{?with_frei0r:BuildRequires:  frei0r-devel}
+%{?with_fribidi:BuildRequires: fribidi-devel}
 %{?with_gme:BuildRequires:     game-music-emu-devel}
 %ifarch ppc
 # require version with altivec support fixed
@@ -75,6 +90,7 @@ BuildRequires:        lame-libs-devel >= 3.98.3
 %{?with_aacplus:BuildRequires: libaacplus-devel >= 2.0.0}
 BuildRequires: libass-devel
 BuildRequires: libavc1394-devel
+%{?with_bs2b:BuildRequires:    libbs2b-devel}
 BuildRequires: libbluray-devel
 %{?with_caca:BuildRequires:    libcaca-devel}
 BuildRequires: libcdio-paranoia-devel >= 0.90-2
@@ -87,15 +103,19 @@ BuildRequires:     libnut-devel
 BuildRequires: libraw1394-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}
 BuildRequires: libvdpau-devel >= 0.2
 BuildRequires: libvorbis-devel
-%{?with_vpx:BuildRequires:     libvpx-devel >= 0.9.7}
+%{?with_vpx:BuildRequires:     libvpx-devel >= 1.3.0}
+%{?with_webp:BuildRequires:    libwebp-devel}
 # X264_BUILD >= 118
 %{?with_x264:BuildRequires:    libx264-devel >= 0.1.3-1.20111212_2245}
+# X265_BUILD >= 17
+%{?with_x265:BuildRequires:    libx265-devel >= 1.3}
 %ifarch %{ix86}
 %ifnarch i386 i486
 BuildRequires: nasm
@@ -119,7 +139,7 @@ BuildRequires:      speex-devel >= 1:1.2-rc1
 %{?with_doc:BuildRequires:     texinfo}
 BuildRequires: twolame-devel
 %{?with_utvideo:BuildRequires: utvideo-devel >= 12}
-%{?with_vidstab:BuildRequires: vid.stab-devel}
+%{?with_vidstab:BuildRequires: vid.stab-devel >= 0.98}
 BuildRequires: vo-aacenc-devel
 BuildRequires: vo-amrwbenc-devel
 %{?with_wavpack:BuildRequires: wavpack-devel}
@@ -171,6 +191,11 @@ telewizyjnej.
 Summary:       ffmpeg libraries
 Summary(pl.UTF-8):     Biblioteki ffmpeg
 Group:         Libraries
+%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}
 
 %description libs
 This package contains the ffmpeg shared libraries:
@@ -195,6 +220,7 @@ Group:              Development/Libraries
 Requires:      %{name}-libs = %{version}-%{release}
 # Libs.private from *.pc (unreasonably they are all the same)
 %{?with_opencl:Requires:       OpenCL-devel >= 1.2}
+%{?with_opengl:Requires:       OpenGL-devel}
 Requires:      SDL-devel >= 1.2.1
 Requires:      alsa-lib-devel
 Requires:      bzip2-devel
@@ -204,6 +230,7 @@ Requires:   celt-devel >= 0.11.0
 %{?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:      jack-audio-connection-kit-devel
 Requires:      lame-libs-devel >= 3.98.3
@@ -211,6 +238,7 @@ Requires:   lame-libs-devel >= 3.98.3
 Requires:      libass-devel
 Requires:      libavc1394-devel
 Requires:      libbluray-devel
+%{?with_bs2b:Requires: libbs2b-devel}
 %{?with_caca:Requires: libcaca-devel}
 Requires:      libcdio-paranoia-devel >= 0.90-2
 Requires:      libdc1394-devel >= 2
@@ -221,11 +249,14 @@ Requires: libnut-devel
 %{?with_quvi:Requires: libquvi-devel}
 Requires:      libraw1394-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 >= 0.9.7}
+%{?with_vpx:Requires:  libvpx-devel >= 1.3.0}
+%{?with_webp:Requires: libwebp-devel}
 %{?with_x264:Requires: libx264-devel >= 0.1.3-1.20110625_2245}
+%{?with_x265:Requires: libx265-devel >= 0.7}
 Requires:      opencore-amr-devel
 %{?with_opencv:Requires:       opencv-devel}
 Requires:      openjpeg-devel >= 1.5
@@ -235,7 +266,7 @@ Requires:   schroedinger-devel
 Requires:      speex-devel >= 1:1.2-rc1
 Requires:      twolame-devel
 %{?with_utvideo:Requires:      utvideo-devel >= 12}
-%{?with_vidstab:Requires:      vid.stab-devel}
+%{?with_vidstab:Requires:      vid.stab-devel >= 0.98}
 Requires:      vo-aacenc-devel
 Requires:      vo-amrwbenc-devel
 %{?with_wavpack:Requires:      wavpack-devel}
@@ -304,26 +335,18 @@ 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:       Manual for ffmpeg
-Summary(fr.UTF-8):     Documentation pour ffmpeg
-Summary(it.UTF-8):     Documentazione di ffmpeg
-Summary(pl.UTF-8):     Podręcznik dla ffmpeg
+Summary:       FFmpeg documentation in HTML format
+Summary(pl.UTF-8):     Dokumentacja pakietu FFmpeg w formacie HTML
 Group:         Documentation
 %if "%{_rpmversion}" >= "5"
 BuildArch:     noarch
 %endif
 
 %description doc
-Documentation for ffmpeg.
-
-%description doc -l fr.UTF-8
-Documentation pour ffmpeg.
-
-%description doc -l it.UTF-8
-Documentazione di ffmpeg.
+FFmpeg documentation in HTML format.
 
 %description doc -l pl.UTF-8
-Dokumentacja do ffmpeg.
+Dokumentacja pakietu FFmpeg w formacie HTML.
 
 %prep
 %setup -q
@@ -402,7 +425,7 @@ EOF
        --libdir=%{_libdir} \
        --shlibdir=%{_libdir} \
        --mandir=%{_mandir} \
-       --extra-cflags="-D_GNU_SOURCE=1 %{rpmcppflags} %{rpmcflags}" \
+       --extra-cflags="-D_GNU_SOURCE=1 %{rpmcppflags} %{rpmcflags}%{?with_decklink: -I/usr/include/decklink}" \
        --extra-ldflags="%{rpmcflags} %{rpmldflags}" \
        --cc="%{__cc}" \
        --disable-debug \
@@ -410,6 +433,7 @@ EOF
        --disable-stripping \
        --enable-avfilter \
        --enable-avresample \
+       %{?with_decklink:--enable-decklink} \
        --enable-gnutls \
        --enable-gpl \
        --enable-version3 \
@@ -419,6 +443,7 @@ EOF
        %{?with_aacplus:--enable-libaacplus} \
        --enable-libass \
        --enable-libbluray \
+       %{?with_bs2b:--enable-libbs2b} \
        %{?with_caca:--enable-libcaca} \
        --enable-libcelt \
        --enable-libcdio \
@@ -426,6 +451,7 @@ EOF
        %{?with_fdk_aac:--enable-libfdk-aac} \
        %{?with_flite:--enable-libflite} \
        --enable-libfreetype \
+       %{?with_fribidi:--enable-libfribidi} \
        %{?with_gme:--enable-libgme} \
        --enable-libgsm \
        --enable-libiec61883 \
@@ -443,6 +469,7 @@ EOF
        --enable-librtmp \
        --enable-libschroedinger \
        %{?with_shine:--enable-libshine} \
+       %{?with_smb:--enable-libsmbclient} \
        %{?with_soxr:--enable-libsoxr} \
        --enable-libspeex \
        %{?with_ssh:--enable-libssh} \
@@ -456,13 +483,16 @@ EOF
        --enable-libvorbis \
        %{?with_vpx:--enable-libvpx} \
        %{?with_wavpack:--enable-libwavpack} \
+       %{?with_webp:--enable-libwebp} \
        %{?with_x264:--enable-libx264} \
+       %{?with_x265:--enable-libx265} \
        --enable-libxavs \
        --enable-libxvid \
        %{?with_zmq:--enable-libzmq} \
        %{?with_zvbi:--enable-libzvbi} \
        %{?with_openal:--enable-openal} \
        %{?with_opencl:--enable-opencl} \
+       %{?with_opengl:--enable-opengl} \
        --enable-postproc \
        --enable-pthreads \
        --enable-shared \
@@ -499,7 +529,7 @@ install -d $RPM_BUILD_ROOT{%{_sysconfdir},%{_sbindir},/etc/{sysconfig,rc.d/init.
 
 # install nonstandard, non-public headers manually
 cp -a config.h $RPM_BUILD_ROOT%{_includedir}/ffmpeg
-for a in libavutil/*/bswap.h; do
+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
@@ -517,6 +547,12 @@ install -p tools/qt-faststart $RPM_BUILD_ROOT%{_bindir}
 # simple to do (by querying pkgconfig), but why?
 install -p ffmpeg-avconfig $RPM_BUILD_ROOT%{_bindir}/ffmpeg-avconfig
 
+# packaged as %doc in -doc
+%{__rm} $RPM_BUILD_ROOT%{_docdir}/ffmpeg/*.html
+
+install -d $RPM_BUILD_ROOT%{_examplesdir}
+%{__mv} $RPM_BUILD_ROOT%{_datadir}/ffmpeg/examples $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
+
 %clean
 rm -rf $RPM_BUILD_ROOT
 
@@ -545,7 +581,7 @@ fi
 
 %files
 %defattr(644,root,root,755)
-%doc CREDITS LICENSE MAINTAINERS README doc/{APIchanges,RELEASE_NOTES}
+%doc CREDITS LICENSE.md MAINTAINERS README.md RELEASE_NOTES doc/APIchanges
 %attr(755,root,root) %{_bindir}/ffmpeg
 %attr(755,root,root) %{_bindir}/ffprobe
 %attr(755,root,root) %{_bindir}/qt-faststart
@@ -575,7 +611,7 @@ fi
 %attr(755,root,root) %{_libdir}/libavdevice.so.*.*.*
 %attr(755,root,root) %ghost %{_libdir}/libavdevice.so.55
 %attr(755,root,root) %{_libdir}/libavfilter.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libavfilter.so.3
+%attr(755,root,root) %ghost %{_libdir}/libavfilter.so.4
 %attr(755,root,root) %{_libdir}/libavformat.so.*.*.*
 %attr(755,root,root) %ghost %{_libdir}/libavformat.so.55
 %attr(755,root,root) %{_libdir}/libavresample.so.*.*.*
@@ -630,6 +666,7 @@ fi
 %{_mandir}/man3/libswresample.3*
 %{_mandir}/man3/libswscale.3*
 %endif
+%{_examplesdir}/%{name}-%{version}
 
 %files static
 %defattr(644,root,root,755)
This page took 0.107903 seconds and 4 git commands to generate.