X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=ffmpeg.spec;h=2b80495f107dd7e5c80a22f6af5b36d35ba617d1;hb=4474c07d1a40c24b2881ad2788ff48fb55eb895c;hp=6d0311f8a9c477a723fe6533652edb5f7fe60733;hpb=d97a793a2db3d367a2f525bf270d49e50e4383d4;p=packages%2Fffmpeg.git diff --git a/ffmpeg.spec b/ffmpeg.spec index 6d0311f..2b80495 100644 --- a/ffmpeg.spec +++ b/ffmpeg.spec @@ -1,4 +1,3 @@ -# TODO: libzmq ? # # How to deal with ffmpeg/opencv checken-egg problem: # 1. make-request -r --without opencv ffmpeg.spec @@ -9,47 +8,65 @@ # Conditional build: %bcond_with nonfree # non free options of package (currently: faac) %bcond_with aacplus # AAC+ encoding via libaacplus (requires nonfree) -%bcond_with fdk_aac # AAC encoding via libfdk_aac (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 +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: 4ec1cedd4c7753512462f70b347c338a +# 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 @@ -60,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 @@ -67,10 +85,12 @@ BuildRequires: gcc >= 5:3.3.2-3 %endif BuildRequires: gnutls-devel BuildRequires: jack-audio-connection-kit-devel +%{?with_ladspa:BuildRequires: ladspa-devel} 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 @@ -82,16 +102,20 @@ BuildRequires: libnut-devel %{?with_quvi:BuildRequires: libquvi-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_shine:BuildRequires: shine-devel} +%{?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 @@ -107,7 +131,7 @@ BuildRequires: pkgconfig %{?with_pulseaudio:BuildRequires: pulseaudio-devel} BuildRequires: rpmbuild(macros) >= 1.470 BuildRequires: schroedinger-devel -BuildRequires: shine-devel >= 3.0.0 +%{?with_shine:BuildRequires: shine-devel >= 3.0.0} %{?with_soxr:BuildRequires: soxr-devel} BuildRequires: speex-devel >= 1:1.2-rc1 %{?with_doc:BuildRequires: tetex} @@ -115,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} @@ -127,6 +151,7 @@ BuildRequires: xorg-lib-libXfixes-devel BuildRequires: xvid-devel >= 1:1.1.0 BuildRequires: yasm %{?with_zmq:BuildRequires: zeromq-devel} +%{?with_zvbi:BuildRequires: zvbi-devel} BuildRequires: zlib-devel %{?with_autoreqdep:BuildConflicts: libpostproc} # overflows maximum hash table size @@ -166,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: @@ -190,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 @@ -199,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 @@ -206,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 @@ -216,21 +249,24 @@ 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 Requires: schroedinger-devel -%{?with_shine:Requires: shine-devel} +%{?with_shine:Requires: shine-devel >= 3.0.0} %{?with_soxr:Requires: soxr-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} @@ -299,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 @@ -397,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 \ @@ -405,14 +433,17 @@ EOF --disable-stripping \ --enable-avfilter \ --enable-avresample \ + %{?with_decklink:--enable-decklink} \ --enable-gnutls \ --enable-gpl \ --enable-version3 \ --enable-fontconfig \ %{?with_frei0r:--enable-frei0r} \ + %{?with_ladspa:--enable-ladspa} \ %{?with_aacplus:--enable-libaacplus} \ --enable-libass \ --enable-libbluray \ + %{?with_bs2b:--enable-libbs2b} \ %{?with_caca:--enable-libcaca} \ --enable-libcelt \ --enable-libcdio \ @@ -420,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 \ @@ -437,8 +469,10 @@ EOF --enable-librtmp \ --enable-libschroedinger \ %{?with_shine:--enable-libshine} \ + %{?with_smb:--enable-libsmbclient} \ %{?with_soxr:--enable-libsoxr} \ --enable-libspeex \ + %{?with_ssh:--enable-libssh} \ --enable-libtheora \ --enable-libtwolame \ %{?with_utvideo:--enable-libutvideo} \ @@ -449,12 +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 \ @@ -491,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 @@ -509,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 @@ -537,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 @@ -567,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.*.*.* @@ -622,6 +666,7 @@ fi %{_mandir}/man3/libswresample.3* %{_mandir}/man3/libswscale.3* %endif +%{_examplesdir}/%{name}-%{version} %files static %defattr(644,root,root,755)