]> git.pld-linux.org Git - packages/ffmpeg.git/blame - ffmpeg.spec
- updated to 2.1.4
[packages/ffmpeg.git] / ffmpeg.spec
CommitLineData
197f4211 1#
5663f846
JB
2# How to deal with ffmpeg/opencv checken-egg problem:
3# 1. make-request -r --without opencv ffmpeg.spec
192f9f57 4# 2. make-request -r opencv.spec
5# 3. bump release of ffmpeg.spec
6# 4. make-request -r ffmpeg.spec
7#
2b3b2117 8# Conditional build:
38cefaee 9%bcond_with nonfree # non free options of package (currently: faac)
2e585b44 10%bcond_with aacplus # AAC+ encoding via libaacplus (requires nonfree)
5f3dc7d9 11%bcond_with fdk_aac # AAC de/encoding via libfdk_aac (requires nonfree)
1c1d1368 12%bcond_without caca # textual display using libcaca
a584ded4
JB
13%bcond_without flite # flite voice synthesis support
14%bcond_without frei0r # frei0r video filtering
22745365 15%bcond_without gme # Game Music Emu support
cbeed0a5 16%bcond_without ilbc # iLBC de/encoding via WebRTC libilbc
5f3dc7d9
JB
17%bcond_without ladspa # LADSPA audio filtering
18%bcond_without ssh # SFTP protocol support via libssh
a584ded4 19%bcond_without openal # OpenAL 1.1 capture support
143c6eec 20%bcond_with opencl # OpenCL code [OpenCL 1.2, not available in Mesa yet]
a584ded4
JB
21%bcond_without opencv # OpenCV video filtering
22%bcond_without pulseaudio # PulseAudio input support
22745365 23%bcond_without quvi # quvi input support
f56b6dce 24%bcond_without shine # shine fixed-point MP3 encoder
05408820 25%bcond_without soxr # SoX Resampler support
a584ded4
JB
26%bcond_without x264 # x264 encoder
27%bcond_without utvideo # Ut Video decoder
1ef27ea1 28%bcond_without va # VAAPI (Video Acceleration API)
f56b6dce 29%bcond_without vidstab # vid.stab video stabilization support
1ef27ea1 30%bcond_without vpx # VP8, a high-quality video codec
22745365 31%bcond_without wavpack # wavpack encoding support
6a6b11be 32%bcond_without zmq # 0MQ message passing
5f3dc7d9 33%bcond_without zvbi # teletext via libzvbi
1ef27ea1 34%bcond_without doc # don't build docs
314ef0df 35
cbdd2688
JB
36Summary: FFmpeg - a very fast video and audio converter
37Summary(pl.UTF-8): FFmpeg - szybki konwerter audio/wideo
9fc4ad22 38Name: ffmpeg
40fe46be 39Version: 2.1.4
fd3f5554 40Release: 1
9cf4d8a4 41# LGPL or GPL, chosen at configure time (GPL version is more featured)
38cefaee
JB
42# (postprocessing, some filters, x264, xavs, xvid, x11grab)
43# using v3 allows Apache-licensed libs (opencore-amr, libvo-*enc)
0b43f655 44License: GPL v3+ with LGPL v3+ parts
fde29260 45Group: Applications/Multimedia
1ef27ea1 46Source0: http://ffmpeg.org/releases/%{name}-%{version}.tar.bz2
40fe46be 47# Source0-md5: dedc28003a77c69432c42ab16e5f6982
fde29260
ER
48Source1: ffserver.init
49Source2: ffserver.sysconfig
38cf6de3 50Source3: ffserver.conf
a7e0e69a 51Patch0: %{name}-opencv24.patch
85f7cea1 52URL: http://www.ffmpeg.org/
28673856 53%{?with_openal:BuildRequires: OpenAL-devel >= 1.1}
6a6b11be 54%{?with_opencl:BuildRequires: OpenCL-devel >= 1.2}
3dcb8642 55BuildRequires: SDL-devel >= 1.2.1
cbdd2688 56BuildRequires: alsa-lib-devel
38cefaee 57BuildRequires: bzip2-devel
9f9ba8ac 58BuildRequires: celt-devel >= 0.11.0
38cefaee 59%{?with_nonfree:BuildRequires: faac-devel}
004e5628 60%{?with_fdk_aac:BuildRequires: fdk-aac-devel}
a584ded4 61%{?with_flite:BuildRequires: flite-devel >= 1.4}
3dcb8642 62BuildRequires: fontconfig-devel
0aad4bf2 63BuildRequires: freetype-devel
d7a39558 64%{?with_frei0r:BuildRequires: frei0r-devel}
22745365 65%{?with_gme:BuildRequires: game-music-emu-devel}
4bee03f0
JB
66%ifarch ppc
67# require version with altivec support fixed
68BuildRequires: gcc >= 5:3.3.2-3
69%endif
d5aef92e 70BuildRequires: gnutls-devel
cbdd2688 71BuildRequires: jack-audio-connection-kit-devel
5f3dc7d9 72%{?with_ladspa:BuildRequires: ladspa-devel}
cbdd2688 73BuildRequires: lame-libs-devel >= 3.98.3
2e585b44 74%{?with_aacplus:BuildRequires: libaacplus-devel >= 2.0.0}
d5aef92e 75BuildRequires: libass-devel
1c1d1368 76BuildRequires: libavc1394-devel
3dcb8642 77BuildRequires: libbluray-devel
1c1d1368 78%{?with_caca:BuildRequires: libcaca-devel}
a09e741c 79BuildRequires: libcdio-paranoia-devel >= 0.90-2
9c4296c2 80BuildRequires: libdc1394-devel >= 2
f1669449 81BuildRequires: libgsm-devel
1c1d1368 82BuildRequires: libiec61883-devel
d5aef92e 83BuildRequires: libmodplug-devel
4a927f9d 84BuildRequires: libnut-devel
22745365 85%{?with_quvi:BuildRequires: libquvi-devel}
7571bfa0 86BuildRequires: libraw1394-devel >= 2
cbdd2688 87BuildRequires: librtmp-devel
5f3dc7d9 88%{?with_ssh:BuildRequires: libssh-devel}
9042663c 89BuildRequires: libtheora-devel >= 1.0-0.beta3
4814ac84 90BuildRequires: libtool >= 2:1.4d-3
daf9a670 91BuildRequires: libv4l-devel
64f8f109 92%{?with_va:BuildRequires: libva-devel >= 1.0.3}
9c4296c2 93BuildRequires: libvdpau-devel >= 0.2
e380e18a 94BuildRequires: libvorbis-devel
28673856 95%{?with_vpx:BuildRequires: libvpx-devel >= 0.9.7}
660918c5
AM
96# X264_BUILD >= 118
97%{?with_x264:BuildRequires: libx264-devel >= 0.1.3-1.20111212_2245}
e1fe03f7 98%ifarch %{ix86}
99%ifnarch i386 i486
76243dbd
JB
100BuildRequires: nasm
101%endif
e1fe03f7 102%endif
1c1d1368
JB
103BuildRequires: opencore-amr-devel
104%{?with_opencv:BuildRequires: opencv-devel}
105BuildRequires: openjpeg-devel >= 1.5
106BuildRequires: opus-devel
136f0f45 107BuildRequires: perl-Encode
1463656a 108BuildRequires: perl-tools-pod
ef3c0513 109BuildRequires: pkgconfig
1c1d1368 110%{?with_pulseaudio:BuildRequires: pulseaudio-devel}
db8052c8 111BuildRequires: rpmbuild(macros) >= 1.470
126fb805 112BuildRequires: schroedinger-devel
4a11c99e 113%{?with_shine:BuildRequires: shine-devel >= 3.0.0}
05408820 114%{?with_soxr:BuildRequires: soxr-devel}
1c1d1368 115BuildRequires: speex-devel >= 1:1.2-rc1
64f8f109
ER
116%{?with_doc:BuildRequires: tetex}
117%{?with_doc:BuildRequires: texi2html}
118%{?with_doc:BuildRequires: texinfo}
1c1d1368 119BuildRequires: twolame-devel
05408820 120%{?with_utvideo:BuildRequires: utvideo-devel >= 12}
f56b6dce 121%{?with_vidstab:BuildRequires: vid.stab-devel}
5dc039cb
JB
122BuildRequires: vo-aacenc-devel
123BuildRequires: vo-amrwbenc-devel
22745365 124%{?with_wavpack:BuildRequires: wavpack-devel}
cbeed0a5 125%{?with_ilbc:BuildRequires: webrtc-libilbc-devel}
5dc039cb 126BuildRequires: xavs-devel
28673856 127BuildRequires: xorg-lib-libX11-devel
cbdd2688
JB
128BuildRequires: xorg-lib-libXext-devel
129BuildRequires: xorg-lib-libXfixes-devel
46f2a56b 130BuildRequires: xvid-devel >= 1:1.1.0
cbeed0a5 131BuildRequires: yasm
6a6b11be 132%{?with_zmq:BuildRequires: zeromq-devel}
5f3dc7d9 133%{?with_zvbi:BuildRequires: zvbi-devel}
33a1c0f3 134BuildRequires: zlib-devel
57ebb8ad 135%{?with_autoreqdep:BuildConflicts: libpostproc}
9c4296c2
JB
136# overflows maximum hash table size
137BuildConflicts: pdksh < 5.2.14-57
54ec280e 138Requires: %{name}-libs = %{version}-%{release}
05408820 139%{?with_utvideo:Requires: utvideo >= 12}
92a3edff 140%{?with_ilbc:Requires: webrtc-libilbc}
839e806f 141Requires: xvid >= 1:1.1.0
af49d6ab 142Obsoletes: libpostproc
539b540f 143BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
9fc4ad22 144
2a60eebe
JB
145%define _noautoreqdep libGL.so.1 libGLU.so.1
146
c01d7857
PS
147%define specflags -fno-strict-aliasing
148
149# -fomit-frame-pointer is always needed on x86 due to lack of registers (-fPIC takes one)
150%define specflags_ia32 -fomit-frame-pointer
151# -mmmx is needed to enable <mmintrin.h> code.
152%define specflags_i586 -mmmx
153%define specflags_i686 -mmmx
1162803a 154%define specflags_ppc -fPIC
c01d7857 155
9fc4ad22 156%description
85f7cea1
ER
157FFmpeg is a complete solution to record, convert and stream audio and
158video. It is a command line tool to convert one video file format to
159another. It also supports grabbing and encoding in real time from a TV
160card.
9fc4ad22 161
cdb7b42e 162%description -l pl.UTF-8
cbdd2688
JB
163FFmpeg to kompletne rozwiązanie nagrywania, konwersji i transmisji
164strumieni dźwięku i obrazu. Jest to działające z linii poleceń
165narzędzie do konwersji obrazu z jednego formatu do innego. Obsługuje
166także przechwytywanie i kodowanie w czasie rzeczywistym z karty
167telewizyjnej.
9fc4ad22 168
54ec280e
PG
169%package libs
170Summary: ffmpeg libraries
adcc0f76 171Summary(pl.UTF-8): Biblioteki ffmpeg
143c6eec
JB
172%if "%(rpm -q --qf '%{V}' gnutls-devel)" >= "3.0.20"
173# uses gnutls_certificate_set_x509_system_trust if >= 3.0.20
f9cce0c9 174Requires: gnutls-libs >= 3.0.20
143c6eec 175%endif
54ec280e
PG
176Group: Libraries
177
178%description libs
cbdd2688
JB
179This package contains the ffmpeg shared libraries:
180- the codec library (libavcodec). It supports most existing encoding
181 formats (MPEG, DivX, MPEG4, AC3, DV...),
182- demuxer library (libavformat). It supports most existing file
183 formats (AVI, MPEG, OGG, Matroska, ASF...),
184- video postprocessing library (libpostproc).
54ec280e 185
cdb7b42e 186%description libs -l pl.UTF-8
cbdd2688
JB
187Ten pakiet zawiera biblioteki współdzielone ffmpeg:
188- bibliotekę kodeków (libavcodec); obsługuje większość istniejących
189 formatów kodowania (MPEG, DivX, MPEG4, AC3, DV...),
190- bibliotekę demuksera (libavformat); obsługuje większość istniejących
191 formatów plików (AVI, MPEG, OGG, Matroska, ASF...),
192- bibliotekę postprocessingu (libpostproc).
54ec280e 193
af49d6ab
JB
194%package devel
195Summary: ffmpeg header files
adcc0f76 196Summary(pl.UTF-8): Pliki nagłówkowe ffmpeg
af49d6ab 197Group: Development/Libraries
54ec280e 198Requires: %{name}-libs = %{version}-%{release}
38cefaee 199# Libs.private from *.pc (unreasonably they are all the same)
6a6b11be 200%{?with_opencl:Requires: OpenCL-devel >= 1.2}
3dcb8642 201Requires: SDL-devel >= 1.2.1
38cefaee
JB
202Requires: alsa-lib-devel
203Requires: bzip2-devel
9c4296c2 204Requires: celt-devel >= 0.11.0
38cefaee 205%{?with_nonfree:Requires: faac-devel}
004e5628 206%{?with_fdk_aac:Requires: fdk-aac-devel}
4b05ede1 207%{?with_flite:Requires: flite-devel >= 1.4}
3dcb8642 208Requires: fontconfig-devel
0aad4bf2 209Requires: freetype-devel
22745365 210%{?with_gme:Requires: game-music-emu-devel}
38cefaee
JB
211Requires: jack-audio-connection-kit-devel
212Requires: lame-libs-devel >= 3.98.3
1c1d1368
JB
213%{?with_aacplus:Requires: libaacplus-devel >= 2.0.0}
214Requires: libass-devel
215Requires: libavc1394-devel
3dcb8642 216Requires: libbluray-devel
28673856 217%{?with_caca:Requires: libcaca-devel}
a09e741c 218Requires: libcdio-paranoia-devel >= 0.90-2
9c4296c2 219Requires: libdc1394-devel >= 2
bf479bc6 220Requires: libgsm-devel
1c1d1368
JB
221Requires: libiec61883-devel
222Requires: libmodplug-devel
4a927f9d 223Requires: libnut-devel
22745365 224%{?with_quvi:Requires: libquvi-devel}
7571bfa0 225Requires: libraw1394-devel >= 2
38cefaee
JB
226Requires: librtmp-devel
227Requires: libtheora-devel >= 1.0-0.beta3
228%{?with_va:Requires: libva-devel >= 1.0.3}
33a1c0f3 229Requires: libvorbis-devel
28673856 230%{?with_vpx:Requires: libvpx-devel >= 0.9.7}
ea09f25d 231%{?with_x264:Requires: libx264-devel >= 0.1.3-1.20110625_2245}
38cefaee 232Requires: opencore-amr-devel
fc1d9619 233%{?with_opencv:Requires: opencv-devel}
ae5be86b 234Requires: openjpeg-devel >= 1.5
38cefaee 235Requires: schroedinger-devel
4a11c99e 236%{?with_shine:Requires: shine-devel >= 3.0.0}
05408820 237%{?with_soxr:Requires: soxr-devel}
38cefaee 238Requires: speex-devel >= 1:1.2-rc1
1c1d1368 239Requires: twolame-devel
05408820 240%{?with_utvideo:Requires: utvideo-devel >= 12}
f56b6dce 241%{?with_vidstab:Requires: vid.stab-devel}
38cefaee
JB
242Requires: vo-aacenc-devel
243Requires: vo-amrwbenc-devel
22745365 244%{?with_wavpack:Requires: wavpack-devel}
cbeed0a5 245%{?with_ilbc:Requires: webrtc-libilbc-devel}
38cefaee
JB
246Requires: xavs-devel
247Requires: xorg-lib-libXext-devel
248Requires: xorg-lib-libXfixes-devel
46f2a56b 249Requires: xvid-devel >= 1:1.1.0
6a6b11be 250%{?with_zmq:Requires: zeromq-devel}
33a1c0f3 251Requires: zlib-devel
8152d6a2 252Obsoletes: libpostproc-devel
af49d6ab
JB
253
254%description devel
255ffmpeg header files.
256
cdb7b42e
JR
257%description devel -l pl.UTF-8
258Pliki nagłówkowe ffmpeg.
af49d6ab
JB
259
260%package static
261Summary: ffmpeg static libraries
adcc0f76 262Summary(pl.UTF-8): Statyczne biblioteki ffmpeg
af49d6ab
JB
263Group: Development/Libraries
264Requires: %{name}-devel = %{version}-%{release}
265
266%description static
267ffmpeg static libraries (libavcodec and libavformat).
268
cdb7b42e 269%description static -l pl.UTF-8
af49d6ab
JB
270Statyczne biblioteki ffmpeg (libavcodec i libavformat).
271
2a60eebe
JB
272%package ffplay
273Summary: FFplay - SDL-based media player
adcc0f76 274Summary(pl.UTF-8): FFplay - odtwarzacz mediów oparty na SDL
2a60eebe 275Group: Applications/Multimedia
54ec280e 276Requires: %{name}-libs = %{version}-%{release}
2a60eebe
JB
277
278%description ffplay
279FFplay is a very simple and portable media player using the FFmpeg
280libraries and the SDL library. It is mostly used as a test bench for
281the various APIs of FFmpeg.
282
cdb7b42e
JR
283%description ffplay -l pl.UTF-8
284FFplay to bardzo prosty i przenośny odtwarzacz mediów używający
285bibliotek FFmpeg oraz biblioteki SDL. Jest używany głównie do
286testowania różnych API FFmpeg.
2a60eebe 287
fde29260
ER
288%package ffserver
289Summary: FFserver video server
adcc0f76 290Summary(pl.UTF-8): FFserver - serwer strumieni obrazu
fde29260 291Group: Daemons
593d3a64 292Requires(post,preun): /sbin/chkconfig
67103923 293Requires: %{name}-libs = %{version}-%{release}
2305d791 294Requires: rc-scripts >= 0.4.0.10
fde29260
ER
295
296%description ffserver
297FFserver is a streaming server for both audio and video. It supports
298several live feeds, streaming from files and time shifting on live
299feeds (you can seek to positions in the past on each live feed,
300provided you specify a big enough feed storage in ffserver.conf).
301
cdb7b42e
JR
302%description ffserver -l pl.UTF-8
303FFserver to serwer strumieni dla dźwięku i obrazu. Obsługuje kilka
304źródeł na żywo, przekazywanie strumieni z plików i przesuwanie w
305czasie dla źródeł na żywo (można przeskakiwać na położenia w
306przeszłości dla każdego źródła na żywo, pod warunkiem odpowiednio
307dużej przestrzeni na dane skonfigurowanej w ffserver.conf).
4e0bd1da 308
4b05ede1 309%package doc
143c6eec
JB
310Summary: FFmpeg documentation in HTML format
311Summary(pl.UTF-8): Dokumentacja pakietu FFmpeg w formacie HTML
4b05ede1
ER
312Group: Documentation
313%if "%{_rpmversion}" >= "5"
314BuildArch: noarch
315%endif
316
317%description doc
143c6eec 318FFmpeg documentation in HTML format.
4b05ede1
ER
319
320%description doc -l pl.UTF-8
143c6eec 321Dokumentacja pakietu FFmpeg w formacie HTML.
4b05ede1 322
9fc4ad22 323%prep
aed8e8c9 324%setup -q
f1669449 325%patch0 -p1
9fc4ad22 326
9d4f8977
ER
327# package the grep result for mplayer, the result formatted as ./mplayer/configure
328cat <<EOF > ffmpeg-avconfig
2b2445b7 329#! /bin/sh
16803cdb
ER
330libavdecoders_all="$(sed -n 's/^[^#]*DEC.*(.*, *\(.*\)).*/\1_decoder/p' libavcodec/allcodecs.c | tr '[a-z]' '[A-Z]')"
331libavencoders_all="$(sed -n 's/^[^#]*ENC.*(.*, *\(.*\)).*/\1_encoder/p' libavcodec/allcodecs.c | tr '[a-z]' '[A-Z]')"
332libavparsers_all="$(sed -n 's/^[^#]*PARSER.*(.*, *\(.*\)).*/\1_parser/p' libavcodec/allcodecs.c | tr '[a-z]' '[A-Z]')"
333libavbsfs_all="$(sed -n 's/^[^#]*BSF.*(.*, *\(.*\)).*/\1_bsf/p' libavcodec/allcodecs.c | tr '[a-z]' '[A-Z]')"
334libavdemuxers_all="$(sed -n 's/^[^#]*DEMUX.*(.*, *\(.*\)).*/\1_demuxer/p' libavformat/allformats.c | tr '[a-z]' '[A-Z]')"
335libavmuxers_all="$(sed -n 's/^[^#]*_MUX.*(.*, *\(.*\)).*/\1_muxer/p' libavformat/allformats.c | tr '[a-z]' '[A-Z]')"
336libavprotocols_all="$(sed -n 's/^[^#]*PROTOCOL.*(.*, *\(.*\)).*/\1_protocol/p' libavformat/allformats.c | tr '[a-z]' '[A-Z]')"
337libavhwaccels_all="$(sed -n 's/^[^#]*HWACCEL.*(.*, *\(.*\)).*/\1_hwaccel/p' libavcodec/allcodecs.c | tr '[a-z]' '[A-Z]')"
338libavfilters_all="$(sed -n 's/^[^#]*FILTER.*(.*, *\(.*\),.*).*/\1_filter/p' libavfilter/allfilters.c | tr '[a-z]' '[A-Z]')"
2b2445b7 339EOF
9d4f8977 340cat <<'EOF' >> ffmpeg-avconfig
2b2445b7
ER
341
342case "$1" in
343--decoders)
16803cdb 344 echo $libavdecoders_all
2b2445b7
ER
345 ;;
346--encoders)
16803cdb 347 echo $libavencoders_all
2b2445b7
ER
348 ;;
349--parsers)
16803cdb 350 echo $libavparsers_all
2b2445b7
ER
351 ;;
352--bsfs)
16803cdb 353 echo $libavbsfs_all
2b2445b7
ER
354 ;;
355--demuxers)
16803cdb 356 echo $libavdemuxers_all
2b2445b7
ER
357 ;;
358--muxers)
16803cdb 359 echo $libavmuxers_all
2b2445b7
ER
360 ;;
361--protocols)
16803cdb
ER
362 echo $libavprotocols_all
363 ;;
364--hwaccels)
365 echo $libavhwaccels_all
366 ;;
367--filters)
368 echo $libavfilters_all
2b2445b7
ER
369 ;;
370*)
371 cat <<USAGE
372Usage: $0 [OPTION]
373Options:
374 --decoders
375 --encoders
376 --parsers
377 --bsfs
378 --demuxers
379 --muxers
380 --protocols
16803cdb
ER
381 --hwaccels
382 --filters
2b2445b7
ER
383USAGE
384 exit 1;;
385esac
386
387exit 0
388EOF
389
9fc4ad22 390%build
05e1eb2f
JB
391# notes:
392# - it's not autoconf configure
d0a0ec26 393# - --disable-debug, --disable-optimizations, tune=generic causes not to override our optflags
2080d1d3 394./configure \
b4680d0b 395 --arch=%{_target_base_arch} \
539b540f 396 --prefix=%{_prefix} \
9cf4d8a4 397 --libdir=%{_libdir} \
d81dfa95 398 --shlibdir=%{_libdir} \
2a60eebe 399 --mandir=%{_mandir} \
84f92fbf 400 --extra-cflags="-D_GNU_SOURCE=1 %{rpmcppflags} %{rpmcflags}" \
1162803a 401 --extra-ldflags="%{rpmcflags} %{rpmldflags}" \
3eef5ddf 402 --cc="%{__cc}" \
126fb805
JB
403 --disable-debug \
404 --disable-optimizations \
6382c99d 405 --disable-stripping \
314ef0df 406 --enable-avfilter \
0797daec 407 --enable-avresample \
d5aef92e 408 --enable-gnutls \
126fb805 409 --enable-gpl \
0b43f655 410 --enable-version3 \
3dcb8642 411 --enable-fontconfig \
d7a39558 412 %{?with_frei0r:--enable-frei0r} \
5f3dc7d9 413 %{?with_ladspa:--enable-ladspa} \
2e585b44 414 %{?with_aacplus:--enable-libaacplus} \
d5aef92e 415 --enable-libass \
3dcb8642 416 --enable-libbluray \
2362253d 417 %{?with_caca:--enable-libcaca} \
cbdd2688 418 --enable-libcelt \
d5aef92e
JB
419 --enable-libcdio \
420 --enable-libdc1394 \
004e5628 421 %{?with_fdk_aac:--enable-libfdk-aac} \
1c1d1368 422 %{?with_flite:--enable-libflite} \
3dcb8642 423 --enable-libfreetype \
22745365 424 %{?with_gme:--enable-libgme} \
f3692243 425 --enable-libgsm \
1c1d1368 426 --enable-libiec61883 \
004e5628 427 %{?with_ilbc:--enable-libilbc} \
d5aef92e 428 --enable-libmodplug \
15c15700 429 --enable-libmp3lame \
4a927f9d 430 --enable-libnut \
cbdd2688
JB
431 --enable-libopencore-amrnb \
432 --enable-libopencore-amrwb \
192f9f57 433 %{?with_opencv:--enable-libopencv} \
cbdd2688 434 --enable-libopenjpeg \
1c1d1368 435 --enable-libopus \
d5aef92e 436 %{?with_pulseaudio:--enable-libpulse} \
22745365 437 %{?with_quvi:--enable-libquvi} \
cbdd2688 438 --enable-librtmp \
126fb805 439 --enable-libschroedinger \
f56b6dce 440 %{?with_shine:--enable-libshine} \
05408820 441 %{?with_soxr:--enable-libsoxr} \
da99dcf2 442 --enable-libspeex \
5f3dc7d9 443 %{?with_ssh:--enable-libssh} \
126fb805 444 --enable-libtheora \
1c1d1368 445 --enable-libtwolame \
daf9a670 446 %{?with_utvideo:--enable-libutvideo} \
d5aef92e 447 --enable-libv4l2 \
f56b6dce 448 %{?with_vidstab:--enable-libvidstab} \
5dc039cb
JB
449 --enable-libvo-aacenc \
450 --enable-libvo-amrwbenc \
126fb805 451 --enable-libvorbis \
64f8f109 452 %{?with_vpx:--enable-libvpx} \
22745365 453 %{?with_wavpack:--enable-libwavpack} \
ea09f25d 454 %{?with_x264:--enable-libx264} \
5dc039cb 455 --enable-libxavs \
126fb805 456 --enable-libxvid \
6a6b11be 457 %{?with_zmq:--enable-libzmq} \
5f3dc7d9 458 %{?with_zvbi:--enable-libzvbi} \
d5aef92e 459 %{?with_openal:--enable-openal} \
f56b6dce 460 %{?with_opencl:--enable-opencl} \
6382c99d 461 --enable-postproc \
d7493de8 462 --enable-pthreads \
9cf4d8a4 463 --enable-shared \
6382c99d 464 --enable-swscale \
22745365 465 %{!?with_va:--disable-vaapi} \
75231f25 466 --enable-x11grab \
7a286645 467%ifnarch %{ix86} %{x8664}
e1fe03f7 468 --disable-mmx \
469%endif
470%ifarch i386 i486
05e1eb2f 471 --disable-mmx \
b524cd99 472%endif
0b43f655 473%if %{with nonfree}
48610c64 474 --enable-nonfree \
0b43f655 475 --enable-libfaac \
76243dbd 476%endif
75231f25 477 --enable-runtime-cpudetect
2305d791 478
1ef27ea1
JB
479%{__make} \
480 V=1
9fc4ad22 481
b8c60172
ER
482# CC_O to add -c to commandline. makefile should be patched
483%{__make} tools/qt-faststart V=1 CC_O='-c -o $@'
484
9fc4ad22
AM
485%install
486rm -rf $RPM_BUILD_ROOT
38cf6de3 487install -d $RPM_BUILD_ROOT{%{_sysconfdir},%{_sbindir},/etc/{sysconfig,rc.d/init.d}} \
38baa0f1 488 $RPM_BUILD_ROOT%{_includedir}/ffmpeg \
38cf6de3 489 $RPM_BUILD_ROOT/var/{cache,log}/ffserver
9fc4ad22 490
a831ce58 491%{__make} install install-headers \
1ef27ea1
JB
492 DESTDIR=$RPM_BUILD_ROOT \
493 V=1
539b540f 494
a831ce58 495# install nonstandard, non-public headers manually
544421b2 496cp -a config.h $RPM_BUILD_ROOT%{_includedir}/ffmpeg
544421b2 497for a in libavutil/*/bswap.h; do
a831ce58 498 install -Dp $a $RPM_BUILD_ROOT%{_includedir}/$a
544421b2 499done
9d4f8977 500cp -a libavformat/riff.h $RPM_BUILD_ROOT%{_includedir}/libavformat
980e7aa8
JB
501# for lim-omx ffmpeg components
502cp -a libavcodec/audioconvert.h $RPM_BUILD_ROOT%{_includedir}/libavcodec
544421b2 503
b8c60172
ER
504install -p %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/ffserver
505cp -a %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/ffserver
506cp -a %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/ffserver.conf
539b540f 507mv -f $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/ffserver
b8c60172 508install -p tools/qt-faststart $RPM_BUILD_ROOT%{_bindir}
9fc4ad22 509
2b2445b7
ER
510# install as ffmpeg-avconfig to avoid with possible programs looking for
511# ffmpeg-config and expecting --libs output from it which is not implemented
512# simple to do (by querying pkgconfig), but why?
b8c60172 513install -p ffmpeg-avconfig $RPM_BUILD_ROOT%{_bindir}/ffmpeg-avconfig
2b2445b7 514
9fc4ad22
AM
515%clean
516rm -rf $RPM_BUILD_ROOT
517
1ef27ea1
JB
518%post libs -p /sbin/ldconfig
519%postun libs -p /sbin/ldconfig
539b540f 520
38cf6de3
ER
521%pre ffserver
522%groupadd -g 167 ffserver
523%useradd -g ffserver -u 167 ffserver
524
593d3a64
ER
525%post ffserver
526/sbin/chkconfig --add ffserver
527%service ffserver restart
528
38cf6de3 529%preun ffserver
593d3a64
ER
530if [ "$1" = 0 ]; then
531 %service ffserver stop
532 /sbin/chkconfig --del ffserver
533fi
534
38cf6de3
ER
535%postun ffserver
536if [ "$1" = 0 ]; then
537 %userremove ffserver
538 %groupremove ffserver
539fi
540
9fc4ad22
AM
541%files
542%defattr(644,root,root,755)
4b05ede1 543%doc CREDITS LICENSE MAINTAINERS README doc/{APIchanges,RELEASE_NOTES}
2a60eebe 544%attr(755,root,root) %{_bindir}/ffmpeg
3a7b84be 545%attr(755,root,root) %{_bindir}/ffprobe
b7313442 546%attr(755,root,root) %{_bindir}/qt-faststart
da99dcf2
AM
547%dir %{_datadir}/ffmpeg
548%{_datadir}/ffmpeg/*.ffpreset
714dcf83 549%{_datadir}/ffmpeg/ffprobe.xsd
28673856
JB
550%if %{with doc}
551%{_mandir}/man1/ffmpeg.1*
22745365 552%{_mandir}/man1/ffmpeg-all.1*
28673856
JB
553%{_mandir}/man1/ffmpeg-bitstream-filters.1*
554%{_mandir}/man1/ffmpeg-codecs.1*
555%{_mandir}/man1/ffmpeg-devices.1*
556%{_mandir}/man1/ffmpeg-filters.1*
557%{_mandir}/man1/ffmpeg-formats.1*
558%{_mandir}/man1/ffmpeg-protocols.1*
559%{_mandir}/man1/ffmpeg-resampler.1*
560%{_mandir}/man1/ffmpeg-scaler.1*
561%{_mandir}/man1/ffmpeg-utils.1*
562%{_mandir}/man1/ffprobe.1*
22745365 563%{_mandir}/man1/ffprobe-all.1*
28673856 564%endif
54ec280e
PG
565
566%files libs
567%defattr(644,root,root,755)
f50f7d7c 568%attr(755,root,root) %{_libdir}/libavcodec.so.*.*.*
22745365 569%attr(755,root,root) %ghost %{_libdir}/libavcodec.so.55
d0a0ec26 570%attr(755,root,root) %{_libdir}/libavdevice.so.*.*.*
22745365 571%attr(755,root,root) %ghost %{_libdir}/libavdevice.so.55
314ef0df 572%attr(755,root,root) %{_libdir}/libavfilter.so.*.*.*
1c1d1368 573%attr(755,root,root) %ghost %{_libdir}/libavfilter.so.3
f50f7d7c 574%attr(755,root,root) %{_libdir}/libavformat.so.*.*.*
22745365 575%attr(755,root,root) %ghost %{_libdir}/libavformat.so.55
5663f846 576%attr(755,root,root) %{_libdir}/libavresample.so.*.*.*
28673856 577%attr(755,root,root) %ghost %{_libdir}/libavresample.so.1
f50f7d7c 578%attr(755,root,root) %{_libdir}/libavutil.so.*.*.*
28673856 579%attr(755,root,root) %ghost %{_libdir}/libavutil.so.52
d7493de8 580%attr(755,root,root) %{_libdir}/libpostproc.so.*.*.*
714dcf83 581%attr(755,root,root) %ghost %{_libdir}/libpostproc.so.52
660918c5
AM
582%attr(755,root,root) %{_libdir}/libswresample.so.*.*.*
583%attr(755,root,root) %ghost %{_libdir}/libswresample.so.0
ee032235 584%attr(755,root,root) %{_libdir}/libswscale.so.*.*.*
cbdd2688 585%attr(755,root,root) %ghost %{_libdir}/libswscale.so.2
314ef0df 586
539b540f
JB
587%files devel
588%defattr(644,root,root,755)
54ec280e 589%doc doc/optimization.txt
1ef27ea1 590%attr(755,root,root) %{_bindir}/ffmpeg-avconfig
539b540f 591%attr(755,root,root) %{_libdir}/libavcodec.so
d0a0ec26 592%attr(755,root,root) %{_libdir}/libavdevice.so
314ef0df 593%attr(755,root,root) %{_libdir}/libavfilter.so
539b540f 594%attr(755,root,root) %{_libdir}/libavformat.so
5663f846 595%attr(755,root,root) %{_libdir}/libavresample.so
d7493de8 596%attr(755,root,root) %{_libdir}/libavutil.so
d2af4612 597%attr(755,root,root) %{_libdir}/libpostproc.so
660918c5 598%attr(755,root,root) %{_libdir}/libswresample.so
ee032235 599%attr(755,root,root) %{_libdir}/libswscale.so
539b540f 600%{_includedir}/ffmpeg
6382c99d
AM
601%{_includedir}/libavcodec
602%{_includedir}/libavdevice
314ef0df 603%{_includedir}/libavfilter
6382c99d 604%{_includedir}/libavformat
5663f846 605%{_includedir}/libavresample
6382c99d
AM
606%{_includedir}/libavutil
607%{_includedir}/libpostproc
660918c5 608%{_includedir}/libswresample
6382c99d 609%{_includedir}/libswscale
1ef27ea1
JB
610%{_pkgconfigdir}/libavcodec.pc
611%{_pkgconfigdir}/libavdevice.pc
612%{_pkgconfigdir}/libavfilter.pc
613%{_pkgconfigdir}/libavformat.pc
5663f846 614%{_pkgconfigdir}/libavresample.pc
1ef27ea1
JB
615%{_pkgconfigdir}/libavutil.pc
616%{_pkgconfigdir}/libpostproc.pc
660918c5 617%{_pkgconfigdir}/libswresample.pc
1ef27ea1 618%{_pkgconfigdir}/libswscale.pc
28673856
JB
619%if %{with doc}
620%{_mandir}/man3/libavcodec.3*
621%{_mandir}/man3/libavdevice.3*
622%{_mandir}/man3/libavfilter.3*
623%{_mandir}/man3/libavformat.3*
624%{_mandir}/man3/libavutil.3*
625%{_mandir}/man3/libswresample.3*
626%{_mandir}/man3/libswscale.3*
627%endif
539b540f 628
9cf4d8a4
JB
629%files static
630%defattr(644,root,root,755)
1ef27ea1
JB
631%{_libdir}/libavcodec.a
632%{_libdir}/libavdevice.a
633%{_libdir}/libavfilter.a
634%{_libdir}/libavformat.a
5663f846 635%{_libdir}/libavresample.a
1ef27ea1
JB
636%{_libdir}/libavutil.a
637%{_libdir}/libpostproc.a
660918c5 638%{_libdir}/libswresample.a
1ef27ea1 639%{_libdir}/libswscale.a
af49d6ab
JB
640
641%files ffplay
642%defattr(644,root,root,755)
643%attr(755,root,root) %{_bindir}/ffplay
22745365
JB
644%if %{with doc}
645%{_mandir}/man1/ffplay.1*
646%{_mandir}/man1/ffplay-all.1*
647%endif
af49d6ab 648
fde29260
ER
649%files ffserver
650%defattr(644,root,root,755)
651%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/ffserver.conf
652%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/ffserver
653%attr(755,root,root) %{_sbindir}/ffserver
654%attr(754,root,root) /etc/rc.d/init.d/ffserver
22745365
JB
655%if %{with doc}
656%{_mandir}/man1/ffserver.1*
657%{_mandir}/man1/ffserver-all.1*
658%endif
38cf6de3
ER
659%dir %attr(770,root,ffserver) /var/cache/ffserver
660%dir %attr(770,root,ffserver) /var/log/ffserver
4b05ede1
ER
661
662%if %{with doc}
663%files doc
664%defattr(644,root,root,755)
665%doc doc/*.html
666%endif
This page took 0.20382 seconds and 4 git commands to generate.