]> git.pld-linux.org Git - packages/ffmpeg.git/blob - ffmpeg.spec
- add fix for building with binutils 2.41
[packages/ffmpeg.git] / ffmpeg.spec
1 # TODO:
2 # - libopenvino
3 # - libtensorflow [-ltensorflow tensorflow/c/c_api.h]
4 # - AMF >= 1.4.9.0 (available at https://github.com/GPUOpen-LibrariesAndSDKs/AMF, where is original source?)
5 #
6 # How to deal with ffmpeg/opencv/chromaprint checken-egg problem:
7 #       1. make-request -r --with bootstrap ffmpeg.spec
8 #       2  bump release of opencv.spec and chromaprint.spec
9 #       3. make-request -r opencv.spec chromaprint.spec
10 #       4. bump release of ffmpeg.spec
11 #       5. make-request -r ffmpeg.spec
12 #
13 # Conditional build:
14 %bcond_with     bootstrap       # disable features to able to build without installed ffmpeg
15 %bcond_with     nonfree         # unblock non free options of package (currently: cuda_nvcc, decklib, fdk_aac, npp, openssl, libressl/libtls)
16 %bcond_without  amr             # AMR-NB/WB de/encoding via libopencore-amrnb/wb
17 %bcond_without  aom             # AV1 viden de/encoding via libaom
18 %bcond_without  aribb24         # ARIB text and caption decoding via libaribb24
19 %bcond_without  avresample      # Don' build deprecated libavresample library
20 %bcond_without  avs             # AVS encoding via xavs
21 %bcond_without  avs2            # AVS2 de/encoding via libdavs2/libxavs2
22 %bcond_without  bs2b            # BS2B audio filter support
23 %bcond_without  caca            # textual display using libcaca
24 %bcond_without  codec2          # codec2 support using libcodec2
25 %bcond_without  chromaprint     # audio fingerprinting with chromaprint
26 %bcond_with     cudasdk         # NVIDIA CUDA code using nvcc from CUDA SDK [BR: cuda.h, non-free]
27 %bcond_with     dav1d           # AV1 decoding via libdav1d
28 %bcond_without  dc1394          # IIDC-1394 grabbing using libdc1394
29 %bcond_with     decklink        # Blackmagic DeckLink I/O support (requires nonfree)
30 %bcond_with     fdk_aac         # AAC de/encoding via libfdk_aac (requires nonfree)
31 %bcond_without  ffnvcodec       # NVIDIA codecs support using ffnvcodec headers (covered: cuda cuvid nvdec nvenc)
32 %bcond_without  flite           # flite voice synthesis support
33 %bcond_without  frei0r          # frei0r video filtering
34 %bcond_without  fribidi         # fribidi support
35 %bcond_without  glslang         # GLSL->SPIRV compilation via libglslang
36 %bcond_without  gme             # Game Music Emu support
37 %bcond_without  gsm             # GSM de/encoding via libgsm
38 %bcond_without  iec61883        # ec61883 via libiec61883
39 %bcond_without  ilbc            # iLBC de/encoding via WebRTC libilbc
40 %bcond_without  kvazaar         # Kvazaar HEVC encoder support
41 %bcond_without  ladspa          # LADSPA audio filtering
42 %bcond_with     lensfun         # lensfun lens correction
43 %bcond_with     libdrm          # Linux Direct Rendering Manager code
44 %bcond_with     libklvanc       # Kernel Labs VANC processing (in decklink driver)
45 %bcond_without  libmysofa       # sofalizer filter
46 %bcond_without  librist         # RIST support via librist
47 %bcond_with     librsvg         # SVG rasterization via librsvg
48 %bcond_with     libxml2         # XML parsing using libxml2
49 %bcond_without  lv2             # LV2 audio filtering
50 %bcond_with     mfx             # MFX hardware acceleration support
51 %bcond_without  modplug         # ModPlug via libmodplug
52 %bcond_with     npp             # NVIDIA Performance Primitives-based code (requires nonfree) [BR: libnppc+libnppi, npp.h]
53 %bcond_without  omx             # OpenMAX IL support
54 %bcond_without  openal          # OpenAL 1.1 capture support
55 %bcond_without  opencl          # OpenCL 1.2 code
56 %bcond_without  opencv          # OpenCV video filtering
57 %bcond_without  opengl          # OpenGL rendering support
58 %bcond_with     openh264        # OpenH264 H.264 encoder
59 %bcond_without  openmpt         # OpenMPT module decoder
60 %bcond_with     pocketsphinx    # asr filter using PocketSphinx
61 %bcond_without  pulseaudio      # PulseAudio input support
62 %bcond_without  rabbitmq        # RabbitMQ support
63 %bcond_with     rav1e           # AV1 encoding using rav1e
64 %bcond_with     rkmpp           # Rockchip Media Process Platform code [implies libdrm]
65 %bcond_without  rubberband      # rubberband filter
66 %bcond_without  shine           # shine fixed-point MP3 encoder
67 %bcond_with     smb             # SMB support via libsmbclient
68 %bcond_without  snappy          # Snappy compression support (needed for hap encoding)
69 %bcond_without  soxr            # SoX Resampler support
70 %bcond_without  srt             # Haivision SRT protocol support
71 %bcond_without  ssh             # SFTP protocol support via libssh
72 %bcond_with     svtav1          # AV1 encoding via SVT-AV1
73 %bcond_with     tesseract       # OCR filter based on Tesseract
74 %bcond_without  theora          # Theora encoding via libtheora
75 %bcond_with     uavs3d          # AVS3 decoding via libuavs3d (TODO: enable when 1.1.41 released)
76 %bcond_with     v4l2_drmprime   # Zero-copy v4l2 decoding
77 %bcond_with     v4l2_request    # V4L2 request API for stateless hw decoding
78 %bcond_without  va              # VAAPI (Video Acceleration API)
79 %bcond_without  vapoursynth     # VapourSynth demuxer
80 %bcond_without  vidstab         # vid.stab video stabilization support
81 %bcond_without  vmaf            # VMAF filter support
82 %bcond_without  voamrwbenc      # MR-WB encoding via libvo-amrwbenc
83 %bcond_without  vpx             # VP8, a high-quality video codec
84 %bcond_without  vulkan          # Vulkan code
85 %bcond_without  webp            # WebP encoding support
86 %bcond_without  x264            # H.264 x264 encoder
87 %bcond_without  x265            # H.265/HEVC x265 encoder
88 %bcond_without  xvid            # vid encoding via xvidcore
89 %bcond_without  zimg            # zscale filter based on z.lib
90 %bcond_without  zmq             # 0MQ message passing
91 %bcond_without  zvbi            # teletext via libzvbi
92 %bcond_without  doc             # don't build docs
93 %bcond_with     tests           # "make check" (some tests fail as of 2.5)
94
95 %if %{with bootstrap}
96 %undefine       with_opencv
97 %undefine       with_chromaprint
98 %endif
99 %if %{with rkmpp} || %{with v4l2_request} || %{with v4l2_drmprime}
100 %define         with_libdrm     1
101 %endif
102
103 %ifnarch %{ix86} %{x8664}
104 %undefine       with_ffnvcodec
105 %endif
106 %ifnarch %{ix86} %{x8664} aarch64
107 %undefine       with_rav1e
108 %endif
109 %ifnarch %{ix86} %{x8664} %{arm}
110 %undefine       with_x265
111 %endif
112 %ifarch i386 i486
113 %undefine       with_x265
114 %endif
115 %ifarch i686 pentium4 athlon %{x8664} x32
116 %define         with_crystalhd  1
117 %endif
118 Summary:        FFmpeg - a very fast video and audio converter
119 Summary(pl.UTF-8):      FFmpeg - szybki konwerter audio/wideo
120 Name:           ffmpeg
121 Version:        4.4.4
122 Release:        2.2
123 # LGPL or GPL, chosen at configure time (GPL version is more featured)
124 # GPL: frei0r libcdio libdavs2 rubberband vidstab x264 x265 xavs xavs2 xvid
125 # v3 (allows *GPLv3 or Apache-licensed libs): gmp lensfun opencore-amr vmaf vo-*enc rkmpp
126 # GPLv3: smbclient
127 License:        GPL v3+ with LGPL v3+ parts
128 Group:          Applications/Multimedia
129 Source0:        https://ffmpeg.org/releases/%{name}-%{version}.tar.xz
130 # Source0-md5:  cce7aaaed2b4c202999a8d79a69f3ecc
131 Patch0:         %{name}-omx-libnames.patch
132 Patch1:         %{name}-atadenoise.patch
133 Patch2:         opencv4.patch
134 Patch3:         v4l2-request-hwdec.patch
135 Patch4:         %{name}-glslang.patch
136 Patch5:         v4l2-drmprime.patch
137 Patch6:         binutils2.41.patch
138 URL:            http://www.ffmpeg.org/
139 %{?with_decklink:BuildRequires: Blackmagic_DeckLink_SDK >= 10.10}
140 %{?with_openal:BuildRequires:   OpenAL-devel >= 1.1}
141 %{?with_opencl:BuildRequires:   OpenCL-devel >= 1.2}
142 %{?with_opengl:BuildRequires:   OpenGL-GLX-devel}
143 # libomxil-bellagio-devel or limoi-core-devel (just headers, library is dlopened at runtime)
144 %{?with_omx:BuildRequires:      OpenMAX-IL-devel}
145 BuildRequires:  SDL2-devel >= 2.0.1
146 BuildRequires:  SDL2-devel < 3.0.0
147 %{?with_vulkan:BuildRequires:   Vulkan-Loader-devel >= 1.1.97}
148 BuildRequires:  alsa-lib-devel
149 %{?with_aom:BuildRequires:      aom-devel >= 1.0.0}
150 %{?with_aribb24:BuildRequires:  aribb24-devel}
151 BuildRequires:  bzip2-devel
152 BuildRequires:  celt-devel >= 0.11.0
153 %{?with_codec2:BuildRequires:   codec2-devel}
154 %{?with_dav1d:BuildRequires:    dav1d-devel >= 0.5.0}
155 %{?with_avs2:BuildRequires:     davs2-devel >= 1.6}
156 %{?with_fdk_aac:BuildRequires:  fdk-aac-devel}
157 %{?with_flite:BuildRequires:    flite-devel >= 1.4}
158 BuildRequires:  fontconfig-devel
159 BuildRequires:  freetype-devel
160 %{?with_frei0r:BuildRequires:   frei0r-devel}
161 %{?with_fribidi:BuildRequires:  fribidi-devel}
162 %{?with_gme:BuildRequires:      game-music-emu-devel}
163 %ifarch ppc
164 # require version with altivec support fixed
165 BuildRequires:  gcc >= 5:3.3.2-3
166 %endif
167 %{?with_glslang:BuildRequires:  glslang-devel >= 12}
168 BuildRequires:  gmp-devel
169 BuildRequires:  gnutls-devel
170 BuildRequires:  jack-audio-connection-kit-devel
171 %{?with_kvazaar:BuildRequires:  kvazaar-devel >= 0.8.1}
172 %{?with_ladspa:BuildRequires:   ladspa-devel}
173 BuildRequires:  lame-libs-devel >= 3.98.3
174 %{?with_lensfun:BuildRequires:  lensfun-devel >= 0.3.95}
175 BuildRequires:  libass-devel
176 %ifarch %{armv6}
177 BuildRequires:  libatomic-devel
178 %endif
179 %{?with_iec61883:BuildRequires: libavc1394-devel}
180 %{?with_bs2b:BuildRequires:     libbs2b-devel}
181 BuildRequires:  libbluray-devel
182 %{?with_caca:BuildRequires:     libcaca-devel}
183 BuildRequires:  libcdio-paranoia-devel >= 0.90-2
184 %{?with_chromaprint:BuildRequires:      libchromaprint-devel}
185 %{?with_crystalhd:BuildRequires:        libcrystalhd-devel}
186 %{?with_dc1394:BuildRequires:   libdc1394-devel >= 2}
187 %{?with_libdrm:BuildRequires:   libdrm-devel}
188 %{?with_gsm:BuildRequires:      libgsm-devel}
189 %{?with_iec61883:BuildRequires: libiec61883-devel}
190 %{?with_libklvanc:BuildRequires:        libklvanc-devel}
191 %{?with_modplug:BuildRequires:  libmodplug-devel}
192 %{?with_libmysofa:BuildRequires:        libmysofa-devel >= 0.7}
193 %{?with_openmpt:BuildRequires: libopenmpt-devel >= 0.4.5}
194 %if %{with dc1394} || %{with iec61883}
195 BuildRequires:  libraw1394-devel >= 2
196 %endif
197 %{?with_librist:BuildRequires:  librist-devel >= 0.2}
198 %{?with_librsvg:BuildRequires:  librsvg-devel >= 2}
199 BuildRequires:  librtmp-devel
200 %{?with_ssh:BuildRequires:      libssh-devel}
201 %{?with_smb:BuildRequires:      libsmbclient-devel}
202 %{?with_theora:BuildRequires:   libtheora-devel >= 1.0-0.beta3}
203 BuildRequires:  libtool >= 2:1.4d-3
204 BuildRequires:  libv4l-devel
205 %if %{with va}
206 BuildRequires:  libva-devel >= 1.0.3
207 BuildRequires:  libva-drm-devel >= 1.0.3
208 BuildRequires:  libva-x11-devel >= 1.0.3
209 %endif
210 BuildRequires:  libvdpau-devel >= 1.3
211 BuildRequires:  libvorbis-devel
212 %{?with_vpx:BuildRequires:      libvpx-devel >= 1.4.0}
213 %{?with_webp:BuildRequires:     libwebp-devel >= 0.4.0}
214 # X264_BUILD >= 118
215 %{?with_x264:BuildRequires:     libx264-devel >= 0.1.3-1.20111212_2245}
216 # X265_BUILD >= 70
217 %{?with_x265:BuildRequires:     libx265-devel >= 1.9}
218 # libxcb xcb-shm xcb-xfixes xcb-shape
219 BuildRequires:  libxcb-devel >= 1.4
220 %{?with_libxml2:BuildRequires:  libxml2-devel >= 2}
221 %{?with_lv2:BuildRequires:      lilv-devel}
222 %{?with_v4l2_request:BuildRequires:     linux-libc-headers >= 7:6.0.0}
223 %{?with_lv2:BuildRequires:      lv2-devel}
224 %{?with_mfx:BuildRequires:      mfx_dispatch-devel >= 1.19}
225 %ifarch %{ix86}
226 %ifnarch i386 i486
227 BuildRequires:  nasm
228 %endif
229 %endif
230 %{?with_ffnvcodec:BuildRequires:        nv-codec-headers >= 9.1.23.1}
231 # amrnb,amrwb
232 %{?with_amr:BuildRequires:      opencore-amr-devel}
233 %{?with_opencv:BuildRequires:   opencv-devel >= 2}
234 %{?with_openh264:BuildRequires: openh264-devel >= 1.3}
235 BuildRequires:  openjpeg2-devel >= 2.1
236 BuildRequires:  opus-devel
237 BuildRequires:  perl-Encode
238 BuildRequires:  perl-tools-pod
239 %{?with_pocketsphinx:BuildRequires:     pocketsphinx-devel > 0.8}
240 BuildRequires:  pkgconfig
241 %{?with_pulseaudio:BuildRequires:       pulseaudio-devel}
242 %{?with_rabbitmq:BuildRequires: rabbitmq-c-devel >= 0.7.1}
243 %{?with_rav1e:BuildRequires:    rav1e-devel >= 0.4.0}
244 %{?with_rkmpp:BuildRequires:    rockchip-mpp-devel >= 1.3.7}
245 BuildRequires:  rpm-build >= 4.6
246 BuildRequires:  rpmbuild(macros) >= 2.007
247 %{?with_rubberband:BuildRequires:       rubberband-devel >= 1.8.1}
248 %{?with_shine:BuildRequires:    shine-devel >= 3.0.0}
249 %{?with_snappy:BuildRequires:   snappy-devel}
250 %{?with_soxr:BuildRequires:     soxr-devel}
251 BuildRequires:  speex-devel >= 1:1.2-rc1
252 %{?with_glslang:BuildRequires:  spirv-tools-devel}
253 %{?with_srt:BuildRequires:      srt-devel >= 1.3}
254 %{?with_svtav1:BuildRequires:   svt-av1-devel >= 0.8.4}
255 BuildRequires:  tar >= 1:1.22
256 %{?with_tesseract:BuildRequires:        tesseract-devel}
257 %{?with_doc:BuildRequires:      tetex}
258 %{?with_doc:BuildRequires:      texi2html}
259 %{?with_doc:BuildRequires:      texinfo}
260 BuildRequires:  twolame-devel >= 0.3.10
261 %{?with_uavs3d:BuildRequires:   uavs3d-devel >= 1.1.41}
262 %{?with_v4l2_request:BuildRequires:     udev-devel}
263 %{?with_vapoursynth:BuildRequires:      vapoursynth-devel >= 42}
264 %{?with_vidstab:BuildRequires:  vid.stab-devel >= 0.98}
265 %{?with_vmaf:BuildRequires:     vmaf-devel >= 1.5.2}
266 %{?with_voamrwbenc:BuildRequires:       vo-amrwbenc-devel}
267 %{?with_ilbc:BuildRequires:     webrtc-libilbc-devel}
268 %{?with_avs:BuildRequires:      xavs-devel}
269 %{?with_avs2:BuildRequires:     xavs2-devel >= 1.3}
270 BuildRequires:  xorg-lib-libX11-devel
271 BuildRequires:  xorg-lib-libXext-devel
272 BuildRequires:  xorg-lib-libXv-devel
273 %{?with_xvid:BuildRequires:     xvid-devel >= 1:1.1.0}
274 BuildRequires:  xz
275 BuildRequires:  xz-devel
276 %{?with_zmq:BuildRequires:      zeromq-devel >= 4.2.1}
277 %{?with_zimg:BuildRequires:     zimg-devel >= 2.7.0}
278 BuildRequires:  zlib-devel
279 %{?with_zvbi:BuildRequires:     zvbi-devel >= 0.2.28}
280 # overflows maximum hash table size
281 BuildConflicts: pdksh < 5.2.14-57
282 Requires:       %{name}-libs = %{version}-%{release}
283 Suggests:       fontconfig
284 Suggests:       fonts-TTF-Roboto
285 Obsoletes:      libpostproc < 2:1.0-1
286 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
287
288 %define         specflags       -fno-strict-aliasing -fPIC
289
290 # -fomit-frame-pointer is always needed on x86 due to lack of registers (-fPIC takes one)
291 %define         specflags_ia32  -fomit-frame-pointer
292 # -mmmx is needed to enable <mmintrin.h> code.
293 %define         specflags_i586  -mmmx
294 %define         specflags_i686  -mmmx
295
296 %description
297 FFmpeg is a complete solution to record, convert and stream audio and
298 video. It is a command line tool to convert one video file format to
299 another. It also supports grabbing and encoding in real time from a TV
300 card.
301
302 %description -l pl.UTF-8
303 FFmpeg to kompletne rozwiÄ…zanie nagrywania, konwersji i transmisji
304 strumieni dźwiÄ™ku i obrazu. Jest to dziaÅ‚ajÄ…ce z linii poleceÅ„
305 narzÄ™dzie do konwersji obrazu z jednego formatu do innego. ObsÅ‚uguje
306 także przechwytywanie i kodowanie w czasie rzeczywistym z karty
307 telewizyjnej.
308
309 %package libs
310 Summary:        ffmpeg libraries
311 Summary(pl.UTF-8):      Biblioteki ffmpeg
312 Group:          Libraries
313 Requires:       SDL2 >= 2.0.1
314 %{?with_vulkan:Requires:        Vulkan-Loader >= 1.1.97}
315 %{?with_aom:Requires:   aom >= 1.0.0}
316 Requires:       celt >= 0.11.0
317 %{?with_dav1d:Requires: dav1d >= 0.5.0}
318 %{?with_avs2:Requires:  davs2 >= 1.6}
319 %{?with_flite:Requires: flite >= 1.4}
320 %if "%(rpm -q --qf '%{V}' gnutls-devel)" >= "3.0.20"
321 # uses gnutls_certificate_set_x509_system_trust if >= 3.0.20
322 Requires:       gnutls-libs >= 3.0.20
323 %endif
324 %{?with_kvazaar:Requires:       kvazaar-libs >= 0.8.1}
325 %{?with_libmysofa:Requires:     libmysofa >= 0.7}
326 %{?with_openmpt:Requires: libopenmpt >= 0.4.5}
327 %{?with_librist:Requires:       librist >= 0.2}
328 %{?with_theora:Requires:        libtheora >= 1.0-0.beta3}
329 %if %{with va}
330 Requires:       libva >= 1.0.3
331 Requires:       libva-drm >= 1.0.3
332 Requires:       libva-x11 >= 1.0.3
333 %endif
334 Requires:       libvdpau >= 1.3
335 %{?with_vpx:Requires:   libvpx >= 1.4.0}
336 %{?with_webp:Requires:  libwebp >= 0.4.0}
337 %{?with_x264:Requires:  libx264 >= 0.1.3-1.20111212_2245}
338 %{?with_x265:Requires:  libx265 >= 1.9}
339 Requires:       libxcb >= 1.4
340 Requires:       lame-libs >= 3.98.3
341 %{?with_mfx:Requires:   mfx_dispatch >= 1.19}
342 %{?with_openh264:Requires:      openh264 >= 1.3}
343 Requires:       openjpeg2 >= 2.1
344 %{?with_rabbitmq:Requires:      rabbitmq-c >= 0.7.1}
345 %{?with_rav1e:Requires: rav1e-libs >= 0.4.0}
346 %{?with_rkmpp:Requires: rockchip-mpp >= 1.3.7}
347 %{?with_rubberband:Requires:    rubberband-libs >= 1.8.1}
348 %{?with_shine:Requires: shine >= 3.0.0}
349 Requires:       speex >= 1:1.2-rc1
350 %{?with_srt:Requires:   srt >= 1.3}
351 %{?with_svtav1:Requires:        svt-av1 >= 0.8.4}
352 Requires:       twolame-libs >= 0.3.10
353 %{?with_uavs3d:Requires:        uavs3d >= 1.1.41}
354 %{?with_vapoursynth:Requires:   vapoursynth >= 42}
355 %{?with_vidstab:Requires:       vid.stab >= 0.98}
356 %{?with_vmaf:Requires:  vmaf-libs >= 1.5.2}
357 %{?with_avs2:Requires:  xavs2 >= 1.3}
358 %{?with_xvid:Requires:  xvid >= 1:1.1.0}
359 %{?with_zmq:Requires:   zeromq >= 4.2.1}
360 %{?with_zimg:Requires:  zimg >= 2.7.0}
361 %{?with_zvbi:Requires:  zvbi >= 0.2.28}
362
363 %description libs
364 This package contains the ffmpeg shared libraries:
365 - the codec library (libavcodec). It supports most existing encoding
366   formats (MPEG, DivX, MPEG4, AC3, DV...),
367 - demuxer library (libavformat). It supports most existing file
368   formats (AVI, MPEG, OGG, Matroska, ASF...),
369 - video postprocessing library (libpostproc).
370
371 %description libs -l pl.UTF-8
372 Ten pakiet zawiera biblioteki współdzielone ffmpeg:
373 - bibliotekÄ™ kodeków (libavcodec); obsÅ‚uguje wiÄ™kszość istniejÄ…cych
374   formatów kodowania (MPEG, DivX, MPEG4, AC3, DV...),
375 - bibliotekÄ™ demuksera (libavformat); obsÅ‚uguje wiÄ™kszość istniejÄ…cych
376   formatów plików (AVI, MPEG, OGG, Matroska, ASF...),
377 - bibliotekÄ™ postprocessingu (libpostproc).
378
379 %package devel
380 Summary:        ffmpeg header files
381 Summary(pl.UTF-8):      Pliki nagłówkowe ffmpeg
382 Group:          Development/Libraries
383 Requires:       %{name}-libs = %{version}-%{release}
384 # Libs.private from *.pc
385 %{?with_openal:Requires:        OpenAL-devel >= 1.1}
386 %{?with_opencl:Requires:        OpenCL-devel >= 1.2}
387 %{?with_opengl:Requires:        OpenGL-devel}
388 %{?with_vulkan:Requires:        Vulkan-Loader-devel >= 1.1.97}
389 Requires:       SDL2-devel >= 2.0.1
390 Requires:       alsa-lib-devel
391 %{?with_aom:Requires:   aom-devel >= 1.0.0}
392 %{?with_aribb24:Requires:       aribb24-devel}
393 %{?with_avs2:Requires:  davs2-devel >= 1.6}
394 Requires:       bzip2-devel
395 Requires:       celt-devel >= 0.11.0
396 %{?with_codec2:Requires:        codec2-devel}
397 %{?with_dav1d:Requires: dav1d-devel >= 0.5.0}
398 %{?with_fdk_aac:Requires:       fdk-aac-devel}
399 %{?with_flite:Requires: flite-devel >= 1.4}
400 Requires:       fontconfig-devel
401 Requires:       freetype-devel
402 %{?with_fribidi:Requires:       fribidi-devel}
403 %{?with_gme:Requires:   game-music-emu-devel}
404 %{?with_glslang:Requires:       glslang-devel >= 12}
405 Requires:       gnutls-devel
406 Requires:       jack-audio-connection-kit-devel
407 %{?with_kvazaar:Requires:       kvazaar-devel >= 0.8.1}
408 Requires:       lame-libs-devel >= 3.98.3
409 %{?with_lensfun:Requires:       lensfun-devel >= 0.3.95}
410 Requires:       libass-devel
411 %{?with_iec61883:Requires:      libavc1394-devel}
412 Requires:       libbluray-devel
413 %{?with_bs2b:Requires:  libbs2b-devel}
414 %{?with_caca:Requires:  libcaca-devel}
415 Requires:       libcdio-paranoia-devel >= 0.90-2
416 %{?with_chromaprint:Requires:   libchromaprint-devel}
417 %{?with_crystalhd:Requires:     libcrystalhd-devel}
418 %{?with_dc1394:Requires:        libdc1394-devel >= 2}
419 %{?with_libdrm:Requires:        libdrm-devel}
420 %{?with_gsm:Requires:   libgsm-devel}
421 %{?with_iec61883:Requires:      libiec61883-devel}
422 %{?with_libklvanc:Requires:     libklvanc-devel}
423 %{?with_modplug:Requires:       libmodplug-devel}
424 %{?with_libmysofa:Requires:     libmysofa-devel >= 0.7}
425 %{?with_openmpt:Requires: libopenmpt-devel >= 0.4.5}
426 %if %{with dc1394} || %{with iec61883}
427 Requires:       libraw1394-devel >= 2
428 %endif
429 %{?with_librist:Requires:       librist-devel >= 0.2}
430 %{?with_librsvg:Requires:       librsvg-devel >= 2}
431 Requires:       librtmp-devel
432 %{?with_smb:Requires:   libsmbclient-devel}
433 %{?with_ssh:Requires:   libssh-devel}
434 Requires:       libstdc++-devel
435 %{?with_theora:Requires:        libtheora-devel >= 1.0-0.beta3}
436 Requires:       libv4l-devel
437 %{?with_va:Requires:    libva-devel >= 1.0.3}
438 %{?with_va:Requires:    libva-drm-devel >= 1.0.3}
439 %{?with_va:Requires:    libva-x11-devel >= 1.0.3}
440 Requires:       libvdpau-devel >= 1.3
441 Requires:       libvorbis-devel
442 %{?with_vpx:Requires:   libvpx-devel >= 1.4.0}
443 %{?with_webp:Requires:  libwebp-devel >= 0.4.0}
444 %{?with_x264:Requires:  libx264-devel >= 0.1.3-1.20110625_2245}
445 %{?with_x265:Requires:  libx265-devel >= 1.9}
446 # libxcb xcb-shm xcb-xfixes xcb-shape
447 Requires:       libxcb-devel >= 1.4
448 %{?with_libxml2:Requires:       libxml2-devel >= 2}
449 %{?with_lv2:Requires:   lilv-devel}
450 %{?with_mfx:Requires:   mfx_dispatch-devel >= 1.19}
451 %{?with_amr:Requires:   opencore-amr-devel}
452 %{?with_opencv:Requires:        opencv-devel >= 2}
453 %{?with_openh264:Requires:      openh264-devel >= 1.3}
454 Requires:       openjpeg2-devel >= 2.1
455 Requires:       opus-devel
456 %{?with_pulseaudio:Requires:    pulseaudio-devel}
457 %{?with_rabbitmq:Requires:      rabbitmq-c-devel >= 0.7.1}
458 %{?with_rav1e:Requires: rav1e-devel >= 0.4.0}
459 %{?with_rkmpp:Requires: rockchip-mpp-devel >= 1.3.7}
460 %{?with_rubberband:Requires:    rubberband-devel >= 1.8.1}
461 %{?with_shine:Requires: shine-devel >= 3.0.0}
462 %{?with_snappy:Requires:        snappy-devel}
463 %{?with_soxr:Requires:  soxr-devel}
464 Requires:       speex-devel >= 1:1.2-rc1
465 %{?with_glslang:Requires:       spirv-tools-devel}
466 %{?with_srt:Requires:   srt-devel >= 1.3}
467 %{?with_svtav1:Requires:        svt-av1-devel >= 0.8.4}
468 %{?with_tesseract:Requires:     tesseract-devel}
469 Requires:       twolame-devel >= 0.3.10
470 %{?with_uavs3d:Requires:        uavs3d-devel >= 1.1.41}
471 %{?with_vapoursynth:Requires:   vapoursynth-devel >= 42}
472 %{?with_vidstab:Requires:       vid.stab-devel >= 0.98}
473 %{?with_voamrwbenc:Requires:    vo-amrwbenc-devel}
474 %{?with_vmaf:Requires:  vmaf-devel >= 1.5.2}
475 %{?with_ilbc:Requires:  webrtc-libilbc-devel}
476 %{?with_avs:Requires:   xavs-devel}
477 %{?with_avs2:Requires:  xavs2-devel >= 1.3}
478 Requires:       xorg-lib-libX11-devel
479 Requires:       xorg-lib-libXext-devel
480 Requires:       xorg-lib-libXv-devel
481 %{?with_xvid:Requires:  xvid-devel >= 1:1.1.0}
482 Requires:       xz-devel
483 %{?with_zmq:Requires:   zeromq-devel >= 4.2.1}
484 %{?with_zimg:Requires:  zimg-devel >= 2.7.0}
485 Requires:       zlib-devel
486 %{?with_zvbi:Requires:  zvbi-devel >= 0.2.28}
487 Obsoletes:      libpostproc-devel < 2:1.0-1
488
489 %description devel
490 ffmpeg header files.
491
492 %description devel -l pl.UTF-8
493 Pliki nagłówkowe ffmpeg.
494
495 %package static
496 Summary:        ffmpeg static libraries
497 Summary(pl.UTF-8):      Statyczne biblioteki ffmpeg
498 Group:          Development/Libraries
499 Requires:       %{name}-devel = %{version}-%{release}
500
501 %description static
502 ffmpeg static libraries (libavcodec and libavformat).
503
504 %description static -l pl.UTF-8
505 Statyczne biblioteki ffmpeg (libavcodec i libavformat).
506
507 %package ffplay
508 Summary:        FFplay - SDL-based media player
509 Summary(pl.UTF-8):      FFplay - odtwarzacz mediów oparty na SDL
510 Group:          Applications/Multimedia
511 Requires:       %{name}-libs = %{version}-%{release}
512
513 %description ffplay
514 FFplay is a very simple and portable media player using the FFmpeg
515 libraries and the SDL library. It is mostly used as a test bench for
516 the various APIs of FFmpeg.
517
518 %description ffplay -l pl.UTF-8
519 FFplay to bardzo prosty i przenoÅ›ny odtwarzacz mediów używajÄ…cy
520 bibliotek FFmpeg oraz biblioteki SDL. Jest używany głównie do
521 testowania różnych API FFmpeg.
522
523 %package doc
524 Summary:        FFmpeg documentation in HTML format
525 Summary(pl.UTF-8):      Dokumentacja pakietu FFmpeg w formacie HTML
526 Group:          Documentation
527 BuildArch:      noarch
528
529 %description doc
530 FFmpeg documentation in HTML format.
531
532 %description doc -l pl.UTF-8
533 Dokumentacja pakietu FFmpeg w formacie HTML.
534
535 %prep
536 %setup -q
537 %patch0 -p1
538 %patch1 -p1
539 %patch2 -p1
540 %if %{with v4l2_request}
541 %patch3 -p1
542 %endif
543 %patch4 -p1
544 %if %{with v4l2_drmprime}
545 %patch5 -p1
546 %endif
547 %patch6 -p1
548
549 # package the grep result for mplayer, the result formatted as ./mplayer/configure
550 cat <<EOF > ffmpeg-avconfig
551 #! /bin/sh
552 libavdecoders_all="$(sed -n 's/^[^#]*DEC.*(.*, *\(.*\)).*/\1_decoder/p' libavcodec/allcodecs.c | tr '[a-z]' '[A-Z]')"
553 libavencoders_all="$(sed -n 's/^[^#]*ENC.*(.*, *\(.*\)).*/\1_encoder/p' libavcodec/allcodecs.c | tr '[a-z]' '[A-Z]')"
554 libavparsers_all="$(sed -n 's/^[^#]*PARSER.*(.*, *\(.*\)).*/\1_parser/p' libavcodec/allcodecs.c | tr '[a-z]' '[A-Z]')"
555 libavbsfs_all="$(sed -n 's/^[^#]*BSF.*(.*, *\(.*\)).*/\1_bsf/p' libavcodec/allcodecs.c | tr '[a-z]' '[A-Z]')"
556 libavdemuxers_all="$(sed -n 's/^[^#]*DEMUX.*(.*, *\(.*\)).*/\1_demuxer/p' libavformat/allformats.c | tr '[a-z]' '[A-Z]')"
557 libavmuxers_all="$(sed -n 's/^[^#]*_MUX.*(.*, *\(.*\)).*/\1_muxer/p' libavformat/allformats.c | tr '[a-z]' '[A-Z]')"
558 libavprotocols_all="$(sed -n 's/^[^#]*PROTOCOL.*(.*, *\(.*\)).*/\1_protocol/p' libavformat/allformats.c | tr '[a-z]' '[A-Z]')"
559 libavhwaccels_all="$(sed -n 's/^[^#]*HWACCEL.*(.*, *\(.*\)).*/\1_hwaccel/p' libavcodec/allcodecs.c | tr '[a-z]' '[A-Z]')"
560 libavfilters_all="$(sed -n 's/^[^#]*FILTER.*(.*, *\(.*\),.*).*/\1_filter/p' libavfilter/allfilters.c | tr '[a-z]' '[A-Z]')"
561 EOF
562 cat <<'EOF' >> ffmpeg-avconfig
563
564 case "$1" in
565 --decoders)
566         echo $libavdecoders_all
567         ;;
568 --encoders)
569         echo $libavencoders_all
570         ;;
571 --parsers)
572         echo $libavparsers_all
573         ;;
574 --bsfs)
575         echo $libavbsfs_all
576         ;;
577 --demuxers)
578         echo $libavdemuxers_all
579         ;;
580 --muxers)
581         echo $libavmuxers_all
582         ;;
583 --protocols)
584         echo $libavprotocols_all
585         ;;
586 --hwaccels)
587         echo $libavhwaccels_all
588         ;;
589 --filters)
590         echo $libavfilters_all
591         ;;
592 *)
593         cat <<USAGE
594 Usage: $0 [OPTION]
595 Options:
596   --decoders
597   --encoders
598   --parsers
599   --bsfs
600   --demuxers
601   --muxers
602   --protocols
603   --hwaccels
604   --filters
605 USAGE
606         exit 1;;
607 esac
608
609 exit 0
610 EOF
611
612 %build
613 # notes:
614 # - it's not autoconf configure
615 # - --disable-debug, --disable-optimizations, tune=generic causes not to override our optflags
616 ./configure \
617         --arch=%{_target_base_arch} \
618         --prefix=%{_prefix} \
619         --libdir=%{_libdir} \
620         --shlibdir=%{_libdir} \
621         --mandir=%{_mandir} \
622         --extra-cflags="-D_GNU_SOURCE=1 %{rpmcppflags} %{rpmcflags}%{?with_decklink: -I/usr/include/decklink}%{?with_opencv: -I/usr/include/opencv4}" \
623         --extra-cxxflags="-D_GNU_SOURCE=1 %{rpmcppflags} %{rpmcxxflags}%{?with_decklink: -I/usr/include/decklink}%{?with_opencv: -I/usr/include/opencv4}" \
624         --extra-ldflags="%{rpmcflags} %{rpmldflags}" \
625         --cc="%{__cc}" \
626         --disable-debug \
627         --disable-optimizations \
628         --disable-stripping \
629         %{!?with_doc:--disable-doc} \
630         --enable-avfilter \
631         %{?with_avresample:--enable-avresample} \
632         %{?with_chromaprint:--enable-chromaprint} \
633         %{?with_cudasdk:--enable-cuda-nvcc} \
634         %{?with_decklink:--enable-decklink} \
635         %{!?with_ffnvcodec:--disable-ffnvcodec} \
636         --enable-gnutls \
637         --enable-gpl \
638         --enable-version3 \
639         %{?with_frei0r:--enable-frei0r} \
640         %{?with_ladspa:--enable-ladspa} \
641         %{?with_aom:--enable-libaom} \
642         %{?with_aribb24:--enable-libaribb24} \
643         --enable-libass \
644         --enable-libbluray \
645         %{?with_bs2b:--enable-libbs2b} \
646         %{?with_caca:--enable-libcaca} \
647         --enable-libcelt \
648         --enable-libcdio \
649         %{?with_codec2:--enable-libcodec2} \
650         %{?with_dav1d:--enable-libdav1d} \
651         %{?with_avs2:--enable-libdavs2} \
652         %{?with_dc1394:--enable-libdc1394} \
653         %{?with_libdrm:--enable-libdrm} \
654         %{?with_flite:--enable-libflite} \
655         --enable-libfontconfig \
656         --enable-libfreetype \
657         %{?with_fribidi:--enable-libfribidi} \
658         %{?with_glslang:--enable-libglslang} \
659         %{?with_gme:--enable-libgme} \
660         %{?with_gsm:--enable-libgsm} \
661         %{?with_iec61883:--enable-libiec61883} \
662         %{?with_ilbc:--enable-libilbc} \
663         --enable-libjack \
664         %{?with_kvazaar:--enable-libkvazaar} \
665         %{?with_libklvanc:--enable-libklvanc} \
666         %{?with_lensfun:--enable-liblensfun} \
667         %{?with_mfx:--enable-libmfx} \
668         %{?with_modplug:--enable-libmodplug} \
669         --enable-libmp3lame \
670         %{?with_libmysofa:--enable-libmysofa} \
671         %{?with_amr:--enable-libopencore-amrnb} \
672         %{?with_amr:--enable-libopencore-amrwb} \
673         %{?with_opencv:--enable-libopencv} \
674         %{?with_openh264:--enable-libopenh264} \
675         --enable-libopenjpeg \
676         %{?with_openmpt:--enable-libopenmpt} \
677         --enable-libopus \
678         %{?with_pulseaudio:--enable-libpulse} \
679         %{?with_rabbitmq:--enable-librabbitmq} \
680         %{?with_rav1e:--enable-librav1e} \
681         %{?with_librist:--enable-librist} \
682         %{?with_librsvg:--enable-librsvg} \
683         --enable-librtmp \
684         %{?with_rubberband:--enable-librubberband} \
685         %{?with_shine:--enable-libshine} \
686         %{?with_smb:--enable-libsmbclient} \
687         %{?with_snappy:--enable-libsnappy} \
688         %{?with_soxr:--enable-libsoxr} \
689         --enable-libspeex \
690         %{?with_srt:--enable-libsrt} \
691         %{?with_ssh:--enable-libssh} \
692         %{?with_svtav1:--enable-libsvtav1} \
693         %{?with_tesseract:--enable-libtesseract} \
694         %{?with_theora:--enable-libtheora} \
695         --enable-libtwolame \
696         %{?with_uavs3d:--enable-libuavs3d} \
697         --enable-libv4l2 \
698         %{?with_vidstab:--enable-libvidstab} \
699         %{?with_vmaf:--enable-libvmaf} \
700         %{?with_voamrwbenc:--enable-libvo-amrwbenc} \
701         --enable-libvorbis \
702         %{?with_vpx:--enable-libvpx} \
703         %{?with_webp:--enable-libwebp} \
704         %{?with_x264:--enable-libx264} \
705         %{?with_x265:--enable-libx265} \
706         %{?with_avs:--enable-libxavs} \
707         %{?with_avs2:--enable-libxavs2} \
708         --enable-libxcb \
709         %{?with_libxml2:--enable-libxml2} \
710         %{?with_xvid:--enable-libxvid} \
711         %{?with_zimg:--enable-libzimg} \
712         %{?with_zmq:--enable-libzmq} \
713         %{?with_zvbi:--enable-libzvbi} \
714         %{?with_lv2:--enable-lv2} \
715         %{?with_omx:--enable-omx} \
716         %{?with_openal:--enable-openal} \
717         %{?with_opencl:--enable-opencl} \
718         %{?with_opengl:--enable-opengl} \
719         %{?with_pocketsphinx:--enable-pocketsphinx} \
720         --enable-postproc \
721         --enable-pthreads \
722         %{?with_rkmpp:--enable-rkmpp} \
723         --enable-shared \
724         --enable-swscale \
725         %{!?with_va:--disable-vaapi} \
726         %{?with_vapoursynth:--enable-vapoursynth} \
727         %{?with_vulkan:--enable-vulkan} \
728 %if %{with v4l2_request}
729         --enable-libudev \
730         --enable-v4l2-request \
731 %endif
732 %ifnarch %{ix86} %{x8664}
733         --disable-mmx \
734 %endif
735 %ifarch i386 i486
736         --disable-mmx \
737 %endif
738 %ifarch x32
739         --disable-asm \
740 %endif
741 %if %{with nonfree}
742         --enable-nonfree \
743         %{?with_fdk_aac:--enable-libfdk-aac} \
744         %{?with_npp:--enable-libnpp} \
745 %endif
746         --enable-runtime-cpudetect
747
748 %{__make} \
749         V=1
750
751 # CC_O to add -c to commandline. makefile should be patched
752 %{__make} tools/qt-faststart V=1 CC_O='-c -o $@'
753
754 %{?with_tests:%{__make} check V=1}
755
756 %install
757 rm -rf $RPM_BUILD_ROOT
758 install -d $RPM_BUILD_ROOT{%{_sysconfdir},%{_sbindir},/etc/{sysconfig,rc.d/init.d}} \
759         $RPM_BUILD_ROOT%{_includedir}/ffmpeg
760
761 %{__make} install install-headers \
762         DESTDIR=$RPM_BUILD_ROOT \
763         V=1
764
765 # install nonstandard, non-public headers manually
766 cp -a config.h $RPM_BUILD_ROOT%{_includedir}/ffmpeg
767 for a in libavutil/*/{asm,bswap}.h; do
768         install -Dp $a $RPM_BUILD_ROOT%{_includedir}/$a
769 done
770 cp -a libavformat/riff.h $RPM_BUILD_ROOT%{_includedir}/libavformat
771
772 install -p tools/qt-faststart $RPM_BUILD_ROOT%{_bindir}
773
774 # install as ffmpeg-avconfig to avoid with possible programs looking for
775 # ffmpeg-config and expecting --libs output from it which is not implemented
776 # simple to do (by querying pkgconfig), but why?
777 install -p ffmpeg-avconfig $RPM_BUILD_ROOT%{_bindir}/ffmpeg-avconfig
778
779 # packaged as %doc in -doc
780 %if %{with doc}
781 %{__rm} $RPM_BUILD_ROOT%{_docdir}/ffmpeg/*.html
782 %endif
783
784 install -d $RPM_BUILD_ROOT%{_examplesdir}
785 %{__mv} $RPM_BUILD_ROOT%{_datadir}/ffmpeg/examples $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
786
787 %clean
788 rm -rf $RPM_BUILD_ROOT
789
790 %post   libs -p /sbin/ldconfig
791 %postun libs -p /sbin/ldconfig
792
793 %files
794 %defattr(644,root,root,755)
795 %doc CREDITS LICENSE.md MAINTAINERS README.md RELEASE_NOTES doc/APIchanges
796 %attr(755,root,root) %{_bindir}/ffmpeg
797 %attr(755,root,root) %{_bindir}/ffprobe
798 %attr(755,root,root) %{_bindir}/qt-faststart
799 %dir %{_datadir}/ffmpeg
800 %{_datadir}/ffmpeg/*.ffpreset
801 %{_datadir}/ffmpeg/ffprobe.xsd
802 %if %{with doc}
803 %{_mandir}/man1/ffmpeg.1*
804 %{_mandir}/man1/ffmpeg-all.1*
805 %{_mandir}/man1/ffmpeg-bitstream-filters.1*
806 %{_mandir}/man1/ffmpeg-codecs.1*
807 %{_mandir}/man1/ffmpeg-devices.1*
808 %{_mandir}/man1/ffmpeg-filters.1*
809 %{_mandir}/man1/ffmpeg-formats.1*
810 %{_mandir}/man1/ffmpeg-protocols.1*
811 %{_mandir}/man1/ffmpeg-resampler.1*
812 %{_mandir}/man1/ffmpeg-scaler.1*
813 %{_mandir}/man1/ffmpeg-utils.1*
814 %{_mandir}/man1/ffprobe.1*
815 %{_mandir}/man1/ffprobe-all.1*
816 %endif
817
818 %files libs
819 %defattr(644,root,root,755)
820 %attr(755,root,root) %{_libdir}/libavcodec.so.*.*.*
821 %attr(755,root,root) %ghost %{_libdir}/libavcodec.so.58
822 %attr(755,root,root) %{_libdir}/libavdevice.so.*.*.*
823 %attr(755,root,root) %ghost %{_libdir}/libavdevice.so.58
824 %attr(755,root,root) %{_libdir}/libavfilter.so.*.*.*
825 %attr(755,root,root) %ghost %{_libdir}/libavfilter.so.7
826 %attr(755,root,root) %{_libdir}/libavformat.so.*.*.*
827 %attr(755,root,root) %ghost %{_libdir}/libavformat.so.58
828 %if %{with avresample}
829 %attr(755,root,root) %{_libdir}/libavresample.so.*.*.*
830 %attr(755,root,root) %ghost %{_libdir}/libavresample.so.4
831 %endif
832 %attr(755,root,root) %{_libdir}/libavutil.so.*.*.*
833 %attr(755,root,root) %ghost %{_libdir}/libavutil.so.56
834 %attr(755,root,root) %{_libdir}/libpostproc.so.*.*.*
835 %attr(755,root,root) %ghost %{_libdir}/libpostproc.so.55
836 %attr(755,root,root) %{_libdir}/libswresample.so.*.*.*
837 %attr(755,root,root) %ghost %{_libdir}/libswresample.so.3
838 %attr(755,root,root) %{_libdir}/libswscale.so.*.*.*
839 %attr(755,root,root) %ghost %{_libdir}/libswscale.so.5
840
841 %files devel
842 %defattr(644,root,root,755)
843 %doc doc/optimization.txt
844 %attr(755,root,root) %{_bindir}/ffmpeg-avconfig
845 %attr(755,root,root) %{_libdir}/libavcodec.so
846 %attr(755,root,root) %{_libdir}/libavdevice.so
847 %attr(755,root,root) %{_libdir}/libavfilter.so
848 %attr(755,root,root) %{_libdir}/libavformat.so
849 %{?with_avresample:%attr(755,root,root) %{_libdir}/libavresample.so}
850 %attr(755,root,root) %{_libdir}/libavutil.so
851 %attr(755,root,root) %{_libdir}/libpostproc.so
852 %attr(755,root,root) %{_libdir}/libswresample.so
853 %attr(755,root,root) %{_libdir}/libswscale.so
854 %{_includedir}/ffmpeg
855 %{_includedir}/libavcodec
856 %{_includedir}/libavdevice
857 %{_includedir}/libavfilter
858 %{_includedir}/libavformat
859 %{?with_avresample:%{_includedir}/libavresample}
860 %{_includedir}/libavutil
861 %{_includedir}/libpostproc
862 %{_includedir}/libswresample
863 %{_includedir}/libswscale
864 %{_pkgconfigdir}/libavcodec.pc
865 %{_pkgconfigdir}/libavdevice.pc
866 %{_pkgconfigdir}/libavfilter.pc
867 %{_pkgconfigdir}/libavformat.pc
868 %{?with_avresample:%{_pkgconfigdir}/libavresample.pc}
869 %{_pkgconfigdir}/libavutil.pc
870 %{_pkgconfigdir}/libpostproc.pc
871 %{_pkgconfigdir}/libswresample.pc
872 %{_pkgconfigdir}/libswscale.pc
873 %if %{with doc}
874 %{_mandir}/man3/libavcodec.3*
875 %{_mandir}/man3/libavdevice.3*
876 %{_mandir}/man3/libavfilter.3*
877 %{_mandir}/man3/libavformat.3*
878 %{_mandir}/man3/libavutil.3*
879 %{_mandir}/man3/libswresample.3*
880 %{_mandir}/man3/libswscale.3*
881 %endif
882 %{_examplesdir}/%{name}-%{version}
883
884 %files static
885 %defattr(644,root,root,755)
886 %{_libdir}/libavcodec.a
887 %{_libdir}/libavdevice.a
888 %{_libdir}/libavfilter.a
889 %{_libdir}/libavformat.a
890 %{?with_avresample:%{_libdir}/libavresample.a}
891 %{_libdir}/libavutil.a
892 %{_libdir}/libpostproc.a
893 %{_libdir}/libswresample.a
894 %{_libdir}/libswscale.a
895
896 %files ffplay
897 %defattr(644,root,root,755)
898 %attr(755,root,root) %{_bindir}/ffplay
899 %if %{with doc}
900 %{_mandir}/man1/ffplay.1*
901 %{_mandir}/man1/ffplay-all.1*
902 %endif
903
904 %if %{with doc}
905 %files doc
906 %defattr(644,root,root,755)
907 %doc doc/*.html
908 %endif
This page took 0.087988 seconds and 3 git commands to generate.