X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=ffmpeg.spec;h=2778dbad4cbaae406edc8a01363646f5c29d01e9;hb=1be5865c07af222f4b4fd296312fd6a93aa4a16a;hp=ffca891574cb8a94cd3cdc6c6903e65c06cfac74;hpb=a7e0e69a94b32d57d8b0f64530d9493cce9b295a;p=packages%2Fffmpeg.git diff --git a/ffmpeg.spec b/ffmpeg.spec index ffca891..2778dba 100644 --- a/ffmpeg.spec +++ b/ffmpeg.spec @@ -8,40 +8,62 @@ # 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 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 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_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_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: 1.2 -Release: 1 +Version: 2.2.2 +Release: 2 # 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: c871d20559cb64c015b5cf0858812a56 +# Source0-md5: 581affe5d820d89ce21fe3f0316ef2c3 Source1: ffserver.init Source2: ffserver.sysconfig Source3: ffserver.conf Patch0: %{name}-opencv24.patch -Patch1: %{name}-utvideo.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 @@ -52,12 +74,14 @@ BuildRequires: celt-devel >= 0.11.0 BuildRequires: fontconfig-devel BuildRequires: freetype-devel %{?with_frei0r:BuildRequires: frei0r-devel} +%{?with_gme:BuildRequires: game-music-emu-devel} %ifarch ppc # require version with altivec support fixed 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 @@ -70,17 +94,22 @@ BuildRequires: libgsm-devel BuildRequires: libiec61883-devel BuildRequires: libmodplug-devel BuildRequires: libnut-devel +%{?with_quvi:BuildRequires: libquvi-devel} BuildRequires: libraw1394-devel >= 2 BuildRequires: librtmp-devel +%{?with_ssh:BuildRequires: libssh-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 >= 7 +%{?with_x265:BuildRequires: libx265-devel >= 0.7} %ifarch %{ix86} %ifnarch i386 i486 BuildRequires: nasm @@ -96,6 +125,7 @@ BuildRequires: pkgconfig %{?with_pulseaudio:BuildRequires: pulseaudio-devel} BuildRequires: rpmbuild(macros) >= 1.470 BuildRequires: schroedinger-devel +%{?with_shine:BuildRequires: shine-devel >= 3.0.0} %{?with_soxr:BuildRequires: soxr-devel} BuildRequires: speex-devel >= 1:1.2-rc1 %{?with_doc:BuildRequires: tetex} @@ -103,8 +133,10 @@ 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 >= 0.98} BuildRequires: vo-aacenc-devel BuildRequires: vo-amrwbenc-devel +%{?with_wavpack:BuildRequires: wavpack-devel} %{?with_ilbc:BuildRequires: webrtc-libilbc-devel} BuildRequires: xavs-devel BuildRequires: xorg-lib-libX11-devel @@ -112,6 +144,8 @@ BuildRequires: xorg-lib-libXext-devel 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 @@ -151,6 +185,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: @@ -174,16 +213,19 @@ 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) +%{?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 Requires: celt-devel >= 0.11.0 %{?with_nonfree:Requires: faac-devel} %{?with_fdk_aac:Requires: fdk-aac-devel} +%{?with_flite:Requires: flite-devel >= 1.4} Requires: fontconfig-devel Requires: freetype-devel +%{?with_gme:Requires: game-music-emu-devel} Requires: jack-audio-connection-kit-devel -%{?with_flite:Requires: flite-devel >= 1.4} Requires: lame-libs-devel >= 3.98.3 %{?with_aacplus:Requires: libaacplus-devel >= 2.0.0} Requires: libass-devel @@ -196,28 +238,35 @@ Requires: libgsm-devel Requires: libiec61883-devel Requires: libmodplug-devel Requires: libnut-devel +%{?with_quvi:Requires: libquvi-devel} Requires: libraw1394-devel >= 2 Requires: librtmp-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 >= 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 >= 0.98} Requires: vo-aacenc-devel Requires: vo-amrwbenc-devel +%{?with_wavpack:Requires: wavpack-devel} %{?with_ilbc:Requires: webrtc-libilbc-devel} Requires: xavs-devel Requires: xorg-lib-libXext-devel Requires: xorg-lib-libXfixes-devel Requires: xvid-devel >= 1:1.1.0 +%{?with_zmq:Requires: zeromq-devel} Requires: zlib-devel Obsoletes: libpostproc-devel @@ -276,45 +325,66 @@ 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 +Group: Documentation +%if "%{_rpmversion}" >= "5" +BuildArch: noarch +%endif + +%description doc +FFmpeg documentation in HTML format. + +%description doc -l pl.UTF-8 +Dokumentacja pakietu FFmpeg w formacie HTML. + %prep %setup -q %patch0 -p1 -%patch1 -p1 # package the grep result for mplayer, the result formatted as ./mplayer/configure cat < ffmpeg-avconfig #! /bin/sh -_libavdecoders_all="`sed -n 's/^[^#]*DEC.*(.*, *\(.*\)).*/\1_decoder/p' libavcodec/allcodecs.c | tr '[a-z]' '[A-Z]'`" -_libavencoders_all="`sed -n 's/^[^#]*ENC.*(.*, *\(.*\)).*/\1_encoder/p' libavcodec/allcodecs.c | tr '[a-z]' '[A-Z]'`" -_libavparsers_all="`sed -n 's/^[^#]*PARSER.*(.*, *\(.*\)).*/\1_parser/p' libavcodec/allcodecs.c | tr '[a-z]' '[A-Z]'`" -_libavbsfs_all="`sed -n 's/^[^#]*BSF.*(.*, *\(.*\)).*/\1_bsf/p' libavcodec/allcodecs.c | tr '[a-z]' '[A-Z]'`" -_libavdemuxers_all="`sed -n 's/^[^#]*DEMUX.*(.*, *\(.*\)).*/\1_demuxer/p' libavformat/allformats.c | tr '[a-z]' '[A-Z]'`" -_libavmuxers_all="`sed -n 's/^[^#]*_MUX.*(.*, *\(.*\)).*/\1_muxer/p' libavformat/allformats.c | tr '[a-z]' '[A-Z]'`" -_libavprotocols_all="`sed -n 's/^[^#]*PROTOCOL.*(.*, *\(.*\)).*/\1_protocol/p' libavformat/allformats.c | tr '[a-z]' '[A-Z]'`" +libavdecoders_all="$(sed -n 's/^[^#]*DEC.*(.*, *\(.*\)).*/\1_decoder/p' libavcodec/allcodecs.c | tr '[a-z]' '[A-Z]')" +libavencoders_all="$(sed -n 's/^[^#]*ENC.*(.*, *\(.*\)).*/\1_encoder/p' libavcodec/allcodecs.c | tr '[a-z]' '[A-Z]')" +libavparsers_all="$(sed -n 's/^[^#]*PARSER.*(.*, *\(.*\)).*/\1_parser/p' libavcodec/allcodecs.c | tr '[a-z]' '[A-Z]')" +libavbsfs_all="$(sed -n 's/^[^#]*BSF.*(.*, *\(.*\)).*/\1_bsf/p' libavcodec/allcodecs.c | tr '[a-z]' '[A-Z]')" +libavdemuxers_all="$(sed -n 's/^[^#]*DEMUX.*(.*, *\(.*\)).*/\1_demuxer/p' libavformat/allformats.c | tr '[a-z]' '[A-Z]')" +libavmuxers_all="$(sed -n 's/^[^#]*_MUX.*(.*, *\(.*\)).*/\1_muxer/p' libavformat/allformats.c | tr '[a-z]' '[A-Z]')" +libavprotocols_all="$(sed -n 's/^[^#]*PROTOCOL.*(.*, *\(.*\)).*/\1_protocol/p' libavformat/allformats.c | tr '[a-z]' '[A-Z]')" +libavhwaccels_all="$(sed -n 's/^[^#]*HWACCEL.*(.*, *\(.*\)).*/\1_hwaccel/p' libavcodec/allcodecs.c | tr '[a-z]' '[A-Z]')" +libavfilters_all="$(sed -n 's/^[^#]*FILTER.*(.*, *\(.*\),.*).*/\1_filter/p' libavfilter/allfilters.c | tr '[a-z]' '[A-Z]')" EOF cat <<'EOF' >> ffmpeg-avconfig case "$1" in --decoders) - echo $_libavdecoders_all + echo $libavdecoders_all ;; --encoders) - echo $_libavencoders_all + echo $libavencoders_all ;; --parsers) - echo $_libavparsers_all + echo $libavparsers_all ;; --bsfs) - echo $_libavbsfs_all + echo $libavbsfs_all ;; --demuxers) - echo $_libavdemuxers_all + echo $libavdemuxers_all ;; --muxers) - echo $_libavmuxers_all + echo $libavmuxers_all ;; --protocols) - echo $_libavprotocols_all + echo $libavprotocols_all + ;; +--hwaccels) + echo $libavhwaccels_all + ;; +--filters) + echo $libavfilters_all ;; *) cat <