2 # How to deal with ffmpeg/opencv checken-egg problem:
3 # 1. make-request -r --with bootstrap ffmpeg.spec
4 # 2. make-request -r opencv.spec
5 # 3. bump release of ffmpeg.spec
6 # 4. make-request -r ffmpeg.spec
9 %bcond_with bootstrap # disable features to able to build without installed ffmpeg
10 %bcond_with nonfree # non free options of package (currently: faac, fdk_aac, nvenc)
11 %bcond_with fdk_aac # AAC de/encoding via libfdk_aac (requires nonfree)
12 %bcond_with faac # faac (requires nonfree)
13 %bcond_without bs2b # BS2B audio filter support
14 %bcond_without caca # textual display using libcaca
15 %bcond_without chromaprint # audio fingerprinting with chromaprint
16 %bcond_without dcadec # DCA decoding via libdcadec
17 %bcond_without decklink # Blackmagic DeskLink output support
18 %bcond_without flite # flite voice synthesis support
19 %bcond_without frei0r # frei0r video filtering
20 %bcond_without fribidi # fribidi support
21 %bcond_without gme # Game Music Emu support
22 %bcond_without ilbc # iLBC de/encoding via WebRTC libilbc
23 %bcond_without kvazaar # Kvazaar HEVC encoder support
24 %bcond_without ladspa # LADSPA audio filtering
25 %bcond_with mfx # MFX hardware acceleration support
26 %bcond_with nvenc # NVIDIA NVENC support (requires nonfree)
27 %bcond_without openal # OpenAL 1.1 capture support
28 %bcond_without opencl # OpenCL 1.2 code
29 %bcond_without opencv # OpenCV video filtering
30 %bcond_without opengl # OpenGL rendering support
31 %bcond_with openh264 # OpenH264 H.264 encoder
32 %bcond_without pulseaudio # PulseAudio input support
33 %bcond_without rubberband # rubberband filter
34 %bcond_without shine # shine fixed-point MP3 encoder
35 %bcond_without snappy # Snappy compression support (needed for hap encoding)
36 %bcond_without ssh # SFTP protocol support via libssh
37 %bcond_with smb # SMB support via libsmbclient
38 %bcond_without soxr # SoX Resampler support
39 %bcond_with tesseract # OCR filter based on Tesseract
40 %bcond_without x264 # H.264 x264 encoder
41 %bcond_without x265 # H.265/HEVC x265 encoder
42 %bcond_without utvideo # Ut Video decoder
43 %bcond_without va # VAAPI (Video Acceleration API)
44 %bcond_without vidstab # vid.stab video stabilization support
45 %bcond_without vpx # VP8, a high-quality video codec
46 %bcond_without wavpack # wavpack encoding support
47 %bcond_without webp # WebP encoding support
48 %bcond_without zimg # zscale filter based on z.lib
49 %bcond_without zmq # 0MQ message passing
50 %bcond_without zvbi # teletext via libzvbi
51 %bcond_without doc # don't build docs
52 %bcond_with tests # "make check" (some tests fail as of 2.5)
58 %ifnarch %{ix86} %{x8664} arm
64 Summary: FFmpeg - a very fast video and audio converter
65 Summary(pl.UTF-8): FFmpeg - szybki konwerter audio/wideo
69 # LGPL or GPL, chosen at configure time (GPL version is more featured)
70 # (postprocessing, some filters, x264, x265, xavs, xvid, x11grab)
71 # using v3 allows Apache-licensed libs (opencore-amr, libvo-*enc)
72 License: GPL v3+ with LGPL v3+ parts
73 Group: Applications/Multimedia
74 Source0: http://ffmpeg.org/releases/%{name}-%{version}.tar.xz
75 # Source0-md5: ef9b6634bb7c920efc940b4d55adf7b2
76 Source1: ffserver.init
77 Source2: ffserver.sysconfig
78 Source3: ffserver.conf
79 Patch0: %{name}-utvideo.patch
80 URL: http://www.ffmpeg.org/
81 %{?with_decklink:BuildRequires: Blackmagic_DeckLink_SDK}
82 %{?with_openal:BuildRequires: OpenAL-devel >= 1.1}
83 %{?with_opencl:BuildRequires: OpenCL-devel >= 1.2}
84 %{?with_opengl:BuildRequires: OpenGL-GLX-devel}
85 BuildRequires: SDL-devel >= 1.2.1
86 BuildRequires: alsa-lib-devel
87 BuildRequires: bzip2-devel
88 BuildRequires: celt-devel >= 0.11.0
89 %{?with_dcadec:BuildRequires: dcadec-devel >= 0.2.0}
90 %{?with_faac:BuildRequires: faac-devel}
91 %{?with_fdk_aac:BuildRequires: fdk-aac-devel}
92 %{?with_flite:BuildRequires: flite-devel >= 1.4}
93 BuildRequires: fontconfig-devel
94 BuildRequires: freetype-devel
95 %{?with_frei0r:BuildRequires: frei0r-devel}
96 %{?with_fribidi:BuildRequires: fribidi-devel}
97 %{?with_gme:BuildRequires: game-music-emu-devel}
99 # require version with altivec support fixed
100 BuildRequires: gcc >= 5:3.3.2-3
102 BuildRequires: gmp-devel
103 BuildRequires: gnutls-devel
104 BuildRequires: jack-audio-connection-kit-devel
105 %{?with_kvazaar:BuildRequires: kvazaar-devel >= 0.8.1}
106 %{?with_ladspa:BuildRequires: ladspa-devel}
107 BuildRequires: lame-libs-devel >= 3.98.3
108 BuildRequires: libass-devel
109 BuildRequires: libavc1394-devel
110 %{?with_bs2b:BuildRequires: libbs2b-devel}
111 BuildRequires: libbluray-devel
112 %{?with_caca:BuildRequires: libcaca-devel}
113 BuildRequires: libcdio-paranoia-devel >= 0.90-2
114 %{?with_chromaprint:BuildRequires: libchromaprint-devel}
115 BuildRequires: libdc1394-devel >= 2
116 BuildRequires: libgsm-devel
117 BuildRequires: libiec61883-devel
118 BuildRequires: libmodplug-devel
119 BuildRequires: libnut-devel
120 BuildRequires: libraw1394-devel >= 2
121 BuildRequires: librtmp-devel
122 %{?with_ssh:BuildRequires: libssh-devel}
123 %{?with_smb:BuildRequires: libsmbclient-devel}
124 BuildRequires: libtheora-devel >= 1.0-0.beta3
125 BuildRequires: libtool >= 2:1.4d-3
126 BuildRequires: libv4l-devel
127 %{?with_va:BuildRequires: libva-devel >= 1.0.3}
128 BuildRequires: libvdpau-devel >= 0.2
129 BuildRequires: libvorbis-devel
130 %{?with_vpx:BuildRequires: libvpx-devel >= 1.3.0}
131 %{?with_webp:BuildRequires: libwebp-devel >= 0.4.0}
133 %{?with_x264:BuildRequires: libx264-devel >= 0.1.3-1.20111212_2245}
135 %{?with_x265:BuildRequires: libx265-devel >= 1.3-0.20150610.1}
136 # libxcb xcb-shm xcb-xfixes xcb-shape
137 BuildRequires: libxcb-devel >= 1.4
138 %{?with_mfx:BuildRequires: mfx_dispatch-devel}
145 #%{?with_nvenc:BuildRequires: NVIDIA-NVENC-API}
146 BuildRequires: opencore-amr-devel
147 %{?with_opencv:BuildRequires: opencv-devel}
148 %{?with_openh264:BuildRequires: openh264-devel >= 1.3}
149 BuildRequires: openjpeg-devel >= 1.5
150 BuildRequires: opus-devel
151 BuildRequires: perl-Encode
152 BuildRequires: perl-tools-pod
153 BuildRequires: pkgconfig
154 %{?with_pulseaudio:BuildRequires: pulseaudio-devel}
155 BuildRequires: rpmbuild(macros) >= 1.470
156 %{?with_rubberband:BuildRequires: rubberband-devel >= 1.8.1}
157 BuildRequires: schroedinger-devel
158 %{?with_shine:BuildRequires: shine-devel >= 3.0.0}
159 %{?with_snappy:BuildRequires: snappy-devel}
160 %{?with_soxr:BuildRequires: soxr-devel}
161 BuildRequires: speex-devel >= 1:1.2-rc1
162 %{?with_tesseract:BuildRequires: tesseract-devel}
163 %{?with_doc:BuildRequires: tetex}
164 %{?with_doc:BuildRequires: texi2html}
165 %{?with_doc:BuildRequires: texinfo}
166 BuildRequires: twolame-devel
167 %{?with_utvideo:BuildRequires: utvideo-devel >= 15.4}
168 %{?with_vidstab:BuildRequires: vid.stab-devel >= 0.98}
169 BuildRequires: vo-amrwbenc-devel
170 %{?with_wavpack:BuildRequires: wavpack-devel}
171 %{?with_ilbc:BuildRequires: webrtc-libilbc-devel}
172 BuildRequires: xavs-devel
173 BuildRequires: xorg-lib-libX11-devel
174 BuildRequires: xorg-lib-libXext-devel
175 BuildRequires: xorg-lib-libXfixes-devel
176 BuildRequires: xvid-devel >= 1:1.1.0
178 %{?with_zmq:BuildRequires: zeromq-devel}
179 %{?with_zimg:BuildRequires: zimg-devel}
180 BuildRequires: zlib-devel
181 %{?with_zvbi:BuildRequires: zvbi-devel}
182 %{?with_autoreqdep:BuildConflicts: libpostproc}
183 # overflows maximum hash table size
184 BuildConflicts: pdksh < 5.2.14-57
185 Requires: %{name}-libs = %{version}-%{release}
186 %{?with_utvideo:Requires: utvideo >= 15.4}
187 %{?with_ilbc:Requires: webrtc-libilbc}
188 Requires: xvid >= 1:1.1.0
189 Obsoletes: libpostproc
190 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
192 %define _noautoreqdep libGL.so.1 libGLU.so.1
194 %define specflags -fno-strict-aliasing
196 # -fomit-frame-pointer is always needed on x86 due to lack of registers (-fPIC takes one)
197 %define specflags_ia32 -fomit-frame-pointer
198 # -mmmx is needed to enable <mmintrin.h> code.
199 %define specflags_i586 -mmmx
200 %define specflags_i686 -mmmx
201 %define specflags_ppc -fPIC
204 FFmpeg is a complete solution to record, convert and stream audio and
205 video. It is a command line tool to convert one video file format to
206 another. It also supports grabbing and encoding in real time from a TV
209 %description -l pl.UTF-8
210 FFmpeg to kompletne rozwiązanie nagrywania, konwersji i transmisji
211 strumieni dźwięku i obrazu. Jest to działające z linii poleceń
212 narzędzie do konwersji obrazu z jednego formatu do innego. Obsługuje
213 także przechwytywanie i kodowanie w czasie rzeczywistym z karty
217 Summary: ffmpeg libraries
218 Summary(pl.UTF-8): Biblioteki ffmpeg
220 %if "%(rpm -q --qf '%{V}' gnutls-devel)" >= "3.0.20"
221 # uses gnutls_certificate_set_x509_system_trust if >= 3.0.20
222 Requires: gnutls-libs >= 3.0.20
224 %{?with_vpx:Requires: libvpx >= 1.3.0}
225 %{?with_rubberband:Requires: rubberband-libs >= 1.8.1}
228 This package contains the ffmpeg shared libraries:
229 - the codec library (libavcodec). It supports most existing encoding
230 formats (MPEG, DivX, MPEG4, AC3, DV...),
231 - demuxer library (libavformat). It supports most existing file
232 formats (AVI, MPEG, OGG, Matroska, ASF...),
233 - video postprocessing library (libpostproc).
235 %description libs -l pl.UTF-8
236 Ten pakiet zawiera biblioteki współdzielone ffmpeg:
237 - bibliotekę kodeków (libavcodec); obsługuje większość istniejących
238 formatów kodowania (MPEG, DivX, MPEG4, AC3, DV...),
239 - bibliotekę demuksera (libavformat); obsługuje większość istniejących
240 formatów plików (AVI, MPEG, OGG, Matroska, ASF...),
241 - bibliotekę postprocessingu (libpostproc).
244 Summary: ffmpeg header files
245 Summary(pl.UTF-8): Pliki nagłówkowe ffmpeg
246 Group: Development/Libraries
247 Requires: %{name}-libs = %{version}-%{release}
248 # Libs.private from *.pc (unreasonably they are all the same)
249 %{?with_opencl:Requires: OpenCL-devel >= 1.2}
250 %{?with_opengl:Requires: OpenGL-devel}
251 Requires: SDL-devel >= 1.2.1
252 Requires: alsa-lib-devel
253 Requires: bzip2-devel
254 Requires: celt-devel >= 0.11.0
255 %{?with_dcadec:Requires: dcadec-devel >= 0.2.0}
256 %{?with_faac:Requires: faac-devel}
257 %{?with_fdk_aac:Requires: fdk-aac-devel}
258 %{?with_flite:Requires: flite-devel >= 1.4}
259 Requires: fontconfig-devel
260 Requires: freetype-devel
261 %{?with_fribidi:Requires: fribidi-devel}
262 %{?with_gme:Requires: game-music-emu-devel}
263 Requires: jack-audio-connection-kit-devel
264 %{?with_kvazaar:Requires: kvazaar-devel >= 0.7}
265 Requires: lame-libs-devel >= 3.98.3
266 Requires: libass-devel
267 Requires: libavc1394-devel
268 Requires: libbluray-devel
269 %{?with_bs2b:Requires: libbs2b-devel}
270 %{?with_caca:Requires: libcaca-devel}
271 Requires: libcdio-paranoia-devel >= 0.90-2
272 %{?with_chromaprint:Requires: libchromaprint-devel}
273 Requires: libdc1394-devel >= 2
274 Requires: libgsm-devel
275 Requires: libiec61883-devel
276 Requires: libmodplug-devel
277 Requires: libnut-devel
278 Requires: libraw1394-devel >= 2
279 Requires: librtmp-devel
280 %{?with_smb:Requires: libsmbclient-devel}
281 Requires: libtheora-devel >= 1.0-0.beta3
282 %{?with_va:Requires: libva-devel >= 1.0.3}
283 Requires: libvorbis-devel
284 %{?with_vpx:Requires: libvpx-devel >= 1.3.0}
285 %{?with_webp:Requires: libwebp-devel >= 0.4.0}
286 %{?with_x264:Requires: libx264-devel >= 0.1.3-1.20110625_2245}
287 %{?with_x265:Requires: libx265-devel >= 1.3-0.20150610.1}
288 %{?with_mfx:Requires: mfx_dispatch-devel}
289 Requires: opencore-amr-devel
290 %{?with_opencv:Requires: opencv-devel}
291 %{?with_openh264:Requires: openh264-devel >= 1.3}
292 Requires: openjpeg-devel >= 1.5
293 %{?with_rubberband:Requires: rubberband-devel >= 1.8.1}
294 Requires: schroedinger-devel
295 %{?with_shine:Requires: shine-devel >= 3.0.0}
296 %{?with_snappy:Requires: snappy-devel}
297 %{?with_soxr:Requires: soxr-devel}
298 Requires: speex-devel >= 1:1.2-rc1
299 %{?with_tesseract:Requires: tesseract-devel}
300 Requires: twolame-devel
301 %{?with_utvideo:Requires: utvideo-devel >= 15.4}
302 %{?with_vidstab:Requires: vid.stab-devel >= 0.98}
303 Requires: vo-amrwbenc-devel
304 %{?with_wavpack:Requires: wavpack-devel}
305 %{?with_ilbc:Requires: webrtc-libilbc-devel}
307 Requires: xorg-lib-libXext-devel
308 Requires: xorg-lib-libXfixes-devel
309 Requires: xvid-devel >= 1:1.1.0
310 %{?with_zmq:Requires: zeromq-devel}
311 %{?with_zimg:Requires: zimg-devel}
313 Obsoletes: libpostproc-devel
318 %description devel -l pl.UTF-8
319 Pliki nagłówkowe ffmpeg.
322 Summary: ffmpeg static libraries
323 Summary(pl.UTF-8): Statyczne biblioteki ffmpeg
324 Group: Development/Libraries
325 Requires: %{name}-devel = %{version}-%{release}
328 ffmpeg static libraries (libavcodec and libavformat).
330 %description static -l pl.UTF-8
331 Statyczne biblioteki ffmpeg (libavcodec i libavformat).
334 Summary: FFplay - SDL-based media player
335 Summary(pl.UTF-8): FFplay - odtwarzacz mediów oparty na SDL
336 Group: Applications/Multimedia
337 Requires: %{name}-libs = %{version}-%{release}
340 FFplay is a very simple and portable media player using the FFmpeg
341 libraries and the SDL library. It is mostly used as a test bench for
342 the various APIs of FFmpeg.
344 %description ffplay -l pl.UTF-8
345 FFplay to bardzo prosty i przenośny odtwarzacz mediów używający
346 bibliotek FFmpeg oraz biblioteki SDL. Jest używany głównie do
347 testowania różnych API FFmpeg.
350 Summary: FFserver video server
351 Summary(pl.UTF-8): FFserver - serwer strumieni obrazu
353 Requires(post,preun): /sbin/chkconfig
354 Requires: %{name}-libs = %{version}-%{release}
355 Requires: rc-scripts >= 0.4.0.10
357 %description ffserver
358 FFserver is a streaming server for both audio and video. It supports
359 several live feeds, streaming from files and time shifting on live
360 feeds (you can seek to positions in the past on each live feed,
361 provided you specify a big enough feed storage in ffserver.conf).
363 %description ffserver -l pl.UTF-8
364 FFserver to serwer strumieni dla dźwięku i obrazu. Obsługuje kilka
365 źródeł na żywo, przekazywanie strumieni z plików i przesuwanie w
366 czasie dla źródeł na żywo (można przeskakiwać na położenia w
367 przeszłości dla każdego źródła na żywo, pod warunkiem odpowiednio
368 dużej przestrzeni na dane skonfigurowanej w ffserver.conf).
371 Summary: FFmpeg documentation in HTML format
372 Summary(pl.UTF-8): Dokumentacja pakietu FFmpeg w formacie HTML
374 %if "%{_rpmversion}" >= "5"
379 FFmpeg documentation in HTML format.
381 %description doc -l pl.UTF-8
382 Dokumentacja pakietu FFmpeg w formacie HTML.
388 # package the grep result for mplayer, the result formatted as ./mplayer/configure
389 cat <<EOF > ffmpeg-avconfig
391 libavdecoders_all="$(sed -n 's/^[^#]*DEC.*(.*, *\(.*\)).*/\1_decoder/p' libavcodec/allcodecs.c | tr '[a-z]' '[A-Z]')"
392 libavencoders_all="$(sed -n 's/^[^#]*ENC.*(.*, *\(.*\)).*/\1_encoder/p' libavcodec/allcodecs.c | tr '[a-z]' '[A-Z]')"
393 libavparsers_all="$(sed -n 's/^[^#]*PARSER.*(.*, *\(.*\)).*/\1_parser/p' libavcodec/allcodecs.c | tr '[a-z]' '[A-Z]')"
394 libavbsfs_all="$(sed -n 's/^[^#]*BSF.*(.*, *\(.*\)).*/\1_bsf/p' libavcodec/allcodecs.c | tr '[a-z]' '[A-Z]')"
395 libavdemuxers_all="$(sed -n 's/^[^#]*DEMUX.*(.*, *\(.*\)).*/\1_demuxer/p' libavformat/allformats.c | tr '[a-z]' '[A-Z]')"
396 libavmuxers_all="$(sed -n 's/^[^#]*_MUX.*(.*, *\(.*\)).*/\1_muxer/p' libavformat/allformats.c | tr '[a-z]' '[A-Z]')"
397 libavprotocols_all="$(sed -n 's/^[^#]*PROTOCOL.*(.*, *\(.*\)).*/\1_protocol/p' libavformat/allformats.c | tr '[a-z]' '[A-Z]')"
398 libavhwaccels_all="$(sed -n 's/^[^#]*HWACCEL.*(.*, *\(.*\)).*/\1_hwaccel/p' libavcodec/allcodecs.c | tr '[a-z]' '[A-Z]')"
399 libavfilters_all="$(sed -n 's/^[^#]*FILTER.*(.*, *\(.*\),.*).*/\1_filter/p' libavfilter/allfilters.c | tr '[a-z]' '[A-Z]')"
401 cat <<'EOF' >> ffmpeg-avconfig
405 echo $libavdecoders_all
408 echo $libavencoders_all
411 echo $libavparsers_all
417 echo $libavdemuxers_all
420 echo $libavmuxers_all
423 echo $libavprotocols_all
426 echo $libavhwaccels_all
429 echo $libavfilters_all
453 # - it's not autoconf configure
454 # - --disable-debug, --disable-optimizations, tune=generic causes not to override our optflags
456 --arch=%{_target_base_arch} \
457 --prefix=%{_prefix} \
458 --libdir=%{_libdir} \
459 --shlibdir=%{_libdir} \
460 --mandir=%{_mandir} \
461 --extra-cflags="-D_GNU_SOURCE=1 %{rpmcppflags} %{rpmcflags}%{?with_decklink: -I/usr/include/decklink}" \
462 --extra-ldflags="%{rpmcflags} %{rpmldflags}" \
465 --disable-optimizations \
466 --disable-stripping \
467 %{!?with_doc:--disable-doc} \
469 --enable-avresample \
470 %{?with_chromaprint:--enable-chromaprint} \
471 %{?with_decklink:--enable-decklink} \
475 --enable-fontconfig \
476 %{?with_frei0r:--enable-frei0r} \
477 %{?with_ladspa:--enable-ladspa} \
480 %{?with_bs2b:--enable-libbs2b} \
481 %{?with_caca:--enable-libcaca} \
485 %{?with_dcadec:--enable-libdcadec} \
486 %{?with_flite:--enable-libflite} \
487 --enable-libfreetype \
488 %{?with_fribidi:--enable-libfribidi} \
489 %{?with_gme:--enable-libgme} \
491 --enable-libiec61883 \
492 %{?with_ilbc:--enable-libilbc} \
493 %{?with_kvazaar:--enable-libkvazaar} \
494 %{?with_mfx:--enable-libmfx} \
495 --enable-libmodplug \
496 --enable-libmp3lame \
498 --enable-libopencore-amrnb \
499 --enable-libopencore-amrwb \
500 %{?with_opencv:--enable-libopencv} \
501 %{?with_openh264:--enable-libopenh264} \
502 --enable-libopenjpeg \
504 %{?with_pulseaudio:--enable-libpulse} \
506 %{?with_rubberband:--enable-librubberband} \
507 --enable-libschroedinger \
508 %{?with_shine:--enable-libshine} \
509 %{?with_smb:--enable-libsmbclient} \
510 %{?with_snappy:--enable-libsnappy} \
511 %{?with_soxr:--enable-libsoxr} \
513 %{?with_ssh:--enable-libssh} \
514 %{?with_tesseract:--enable-libtesseract} \
516 --enable-libtwolame \
517 %{?with_utvideo:--enable-libutvideo} \
519 %{?with_vidstab:--enable-libvidstab} \
520 --enable-libvo-amrwbenc \
522 %{?with_vpx:--enable-libvpx} \
523 %{?with_wavpack:--enable-libwavpack} \
524 %{?with_webp:--enable-libwebp} \
525 %{?with_x264:--enable-libx264} \
526 %{?with_x265:--enable-libx265} \
529 %{?with_zimg:--enable-libzimg} \
530 %{?with_zmq:--enable-libzmq} \
531 %{?with_zvbi:--enable-libzvbi} \
532 %{?with_openal:--enable-openal} \
533 %{?with_opencl:--enable-opencl} \
534 %{?with_opengl:--enable-opengl} \
539 %{!?with_va:--disable-vaapi} \
541 %ifnarch %{ix86} %{x8664}
552 %{?with_faac:--enable-libfaac} \
553 %{?with_fdk_aac:--enable-libfdk-aac} \
554 %{?with_nvenc:--enable-nvenc} \
556 --enable-runtime-cpudetect
561 # CC_O to add -c to commandline. makefile should be patched
562 %{__make} tools/qt-faststart V=1 CC_O='-c -o $@'
564 %{?with_tests:%{__make} check V=1}
567 rm -rf $RPM_BUILD_ROOT
568 install -d $RPM_BUILD_ROOT{%{_sysconfdir},%{_sbindir},/etc/{sysconfig,rc.d/init.d}} \
569 $RPM_BUILD_ROOT%{_includedir}/ffmpeg \
570 $RPM_BUILD_ROOT/var/{cache,log}/ffserver
572 %{__make} install install-headers \
573 DESTDIR=$RPM_BUILD_ROOT \
576 # install nonstandard, non-public headers manually
577 cp -a config.h $RPM_BUILD_ROOT%{_includedir}/ffmpeg
578 for a in libavutil/*/{asm,bswap}.h; do
579 install -Dp $a $RPM_BUILD_ROOT%{_includedir}/$a
581 cp -a libavformat/riff.h $RPM_BUILD_ROOT%{_includedir}/libavformat
582 # for lim-omx ffmpeg components
583 cp -a libavcodec/audioconvert.h $RPM_BUILD_ROOT%{_includedir}/libavcodec
585 install -p %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/ffserver
586 cp -a %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/ffserver
587 cp -a %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/ffserver.conf
588 mv -f $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/ffserver
589 install -p tools/qt-faststart $RPM_BUILD_ROOT%{_bindir}
591 # install as ffmpeg-avconfig to avoid with possible programs looking for
592 # ffmpeg-config and expecting --libs output from it which is not implemented
593 # simple to do (by querying pkgconfig), but why?
594 install -p ffmpeg-avconfig $RPM_BUILD_ROOT%{_bindir}/ffmpeg-avconfig
596 # packaged as %doc in -doc
598 %{__rm} $RPM_BUILD_ROOT%{_docdir}/ffmpeg/*.html
601 install -d $RPM_BUILD_ROOT%{_examplesdir}
602 %{__mv} $RPM_BUILD_ROOT%{_datadir}/ffmpeg/examples $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
605 rm -rf $RPM_BUILD_ROOT
607 %post libs -p /sbin/ldconfig
608 %postun libs -p /sbin/ldconfig
611 %groupadd -g 167 ffserver
612 %useradd -g ffserver -u 167 ffserver
615 /sbin/chkconfig --add ffserver
616 %service ffserver restart
619 if [ "$1" = 0 ]; then
620 %service ffserver stop
621 /sbin/chkconfig --del ffserver
625 if [ "$1" = 0 ]; then
627 %groupremove ffserver
631 %defattr(644,root,root,755)
632 %doc CREDITS LICENSE.md MAINTAINERS README.md RELEASE_NOTES doc/APIchanges
633 %attr(755,root,root) %{_bindir}/ffmpeg
634 %attr(755,root,root) %{_bindir}/ffprobe
635 %attr(755,root,root) %{_bindir}/qt-faststart
636 %dir %{_datadir}/ffmpeg
637 %{_datadir}/ffmpeg/*.ffpreset
638 %{_datadir}/ffmpeg/ffprobe.xsd
640 %{_mandir}/man1/ffmpeg.1*
641 %{_mandir}/man1/ffmpeg-all.1*
642 %{_mandir}/man1/ffmpeg-bitstream-filters.1*
643 %{_mandir}/man1/ffmpeg-codecs.1*
644 %{_mandir}/man1/ffmpeg-devices.1*
645 %{_mandir}/man1/ffmpeg-filters.1*
646 %{_mandir}/man1/ffmpeg-formats.1*
647 %{_mandir}/man1/ffmpeg-protocols.1*
648 %{_mandir}/man1/ffmpeg-resampler.1*
649 %{_mandir}/man1/ffmpeg-scaler.1*
650 %{_mandir}/man1/ffmpeg-utils.1*
651 %{_mandir}/man1/ffprobe.1*
652 %{_mandir}/man1/ffprobe-all.1*
656 %defattr(644,root,root,755)
657 %attr(755,root,root) %{_libdir}/libavcodec.so.*.*.*
658 %attr(755,root,root) %ghost %{_libdir}/libavcodec.so.57
659 %attr(755,root,root) %{_libdir}/libavdevice.so.*.*.*
660 %attr(755,root,root) %ghost %{_libdir}/libavdevice.so.57
661 %attr(755,root,root) %{_libdir}/libavfilter.so.*.*.*
662 %attr(755,root,root) %ghost %{_libdir}/libavfilter.so.6
663 %attr(755,root,root) %{_libdir}/libavformat.so.*.*.*
664 %attr(755,root,root) %ghost %{_libdir}/libavformat.so.57
665 %attr(755,root,root) %{_libdir}/libavresample.so.*.*.*
666 %attr(755,root,root) %ghost %{_libdir}/libavresample.so.3
667 %attr(755,root,root) %{_libdir}/libavutil.so.*.*.*
668 %attr(755,root,root) %ghost %{_libdir}/libavutil.so.55
669 %attr(755,root,root) %{_libdir}/libpostproc.so.*.*.*
670 %attr(755,root,root) %ghost %{_libdir}/libpostproc.so.54
671 %attr(755,root,root) %{_libdir}/libswresample.so.*.*.*
672 %attr(755,root,root) %ghost %{_libdir}/libswresample.so.2
673 %attr(755,root,root) %{_libdir}/libswscale.so.*.*.*
674 %attr(755,root,root) %ghost %{_libdir}/libswscale.so.4
677 %defattr(644,root,root,755)
678 %doc doc/optimization.txt
679 %attr(755,root,root) %{_bindir}/ffmpeg-avconfig
680 %attr(755,root,root) %{_libdir}/libavcodec.so
681 %attr(755,root,root) %{_libdir}/libavdevice.so
682 %attr(755,root,root) %{_libdir}/libavfilter.so
683 %attr(755,root,root) %{_libdir}/libavformat.so
684 %attr(755,root,root) %{_libdir}/libavresample.so
685 %attr(755,root,root) %{_libdir}/libavutil.so
686 %attr(755,root,root) %{_libdir}/libpostproc.so
687 %attr(755,root,root) %{_libdir}/libswresample.so
688 %attr(755,root,root) %{_libdir}/libswscale.so
689 %{_includedir}/ffmpeg
690 %{_includedir}/libavcodec
691 %{_includedir}/libavdevice
692 %{_includedir}/libavfilter
693 %{_includedir}/libavformat
694 %{_includedir}/libavresample
695 %{_includedir}/libavutil
696 %{_includedir}/libpostproc
697 %{_includedir}/libswresample
698 %{_includedir}/libswscale
699 %{_pkgconfigdir}/libavcodec.pc
700 %{_pkgconfigdir}/libavdevice.pc
701 %{_pkgconfigdir}/libavfilter.pc
702 %{_pkgconfigdir}/libavformat.pc
703 %{_pkgconfigdir}/libavresample.pc
704 %{_pkgconfigdir}/libavutil.pc
705 %{_pkgconfigdir}/libpostproc.pc
706 %{_pkgconfigdir}/libswresample.pc
707 %{_pkgconfigdir}/libswscale.pc
709 %{_mandir}/man3/libavcodec.3*
710 %{_mandir}/man3/libavdevice.3*
711 %{_mandir}/man3/libavfilter.3*
712 %{_mandir}/man3/libavformat.3*
713 %{_mandir}/man3/libavutil.3*
714 %{_mandir}/man3/libswresample.3*
715 %{_mandir}/man3/libswscale.3*
717 %{_examplesdir}/%{name}-%{version}
720 %defattr(644,root,root,755)
721 %{_libdir}/libavcodec.a
722 %{_libdir}/libavdevice.a
723 %{_libdir}/libavfilter.a
724 %{_libdir}/libavformat.a
725 %{_libdir}/libavresample.a
726 %{_libdir}/libavutil.a
727 %{_libdir}/libpostproc.a
728 %{_libdir}/libswresample.a
729 %{_libdir}/libswscale.a
732 %defattr(644,root,root,755)
733 %attr(755,root,root) %{_bindir}/ffplay
735 %{_mandir}/man1/ffplay.1*
736 %{_mandir}/man1/ffplay-all.1*
740 %defattr(644,root,root,755)
741 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/ffserver.conf
742 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/ffserver
743 %attr(755,root,root) %{_sbindir}/ffserver
744 %attr(754,root,root) /etc/rc.d/init.d/ffserver
746 %{_mandir}/man1/ffserver.1*
747 %{_mandir}/man1/ffserver-all.1*
749 %dir %attr(770,root,ffserver) /var/cache/ffserver
750 %dir %attr(770,root,ffserver) /var/log/ffserver
754 %defattr(644,root,root,755)