#
# How to deal with ffmpeg/opencv checken-egg problem:
-# 1. make-request -r --without opencv ffmpeg.spec
+# 1. make-request -r --with bootstrap ffmpeg.spec
# 2. make-request -r opencv.spec
# 3. bump release of ffmpeg.spec
# 4. make-request -r 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: 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 dcadec # DCA decoding via libdcadec
%bcond_without decklink # Blackmagic DeskLink output support
%bcond_without flite # flite voice synthesis support
%bcond_without frei0r # frei0r video filtering
%bcond_without doc # don't build docs
%bcond_with tests # "make check" (some tests fail as of 2.5)
+%if %{with bootstrap}
+%undefine with_opencv
+%endif
+
%ifnarch %{ix86} %{x8664} arm
%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.6.1
+Version: 2.7.1
Release: 1
# LGPL or GPL, chosen at configure time (GPL version is more featured)
# (postprocessing, some filters, x264, x265, xavs, xvid, x11grab)
License: GPL v3+ with LGPL v3+ parts
Group: Applications/Multimedia
Source0: http://ffmpeg.org/releases/%{name}-%{version}.tar.bz2
-# Source0-md5: 62b5a37525fdf79aedd4a51a64793ed7
+# Source0-md5: f159c6d7eed8546b23e1a17325cbf1f8
Source1: ffserver.init
Source2: ffserver.sysconfig
Source3: ffserver.conf
-Patch0: %{name}-build.patch
URL: http://www.ffmpeg.org/
%{?with_decklink:BuildRequires: Blackmagic_DeckLink_SDK}
%{?with_openal:BuildRequires: OpenAL-devel >= 1.1}
BuildRequires: alsa-lib-devel
BuildRequires: bzip2-devel
BuildRequires: celt-devel >= 0.11.0
+%{?with_dcadec:BuildRequires: dcadec-devel}
%{?with_nonfree:BuildRequires: faac-devel}
%{?with_fdk_aac:BuildRequires: fdk-aac-devel}
%{?with_flite:BuildRequires: flite-devel >= 1.4}
# require version with altivec support fixed
BuildRequires: gcc >= 5:3.3.2-3
%endif
+BuildRequires: gmp-devel
BuildRequires: gnutls-devel
BuildRequires: jack-audio-connection-kit-devel
%{?with_ladspa:BuildRequires: ladspa-devel}
BuildRequires: libvdpau-devel >= 0.2
BuildRequires: libvorbis-devel
%{?with_vpx:BuildRequires: libvpx-devel >= 1.3.0}
-%{?with_webp:BuildRequires: libwebp-devel >= 0.2.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 >= 17
-%{?with_x265:BuildRequires: libx265-devel >= 1.3}
+# X265_BUILD >= 57
+%{?with_x265:BuildRequires: libx265-devel >= 1.3-0.20150610.1}
# libxcb xcb-shm xcb-xfixes xcb-shape
BuildRequires: libxcb-devel >= 1.4
%{?with_mfx:BuildRequires: mfx_dispatch-devel}
#%{?with_nvenc:BuildRequires: NVIDIA-NVENC-API}
BuildRequires: opencore-amr-devel
%{?with_opencv:BuildRequires: opencv-devel}
-%{?with_openh264:BuildRequires: openh264-devel}
+%{?with_openh264:BuildRequires: openh264-devel >= 1.3}
BuildRequires: openjpeg-devel >= 1.5
BuildRequires: opus-devel
BuildRequires: perl-Encode
Requires: alsa-lib-devel
Requires: bzip2-devel
Requires: celt-devel >= 0.11.0
+%{?with_dcadec:Requires: dcadec-devel}
%{?with_nonfree:Requires: faac-devel}
%{?with_fdk_aac:Requires: fdk-aac-devel}
%{?with_flite:Requires: flite-devel >= 1.4}
%{?with_va:Requires: libva-devel >= 1.0.3}
Requires: libvorbis-devel
%{?with_vpx:Requires: libvpx-devel >= 1.3.0}
-%{?with_webp:Requires: libwebp-devel >= 0.2.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 >= 0.7}
+%{?with_x265:Requires: libx265-devel >= 1.3-0.20150610.1}
%{?with_mfx:Requires: mfx_dispatch-devel}
Requires: opencore-amr-devel
%{?with_opencv:Requires: opencv-devel}
-%{?with_openh264:Requires: openh264-devel}
+%{?with_openh264:Requires: openh264-devel >= 1.3}
Requires: openjpeg-devel >= 1.5
Requires: schroedinger-devel
%{?with_shine:Requires: shine-devel >= 3.0.0}
%prep
%setup -q
-%patch0 -p1
# package the grep result for mplayer, the result formatted as ./mplayer/configure
cat <<EOF > ffmpeg-avconfig
--enable-libcelt \
--enable-libcdio \
--enable-libdc1394 \
+ %{?with_dcadec:--enable-libdcadec} \
%{?with_fdk_aac:--enable-libfdk-aac} \
%{?with_flite:--enable-libflite} \
--enable-libfreetype \