1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2024-12-18 03:19:31 +02:00
Commit Graph

4790 Commits

Author SHA1 Message Date
Hendrik Leppkes
a6cee50fa2 configure: use dashes instead of slashes in lib.exe invocation
This avoids issues with wrong parameter translation by msys on some systems,
and the Windows SDK tools accept both forms equally.
2017-02-06 19:47:20 +01:00
Diego Biurrun
71a49fe25f configure: Use cppflags check helper functions where appropriate 2017-02-06 15:43:56 +01:00
Diego Biurrun
0ce3761c78 configure: Add stdlib.h #include to CPPFLAGS check helper functions
This ensures that added CPPFLAGS are validated against libc headers.
2017-02-06 15:43:56 +01:00
Hendrik Leppkes
8b80feb9a7 configure: instruct MSVC 2015 to properly process UTF-8 string literals
Without the /UTF-8 switch, the MSVC compiler treats all files as in the
system codepage, instead of in UTF-8, which causes UTF-8 string literals
to be interpreted wrong.

This switch was only introduced in VS2015 Update 2, and any earlier
versions do not have an equivalent solution.

Fixes fate-sub-scc on MSVC 2015+
2017-02-04 11:21:35 +01:00
Hendrik Leppkes
647af1a0dd configure: add nologo switch to invocation of lib.exe
This suppresses the startup banner, which is consistent with all other calls
to the Windows SDK binaries.
2017-02-04 11:21:33 +01:00
Diego Biurrun
bcaedef118 configure: Add require_cpp_condition() convenience function
Simplifies checking for conditions in external library headers and
aborting if said conditions are not met.
2017-02-02 17:49:51 +01:00
Diego Biurrun
aba7fdcc8b configure: Add require_header() convenience function
Simplifies checking for external library headers and aborting if
the external library support was requested, but is not available.
2017-02-02 17:49:51 +01:00
Diego Biurrun
a97563c889 configure: Simplify libxcb check 2017-02-02 17:38:50 +01:00
Diego Biurrun
6698832079 configure: Add proper weak dependency of drawtext filter on libfontconfig 2017-02-02 14:35:44 +01:00
Diego Biurrun
acfa7a2178 configure: Drop weak dependencies on external libraries for webm muxer
Weak dependencies on external libraries do not obviate having to
explicitly enable these libraries, so the weak dependency does not
simplify the configure command line nor have any real effect.
2017-02-02 14:35:44 +01:00
Diego Biurrun
24d5680bbc configure: Simplify inline asm check with appropriate helper function 2017-02-02 14:34:05 +01:00
Diego Biurrun
b3825723dc configure: Merge compiler/libc/os hacks sections 2017-02-02 14:34:05 +01:00
Clément Bœsch
a0860b0a38 Merge commit '6f9e34baea4f6f484392e4e67f606a0835d07b73'
* commit '6f9e34baea4f6f484392e4e67f606a0835d07b73':
  arm: Check for support for the .fpu directive

Merged-by: Clément Bœsch <cboesch@gopro.com>
2017-02-02 11:22:04 +01:00
Anton Khirnov
fd9212f2ed Mark some arrays that never change as const. 2017-02-01 10:42:59 +01:00
Diego Biurrun
ab87af4163 configure: Add proper weak dependency of avformat on network 2017-01-31 15:50:20 +01:00
Mark Thompson
ca62236a89 vaapi_encode: Add VP8 support 2017-01-30 23:03:46 +00:00
Diego Biurrun
ba6a49e60b configure: Clean up temporary files on interrupt 2017-01-29 20:17:46 +01:00
Michał Górny
7848982207 configure: Place all temporary files in one separate directory
Place all temporary files within a single, quasi-atomically created
temporary directory rather than relying on unsafe 'mktemp -u'. This
prevents possible race conditions in case two parallel 'mktemp -u' calls
returned the same path. Additionally, it reduces TMPDIR pollution by
keeping all test files in a single subdirectory.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
2017-01-29 20:17:46 +01:00
Mark Thompson
ca6ae3b77a vaapi_encode: Add MPEG-2 support 2017-01-29 13:28:31 +00:00
Diego Biurrun
2bbb5abd87 build: Map -Wall compiler flag to -W3 for MSVC and -Wextra to -W4
These are more appropriate warning level equivalents.
2017-01-26 11:53:02 +01:00
Diego Biurrun
6151e9128c build: Detect blocks C language extension and add it as VDA dependency
Newer versions of OS X use the blocks extension in VDA-related headers.
Some compilers, like current gcc, do not support the blocks extension
and fail to compile code using those headers.
2017-01-26 11:53:02 +01:00
Martin Storsjö
f96d07f4ec configure: Add quotes around a variable which might be empty
If we only have a target compiler but no host compiler, the $type
variable will be empty once.

(Currently we fail to do a cross build if no host compiler is available
due to using the host compiler for processing option lists though.
But despite that, this comparison in configure needs quotes.)

Signed-off-by: Martin Storsjö <martin@martin.st>
2017-01-26 12:41:53 +02:00
Diego Biurrun
9bf262f4c6 configure: Use proper compiler-specific speed flags for hostcc 2017-01-25 13:25:02 +01:00
Diego Biurrun
bf38959a30 configure: Move optflags checks to a more sensible place 2017-01-25 12:01:02 +01:00
Dave Yeo
7ff018c1cb OS/2: Try to commit memory above 1GB
Signed-off-by: Dave Yeo <dave.r.yeo@gmail.com>
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2017-01-22 15:21:33 +01:00
Anton Khirnov
adb54e59c1 vaapi_hevc: Convert to use the new VAAPI hwaccel code
(cherry picked from commit ea8b730d8e)
Signed-off-by: Mark Thompson <sw@jkqxz.net>
2017-01-17 23:06:46 +00:00
Kacper Michajłow
2064a3b8df configure: Don't disable SSA Optimizer on MSVC v19.00.24218+.
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-01-17 17:55:34 +01:00
Carl Eugen Hoyos
e664730271 configure: Fix standalone compilation of aiff and caf muxers. 2017-01-16 12:03:21 +01:00
James Almer
cf9ef83960 huffyuvencdsp: move shared functions to a new lossless_videoencdsp context
Signed-off-by: James Almer <jamrial@gmail.com>
2017-01-12 22:53:04 -03:00
James Almer
30c1f27299 huffyuvencdsp: move functions only used by huffyuv from lossless_videodsp
Signed-off-by: James Almer <jamrial@gmail.com>
2017-01-12 22:53:04 -03:00
James Almer
5ac1dd8e23 lossless_videodsp: move shared functions from huffyuvdsp
Several codecs other than huffyuv use them.

Signed-off-by: James Almer <jamrial@gmail.com>
2017-01-12 22:53:04 -03:00
Carl Eugen Hoyos
f3adb6f74b configure: Fix standalone compilation of the ljpeg encoder.
Also fixes compilation with --disable-error-resilience.
Fixes ticket #6060.
2017-01-05 11:44:04 +01:00
James Almer
d800d48fc6 configure: bump year
Happy new year!
2017-01-02 01:38:14 -03:00
Michael Niedermayer
af7a75cb51 configure: Check build with some header not just preprocessing for testing --std=c11
Fixes build failure on FreeBSD with gcc 4.7

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-12-31 13:11:37 +01:00
Diego Biurrun
ee164727dd configure: Fix typo in incdir variable written to config.sh
This fixes includedir lines in pkg-config files broken after 92db508307.
2016-12-30 14:30:52 +01:00
James Almer
6993bb4eb6 configure: make the check for stdatomic.h stricter
Old ICC verions don't advertise having a full C11 implementation but
may nonetheless include a feature-incomplete stdatomic.h header.

Fixes ticket #6049

Signed-off-by: James Almer <jamrial@gmail.com>
2016-12-30 00:01:38 -03:00
Janne Grunau
35d1f726eb fate: Add --ignore-tests configure option for omitting specific FATE tests
This can be useful to filter out noise in known-broken scenarios like
miscompilation by legacy compilers and similar.

Originally based on a patch by Diego Biurrun.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
2016-12-28 18:10:32 +01:00
Diego Biurrun
8a34f36593 build: Add version numbers to "Requires" entries in pkg-config files
The (required) version numbers disappeared after edb4348732.
2016-12-28 17:41:54 +01:00
Paul B Mahol
ea93052db3 avcodec/utvideodec: add SIMD support for median prediction for planar formats
~10% faster overall.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2016-12-23 17:44:01 +01:00
Diego Biurrun
92db508307 build: Generate pkg-config files from Make and not from configure
This moves work from the configure to the Make stage where it can
be parallelized and ensures that pkgconfig files are updated when
library versions change.

Bug-Id: 449
2016-12-22 12:30:54 +01:00
Diego Biurrun
edb4348732 build: Store library version numbers in .version files
This moves work from the configure to the Make stage where it can
be parallelized and ensures that shared libraries are built with
the right version number in the filename.
2016-12-22 12:17:37 +01:00
Diego Biurrun
11a9320de5 build: Move build-system-related helper files to a separate subdirectory
This unclutters the top-level directory and groups related files together.
2016-12-22 11:07:50 +01:00
Paul B Mahol
6d09d6edbc avcodec/magicyuv: add 10 bit support
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2016-12-20 13:32:15 +01:00
Anton Khirnov
ea8b730d8e hevcdec: add a VAAPI hwaccel
Partially based on a patch by Timo Rothenpieler <timo@rothenpieler.org>.
Additional scaling list handling fix by Jun Zhao <mypopydev@gmail.com>.
2016-12-19 08:13:08 +01:00
Diego Biurrun
ee480790c7 build: Add name parameter to check_lib() helper function
This allows enabling or disabling the library-related variables from
within the function instead of doing it manually outside of it.
2016-12-16 13:39:22 +01:00
Diego Biurrun
1faffe7e8f configure: Disentangle vfw32 and user32 lib handling
Check for and link against user32 instead, which also fixes
the missing dependency of dxva2 on user32 with MSVC.
2016-12-16 13:37:33 +01:00
Steve Lhomme
f7174d7ed0 configure: fix linking with MSVC when using --disable-optimizations
Without any optimization flags, MSVC does no dead code elimination (DCE) at
all, even for the most trivial cases. DCE is a prerequisite for building libav
correctly, otherwise there are undefined references to functions for other
architectures and disabled components.

-O1 is the minimal optimization flag for MSVC that does include DCE.
2016-12-16 10:03:21 +01:00
Steve Lhomme
ef9a711be7 configure: put d3d11 check in alphabetical order 2016-12-16 10:03:20 +01:00
Anton Khirnov
972c71e9cb lavc: add support for filtering packets before decoding 2016-12-14 09:06:45 +01:00
Anton Khirnov
fa1749dd34 vp9: split superframes in the filtering stage before actual decoding
Significantly increases the efficiency of frame threading, since
individual frames in a superframe can now be decoded in parallel.
2016-12-14 09:06:45 +01:00
Wan-Teh Chang
3f55752cd5 configure: add -fPIE instead of -pie to C flags for ThreadSanitizer
-pie was added to C flags for ThreadSanitizer in commit
19f251a288. Under clang 3.8.0, the -pie
flag causes a compiler warning and a linker error when running configure
--toolchain=clang-tsan. Here is an excerpt from config.log:

clang ... -fsanitize=thread -pie -std=c11 -fomit-frame-pointer -pthread -c -o /tmp/ffconf.hL61stP9.o /tmp/ffconf.YO6ZaSFG.c
clang: warning: argument unused during compilation: '-pie'
clang -fsanitize=thread -pie -Wl,--as-needed -Wl,-z,noexecstack -o /tmp/ffconf.W5c2e41l /tmp/ffconf.hL61stP9.o -lbz2 -pthread
/usr/bin/ld: /tmp/ffconf.hL61stP9.o: relocation R_X86_64_PC32 against undefined symbol `atan2f@@GLIBC_2.2.5' can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: final link failed: Bad value
clang: error: linker command failed with exit code 1 (use -v to see invocation)

To be conservative, I changed -pie to -fPIE. But the documentation seems
to imply just -fsanitize=thread is enough:

http://clang.llvm.org/docs/ThreadSanitizer.html
https://github.com/google/sanitizers/wiki/ThreadSanitizerCppManual

Signed-off-by: Wan-Teh Chang <wtc@google.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-12-13 00:41:39 +01:00
Diego Biurrun
fc368497f2 configure: Add missing dxva2 dependency for dxva2_lib 2016-12-12 00:15:38 +01:00
Diego Biurrun
f1248fae90 configure: Handle dxva2 optional components in the standard way 2016-12-11 09:27:40 +01:00
Andreas Cadhalpun
8aad209c13 configure: fail if autodetect-libraries are requested but not found
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2016-12-10 19:29:37 +01:00
Andreas Cadhalpun
4c45566493 configure: enable autodetected libraries after option parsing
And only enable them, if they haven't been disabled.

This is needed for the following patch.

Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2016-12-10 19:29:37 +01:00
Andreas Cadhalpun
c50d591ce2 configure: enable sdl if sdl2 is enabled
sdl is supposed to be an alias, so it should have the same value.

Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2016-12-10 19:29:37 +01:00
Mark Thompson
ade370a4d7 lavfi: Add VAAPI deinterlacer 2016-12-10 16:55:44 +00:00
Diego Biurrun
f8a1ead0ae build: Add -D_XOPEN_SOURCE=600 to CPPFLAGS on Cygwin
This is required to make certain math defines visible on modern Cygwin.
2016-12-10 16:14:25 +01:00
Diego Biurrun
39fbcf8f76 configure: Fix _libs vs. _extralibs oversight 2016-12-10 15:06:34 +01:00
Mark Thompson
db7271bff2 configure: Require bit_depth field for VAAPI VP9 decode hwaccel
libva versions from 1.6.0 to 1.6.2 do not include it, and therefore
cannot work with VP9 profile >= 2.

Fixes ticket #6003.
2016-12-10 13:53:30 +00:00
Diego Biurrun
be2d555c98 build: Use _extralibs variable names instead of _libs everywhere
This makes naming more consistent and simplifies extralibs-related changes.
2016-12-09 18:57:03 +01:00
Diego Biurrun
0507cd5b9f build: Rename host_libs/HOSTLIBS variables to host_extralibs/HOSTEXTRALIBS
This is more in line with the other related variable names.
2016-12-09 18:51:23 +01:00
Diego Biurrun
a7101eb40e configure: Simplify some library checks via check_lib() 2016-12-09 18:40:47 +01:00
Diego Biurrun
1818a640cf build: Fix dependencies for alsa/jack/sndio support
These components should depend on the availability of the respective
libraries, not just on the availability of the respective headers.
2016-12-09 08:42:34 +01:00
Diego Biurrun
af451ac0de configure: Drop redundant and partly bogus vaapi/vdpau header checks
These are taken care of more correctly by the library checks.
2016-12-09 08:42:08 +01:00
Diego Biurrun
f55c0a64ae build: Drop stray golomb dependencies 2016-12-08 20:12:24 +01:00
Diego Biurrun
892acc7010 configure: Fail if cuda was enabled and is not available
This is the standard behavior for external libraries.
2016-12-08 20:12:24 +01:00
Diego Biurrun
fbec58daa2 build: Add an internal component for hevc_ps code
This allows expressing dependencies in a more correct way.
2016-12-08 20:12:23 +01:00
Diego Biurrun
6bd9590b33 build: Have old H.264/HEVC nvenc encoders select their new counterparts
This makes sense and takes care of missing build dependencies.
2016-12-07 12:13:23 +01:00
Wan-Teh Chang
f22da2cdf9 configure: add -fPIE instead of -pie to C flags for ThreadSanitizer
-pie was added to C flags for ThreadSanitizer in commit
19f251a288. Under clang 3.8.0, the -pie
flag causes a compiler warning and a linker error when running configure
--toolchain=clang-tsan. Here is an excerpt from config.log:

clang ... -fsanitize=thread -pie -std=c11 -fomit-frame-pointer -pthread -c -o /tmp/ffconf.A8SsaoCF.o /tmp/ffconf.JdpujQlD.c
clang: warning: argument unused during compilation: '-pie'
clang -fsanitize=thread -pie -Wl,--as-needed -o /tmp/ffconf.2iYA4bsw /tmp/ffconf.A8SsaoCF.o -lm -lm -lbz2 -lz -pthread
/usr/bin/ld: /tmp/ffconf.A8SsaoCF.o: relocation R_X86_64_PC32 against undefined symbol `atan2f@@GLIBC_2.2.5' can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: final link failed: Bad value
clang: error: linker command failed with exit code 1 (use -v to see invocation)

To be conservative, I changed -pie to -fPIE. But the documentation seems
to imply just -fsanitize=thread is enough:

http://clang.llvm.org/docs/ThreadSanitizer.html
https://github.com/google/sanitizers/wiki/ThreadSanitizerCppManual

Signed-off-by: Wan-Teh Chang <wtc@google.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2016-12-06 20:34:25 +01:00
Diego Biurrun
404cb74793 configure: Pass CFLAGS_HEADERS through the right CFLAGS filter
The generic parameter names used for CFLAGS in configure must be filtered
for each compiler and replaced by the equivalent flag for that compiler.
2016-12-06 17:49:05 +01:00
Diego Biurrun
9265364bec build: Separate avisynth and avxsynth support
This simplifies the code.
2016-12-06 17:49:05 +01:00
Diego Biurrun
3d6135eacf configure: Simplify OMX check 2016-12-06 08:33:08 +01:00
Diego Biurrun
601f8dde13 configure: Move COMPONENT_LIST to the bottom of CONFIG_LIST
This ensures that dependencies are resolved correctly. COMPONENT_LIST
can contain parts that depend on previous entries of CONFIG_LIST.
2016-12-06 08:33:07 +01:00
James Almer
b52d3574d4 configure: check for strtoull on msvc
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: James Almer <jamrial@gmail.com>
2016-12-05 14:28:10 -03:00
Diego Biurrun
29d2e03ed9 configure: Simplify and fix avfoundation indev handling
Handle extralibs in the standard way, add missing pthreads dependency.
Also globally check for -fobj-arc with Objective-C compilers since
that option is useful for other Objective-C code as well.
2016-12-05 18:07:24 +01:00
Diego Biurrun
2a09644076 configure: Separate package name and version requirements in helper functions
The unadorned package name is needed to derive package-related variable names.
2016-12-05 16:37:55 +01:00
Diego Biurrun
ffb9025f39 configure: Simplify MMAL check 2016-12-05 16:15:40 +01:00
Diego Biurrun
660470cd62 build: Add missing audio_frame_queue dependency for libwavpack encoder 2016-12-05 16:13:05 +01:00
Diego Biurrun
e1dc5358af build: Create a component for MPEG audio header decoding
Fixes standalone compilation of the libmp3lame encoder.
2016-12-05 16:13:05 +01:00
Diego Biurrun
6ef3360a38 configure: Add misssing qpeldsp dependency to mss2 decoder 2016-12-03 14:06:36 +01:00
Carl Eugen Hoyos
6c059bb2af configure: Fix standalone compilation of the rtp muxer.
Reported and suggested by: me at juneoh dot net

Fixes ticket #5989.
2016-12-03 12:54:50 +01:00
Diego Biurrun
3794062ab1 Remove Plan 9 support
Supporting the system was a nice joke for the 9 release, but it has
run its course. Nowadays Plan 9 receives no testing and has no
practical usefulness.
2016-12-03 09:15:01 +01:00
Diego Biurrun
4a1ef54398 build: Drop support for old versions of libdc1394
The libdc1394 API transition was finished close to a decade ago.
2016-12-03 09:15:01 +01:00
Diego Biurrun
14bba44fb2 build: Drop support for configuring library name suffixes
It is of doubtful utility, adds complexity and no known users exist.
2016-12-03 09:15:01 +01:00
Diego Biurrun
1ea77aae92 configure: Drop bogus xcb_event variables 2016-12-03 09:15:01 +01:00
Diego Biurrun
2575b1917b build: Add separate flags for checkheaders targets
This allows filtering out some warning noise.
2016-12-03 08:00:33 +01:00
Diego Biurrun
984e50e74b build: Add -Wpedantic and -Wextra to extra warning flags
Also drop -Winline from set of warning flags as it only produces noise.
2016-12-03 08:00:33 +01:00
Anton Khirnov
41e891e89e Add a compat dummy stdatomic.h used when threading is disabled
Adapted from the code by Rémi Denis-Courmont from VLC

This merges libav commit eb34d40354.

Signed-off-by: Wan-Teh Chang <wtc@google.com>
Reviewed-by: wm4 <nfxjfg@googlemail.com>
Signed-off-by: James Almer <jamrial@gmail.com>
2016-12-02 16:25:18 -03:00
Anton Khirnov
74b5f10862 Add a compat stdatomic.h implementation based on pthreads
Adapted from the code by Rémi Denis-Courmont from VLC

This merges libav commit f9a6a80e06.

Signed-off-by: Wan-Teh Chang <wtc@google.com>
Reviewed-by: wm4 <nfxjfg@googlemail.com>
Signed-off-by: James Almer <jamrial@gmail.com>
2016-12-02 16:25:18 -03:00
Anton Khirnov
70faadc826 Add a compat stdatomic.h implementation based on suncc atomics
Adapted from the code by Rémi Denis-Courmont from VLC

This merges libav commit bb81ed4765.

Signed-off-by: Wan-Teh Chang <wtc@google.com>
Reviewed-by: wm4 <nfxjfg@googlemail.com>
Signed-off-by: James Almer <jamrial@gmail.com>
2016-12-02 16:25:18 -03:00
Anton Khirnov
c91e72ed52 Add a compat stdatomic.h implementation based on windows atomics
Adapted from the code by Rémi Denis-Courmont from VLC

This merges libav commit c2755864af.

Signed-off-by: Wan-Teh Chang <wtc@google.com>
Reviewed-by: wm4 <nfxjfg@googlemail.com>
Signed-off-by: James Almer <jamrial@gmail.com>
2016-12-02 16:25:17 -03:00
Anton Khirnov
3359eede8f Add a compat stdatomic.h implementation based on GCC atomics
Adapted from the code by Rémi Denis-Courmont from VLC

This merges libav commit 4e928ef340.

Signed-off-by: Wan-Teh Chang <wtc@google.com>
Reviewed-by: wm4 <nfxjfg@googlemail.com>
Signed-off-by: James Almer <jamrial@gmail.com>
2016-12-02 16:25:17 -03:00
Luca Barbato
518a22471e configure: Be more helpful when requiring options set
Be explicit about which options should be set.
2016-12-02 12:00:07 -05:00
Diego Biurrun
c21d78a903 configure: Integrate X11 checks into vaapi/vdpau checks 2016-11-29 19:14:07 +01:00
Diego Biurrun
8b56dbe743 configure: Do not add newlines in filter()/filter_out() functions 2016-11-29 18:43:05 +01:00
Diego Biurrun
9254344e11 configure: Move hardware-accelerated codec deps out of hwaccel section 2016-11-29 15:10:58 +01:00
Diego Biurrun
d4f2a681cb configure: MMAL-related decoders should depend on, not select, mmal 2016-11-29 15:10:58 +01:00
Clément Bœsch
5d7be07a8b lavfi/f_ebur128: relicense to LGPL
All copyright holders have agreed to the relicensing.

Approved-by: Andreas Cadhalpun <andreas.cadhalpun@googlemail.com>
Approved-by: David Sedacca <sedacca@comcast.net>
Approved-by: Ganesh Ajjanagadde <gajjanag@mit.edu>
Approved-by: Jean First <jeanfirst@gmail.com>
Approved-by: Kyle Swanson <k@ylo.ph>
Approved-by: Michael Niedermayer <michael@niedermayer.cc>
Approved-by: Nicolas George <george@nsup.org>
Approved-by: Paul B Mahol <onemda@gmail.com>
Approved-by: Thilo Borgmann <thilo.borgmann@mail.de>
2016-11-27 20:46:20 +01:00
Anton Khirnov
6a4e24280d configure: check for stdatomic.h
Since this is a C11 feature, it requires -std=c11.

Not actually used for anything yet, that will be added in the following
commits.

This merges libav commit 13f5d2bf75.

Signed-off-by: Wan-Teh Chang <wtc@google.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-11-27 13:07:07 +01:00
Diego Biurrun
e122b12c88 build: Drop gcrypt support
GnuTLS in combination with gcrypt has been deprecated since 2010.
2016-11-25 18:46:53 +01:00
Diego Biurrun
bf2f748fc7 configure: Use correct libm linker flag during math function checks 2016-11-25 18:46:52 +01:00
Diego Biurrun
ce6f780bc6 configure: Add missing asyncts filter, movie filter, and output example deps
Also add a missing avcodec.h #include in the movie filter.
2016-11-25 18:45:27 +01:00
Diego Biurrun
04698d528c configure: Use correct variable name in libsnappy test 2016-11-25 16:44:57 +01:00
Diego Biurrun
30f0d1b997 configure: Remove old avisynth support leftover 2016-11-25 16:44:56 +01:00
James Almer
d1de725bee cuda: check for cuda.h when enabled
Fixes make checkheaders on systems without the Cuda Toolkit, which
was broken after the dynlink changes.

Signed-off-by: James Almer <jamrial@gmail.com>
2016-11-24 13:50:43 -03:00
Diego Biurrun
5bcc6f76f1 configure: Disable warning C4703 with MSVC
This disables warnings about potentially uninitialized local pointer
variables.  Disabling the warning is in line with what we do for gcc.
2016-11-24 16:14:33 +01:00
Paul B Mahol
b96a6e2024 avfilter/vf_zscale: add support for some recent new additions
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2016-11-23 19:02:20 +01:00
Anton Khirnov
1dd2b6c91c examples/qsvdec: switch to the hwcontext API
The code now does not depend on VA and will work on windows as well.
2016-11-23 13:08:33 +01:00
Timo Rothenpieler
8228b714be configure: cuda is no longer nonfree, enable and autodetect by default 2016-11-22 10:34:27 +01:00
Timo Rothenpieler
a66835bcb1 avcodec/nvenc: use dynamically loaded CUDA 2016-11-22 10:34:27 +01:00
Timo Rothenpieler
e6464a44ed avutil/hwcontext_cuda: use dynamically loaded CUDA 2016-11-22 10:34:27 +01:00
Hendrik Leppkes
99218ee30d configure: properly add dxva2 link dependencies
Fixes building with --disable-everything --enable-shared --enable-dxva2

The hwcontext DXVA2 implementation in avutil needs this library now, instead
of just the ffmpeg program.
2016-11-16 14:14:28 +01:00
Diego Biurrun
ffe89e1edb configure: Move mjpeg_vaapi_decoder dependency declarations to the right place 2016-11-16 08:21:05 +01:00
Mark Thompson
e0b164576f qsv: Add VP8 decoder 2016-11-14 19:38:20 +00:00
Mark Thompson
b6582b2927 qsv: Add VC-1 decoder
It uses the same code as the MPEG-2 decoder, so the file is renamed
to contain all "other" (that is, not H.26[45]) codecs.
2016-11-14 19:38:19 +00:00
Hendrik Leppkes
575e8d11f1 Merge commit '8c929037ec75fbe9f367e0a31ee34839e92de481'
* commit '8c929037ec75fbe9f367e0a31ee34839e92de481':
  build: Add a new component for H.264 parsing code

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2016-11-14 10:09:44 +01:00
Hendrik Leppkes
0539ff0e1b configure: use check_lib2 for cuda and cuvid
Fixes building for Windows x86 with MSVC using the link libraries distributed with the CUDA SDK.

check_lib2 is required here because it includes the header to get the full signature of the
function, including the stdcall calling convention and all of its arguments, which enables
the linker to determine the fully qualified object name and resolve it through the import
library, since the CUDA SDK libraries do not include un-qualified aliases.
2016-11-13 12:19:15 +01:00
Marton Balint
005d058f42 lavfi/loudnorm: add an internal libebur128 library
Also contains the following changes to the library:
- add ff_ prefix to functions
- remove cplusplus defines.
- add FF_ prefix to contants and some structs
- remove true peak calculation feature, since it uses its own resampler, and
  af_loudnorm does not need it.
- remove version info and some fprintf(stderr) functions
- convert to use av_malloc
- always use histogram mode for LRA calculation, otherwise LRA data is slowly
  consuming memory making af_loudnorm unfit for 24/7 operation. It also uses a
  BSD style linked list implementation which is probably not available on all
  platforms. So let's just remove the classic mode which not uses histogram.
- add ff_thread_once for calculating static histogram tables
- convert some functions to void which cannot fail
- remove intrinsics and some unused headers
- add support for planar audio
- remove channel / sample rate changer function, in ffmpeg usually we simply
  alloc a new context
- convert some static variables to defines
- declare static histogram variables as aligned
- convert some initalizations to mallocz
- add window size parameter to init function and remove window size setter
  function
- convert return codes to AVERROR
- fix indentation

Signed-off-by: Marton Balint <cus@passwd.hu>
2016-11-11 19:37:54 +01:00
Diego Biurrun
12db2832e4 libxvid: Require availability of mkstemp()
The replacement code uses tempnam(), which is dangerous.
Such a fringe feature is not worth the trouble.
2016-11-11 10:17:07 +01:00
Diego Biurrun
2dd464868c configure: Move license checks directly after command line parsing
This will allow to error out immediately if incompatible options are
passed on the command line instead of running time-consuming tests.
2016-11-09 20:51:56 +01:00
Diego Biurrun
c78495d1cd configure: Log name and parameters of all helper functions where it makes sense 2016-11-09 20:51:56 +01:00
Diego Biurrun
8a6e7a67cb configure: Use check_cpp in CPP flags tests 2016-11-09 20:51:56 +01:00
Diego Biurrun
831005b230 configure: Log correct test name and use correct filter when testing objective C flags 2016-11-09 20:51:56 +01:00
Diego Biurrun
fe7bc1f16a configure: Do not unconditionally check for (and enable) xlib
This avoids unnecessarily linking against xlib.
2016-11-09 20:51:55 +01:00
Diego Biurrun
d1a91ebe49 configure: Print list of enabled programs
Also drop a related and now redundant informative output line.
2016-11-09 20:51:55 +01:00
Diego Biurrun
576c9003ae configure: Improve output wording
Also drop a redundant output line.
2016-11-09 20:51:55 +01:00
Diego Biurrun
59d2b00d20 configure: Add --quiet command line parameter to suppress informative output 2016-11-08 17:32:57 +01:00
Matt Oliver
d6f85ec270 avformat/avisynth.c: Use new safe dlopen code.
Signed-off-by: Matt Oliver <protogonoi@gmail.com>
2016-11-05 18:08:53 +11:00
Martin Storsjö
d1ef1b9eaa configure: Silence lld-link when getting the version number
In recent lld-link versions, this command prints the version to
stdout, but also prints an error to stderr:

$ lld-link -flavor gnu --version
LLD 4.0.0 (trunk 285641)
lld-link: error: no input files
lld-link: error: target emulation unknown: -m or at least one .o file required

Signed-off-by: Martin Storsjö <martin@martin.st>
2016-11-04 21:37:57 +02:00
Anton Khirnov
7b1f03477f examples/avcodec: split the remaining two examples into separate files 2016-11-02 10:16:04 +01:00
Anton Khirnov
f5df897c4b examples/avcodec: split audio decoding into a separate example
The four examples (audio/video encoding/decoding) are completely
independent so it makes little sense to have them all in one file.
2016-11-02 10:13:27 +01:00
Anton Khirnov
40aaa8dadf examples/avcodec: split audio encoding into a separate example
The four examples (audio/video encoding/decoding) are completely
independent so it makes little sense to have them all in one file.
2016-11-02 10:11:46 +01:00
Reynaldo H. Verdejo Pinochet
894e7ef9b4 configure: add '-uninstalled' to uninstalled .pc files
pkg-config(1) expects uninstalled pc files to follow the
blah-uninstalled.pc naming convention and the behavior
of the program is impacted by it. Without this fix
overriding PKGP_CONFIG_LIBDIR is required to ensure
uninstalled files are preferred (overkill), instead of
just adding pc-uninstalled/ to the utility's search path
by setting PKG_CONFIG_PATH accordingly.

Signed-off-by: Reynaldo H. Verdejo Pinochet <reynaldo@osg.samsung.com>
2016-10-30 20:50:11 -07:00
Philip Langdale
21b68cdbae avcodec/cuvid: Don't claim to decode h.263 (it doesn't)
Turns out cuvid doesn't support h.263.
2016-10-30 15:47:37 -07:00
Luca Barbato
dad7514f9e xcb: Add all the libraries to the link line explicitly
Avoid an underlink issue on recent distributions.

CC: libav-stable@libav.org
2016-10-30 21:55:03 +01:00
James Almer
c4af48eb27 configure: add missing fork() dependency to http_multiclient example
Signed-off-by: James Almer <jamrial@gmail.com>
2016-10-29 14:45:29 -03:00
Andreas Cadhalpun
890eb3d7c4 configure: make sure LTO does not optimize out the test functions
Fixes trac ticket #5909

Bud-Id: https://bugs.gentoo.org/show_bug.cgi?id=598054
Acked-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2016-10-28 23:58:01 +02:00
James Almer
7400f64211 configure: remove missing incompatible_libav_abi references
Signed-off-by: James Almer <jamrial@gmail.com>
2016-10-26 17:36:07 -03:00
Michael Niedermayer
ded5c88528 configure: Remove --enable-incompatible-libav-abi from the help output
As it does not work anymore since 655b6dcb34

Found-by: carl
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-10-26 19:27:08 +02:00
Matt Oliver
ee05079766 openssl: Support version 1.1.0.
Further simplifications by Martin Storsjö, to minimize the
diff.

Signed-off-by: Martin Storsjö <martin@martin.st>
2016-10-23 22:02:08 +03:00
Matt Oliver
798c6ecce5 openssl: Support version 1.1.0.
Fixes #5675

Signed-off-by: Matt Oliver <protogonoi@gmail.com>
2016-10-21 15:16:44 +11:00
Matthieu Bouron
f62c54456d lavc: add mpeg4 mediacodec decoder 2016-10-19 10:50:52 +02:00
Matthieu Bouron
0f7fce87ea lavc: add vp8/vp9 mediacodec decoders 2016-10-19 10:50:12 +02:00
Diego Biurrun
1f821e5ad3 configure: Print warnings after all other output 2016-10-19 10:13:34 +02:00
Carl Eugen Hoyos
a2c5f5aacf configure: Enable pie for toolchain=hardened. 2016-10-14 14:56:40 +02:00
Andreas Cadhalpun
7a65aef00d configure: fix detection of libopenjpeg
Use check_lib2 to test the header together with the function. This is
necessary, because '-DOPJ_STATIC' changes what the included header does.

Also add '-DOPJ_STATIC' to CPPFLAGS, so that it isn't necessary to
hardcode this in libavcodec/libopenjpeg{dec,enc}.c.

Finally, check for non-static openjpeg 2.1, too.

Reviewed-by: Michael Bradshaw <mjbshaw@gmail.com>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2016-10-13 21:04:19 +02:00
Carl Eugen Hoyos
932bbfc5d8 configure: Use LDEXEFLAGS in check_ld().
Avoids detecting libraries that are not compatible with ldexeflags.
2016-10-12 22:59:10 +02:00
Zhou Xiaoyong
50eee357eb configure: loongson disable mipsfpu and mipsdsp optimizations
The optimizations of mipsdsp are not supported by all loongson cpu.
The optimizations of mipsfpu and mipsdspr2 maybe supported by 3A2000/3A3000/3A4000 but not tested yet.
Loongson only support mmi (loongSIMD) optimizations now.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-10-10 16:05:27 +02:00
Carl Eugen Hoyos
d2af93ac16 configure: Also try -mstack-alignment for clang,
Fixes stack alignment on x86_32 FreeBSD.
Fixes ticket #5231.
2016-10-06 18:44:29 +02:00
Diego Biurrun
20abcaa273 configure: #include stdint.h as part of libxavs test
Unfortunately the xavs.h API header is not self-sufficient and relies
on manual stdint.h inclusion by its users.
2016-10-06 12:32:34 +02:00
Rodger Combs
63fbeebf6e
configure: add linker export script support on Darwin
This isn't a "version script" in the usual sense, since it doesn't set symbol
versions directly. Instead, the version for the whole .dylib is set in the
linker flags, and we generate a list of symbol patterns to export. This allows
us to keep our local symbols (e.g. ff_*) local on the platform.

The Darwin linker's exported_symbols_list format is a bit different than the
one used by the GNU linker. It doesn't handle local symbols at all, since when
a list is provided, all unlisted symbols are local by default; thus, we remove
local sections. It doesn't handle per-version sections, so we remove the
headers and brackets. It expects symbols to be prefixed with an underscore.
It errors if a listed symbol with no wildcards is not present in the output,
so we append an asterisk to any symbol that doesn't already end in one.
2016-10-04 01:11:04 -05:00
Anton Khirnov
5cc0057f49 lavu: remove the custom atomic API
It has been replaced by C11 stdatomic.h and is now unused.
2016-10-02 19:35:55 +02:00
Anton Khirnov
eb34d40354 Add a compat dummy stdatomic.h used when threading is disabled
Adapted from the code by Rémi Denis-Courmont from VLC
2016-10-02 18:57:56 +02:00
Anton Khirnov
f9a6a80e06 Add a compat stdatomic.h implementation based on pthreads
Adapted from the code by Rémi Denis-Courmont from VLC
2016-10-02 18:56:52 +02:00
Anton Khirnov
bb81ed4765 Add a compat stdatomic.h implementation based on suncc atomics
Adapted from the code by Rémi Denis-Courmont from VLC
2016-10-02 18:55:41 +02:00
Anton Khirnov
c2755864af Add a compat stdatomic.h implementation based on windows atomics
Adapted from the code by Rémi Denis-Courmont from VLC
2016-10-02 18:54:28 +02:00
Anton Khirnov
4e928ef340 Add a compat stdatomic.h implementation based on GCC atomics
Adapted from the code by Rémi Denis-Courmont from VLC
2016-10-02 18:52:08 +02:00
Anton Khirnov
13f5d2bf75 configure: check for stdatomic.h
Since this is a C11 feature, it requires -std=c11.

Not actually used for anything yet, that will be added in the following
commits.
2016-10-02 18:49:14 +02:00
Timo Rothenpieler
b7bd5b9794 configure: define posix source on cygwin
Some function definitions are missing without it,
for example sigaction.

Fixes ticket #5868
2016-10-02 17:28:30 +02:00
Josh de Kock
dc0f711459 lavc: remove libfaac wrapper
There is really no need for two aac wrappers, we already have
libfdk-aac which is better. Not to mention that faac doesn't
even support HEv1, or HEv2. It's also under a license which is
unusable for distribution, so it would only be useful to people
who will compile their own ffmpeg, only use it themselves (which
at that point should just use fdk-aac).

Signed-off-by: Josh de Kock <josh@itanimul.li>
2016-10-01 19:58:04 +01:00
James Almer
449f263f9f avcodec: add missing xmm/neon clobber test wrappers for the new encode API
Reviewed-by: Ronald S. Bultje <rsbultje@gmail.com>
Signed-off-by: James Almer <jamrial@gmail.com>
2016-10-01 14:08:50 -03:00
Clément Bœsch
1a9b4bc4c7 doc/examples: build http_multiclient example 2016-09-30 19:35:52 +02:00
Clément Bœsch
3d064b7802 build: remove references to inexistant avcodec example 2016-09-30 19:35:52 +02:00
Clément Bœsch
352ca77f8a build: fix avio_dir_cmd and avio_reading example dependencies 2016-09-30 19:35:51 +02:00
Clément Bœsch
44103c6001 build: sort EXAMPLE_LIST 2016-09-30 19:35:51 +02:00
Anton Khirnov
de2ae3c1fa lavc: add clobber tests for the new encoding/decoding API 2016-09-28 10:01:52 +02:00
Josh de Kock
21344991c0 lavd/sdl2: add sdl alias
This commit also adds an sdl alias for the configure script.
2016-09-25 18:08:06 +01:00
Josh de Kock
47ea6f5c9d lavd: drop SDL1 device and SDL1 support
Signed-off-by: Josh de Kock <josh@itanimul.li>
2016-09-24 16:52:40 +01:00
Marton Balint
9c5fab5ed4 ffplay: add SDL2 support
This commit also drops SDL1 support for ffplay.

Tested-by: James Almer <jamrial@gmail.com> (Windows, mingw-w64)
Signed-off-by: Josh de Kock <josh@itanimul.li>
2016-09-24 16:50:40 +01:00
Josh de Kock
3877e3d8a8 lavd: Add SDL2 output device
Acked-by: Michael Niedermayer
Signed-off-by: Josh de Kock <josh@itanimul.li>
2016-09-24 16:50:40 +01:00
Philip Langdale
843aff3cf7 cuvid: Use bundled headers
We need to remove the dynlink fanciness and replace it with normal
function prototypes and update the include paths and configure logic.

We don't need to explicitly check for PICPARMS now - they're going
to be there.
2016-09-22 18:38:51 -07:00
Matthieu Bouron
140da8e810 lavc: add hevc mediacodec decoder 2016-09-15 21:48:28 +02:00
Diego Biurrun
ab3554e1a7 configure: Drop check_lib()/require() in favor of check_lib2()/require2()
The latter can do everything the former can do, but also handle conditions
the former cannot like multiple header #includes and checking for headers
and functions in a single test program, which is necessary for certain
library tests.
2016-09-13 10:37:01 +02:00
Mark Thompson
a9fb134730 lavc/vaapi: Add VP8 decode hwaccel 2016-09-08 21:58:22 +01:00
Philip Langdale
1891dfe013 cuvid: Add hwaccels and decoders for remaining supported formats
cuvid/nvdecode also supports mpeg1, mpeg2, h.263/mpeg4-asp and mjpeg.

It should, in theory, also support wmv3 via the vc1 support, given
that vdpau supports this. However, it failed to play wmv3 samples
which vdpau played correctly, so I'm not sure what to make of it.

Signed-off-by: Philip Langdale <philipl@overt.org>
Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org>
2016-09-06 21:35:42 +02:00
Diego Biurrun
ec90305844 configure: Simplify clock_gettime() test 2016-09-06 18:13:00 +02:00
Diego Biurrun
0e5dde7399 configure: Fix --disable-pod2man / --disable-texi2html 2016-09-05 11:18:23 +02:00
Diego Biurrun
b8c2d407ef configure: Simplify libopenjpeg check 2016-09-05 11:18:23 +02:00
Diego Biurrun
2610c9528f configure: Move initial VAAPI check to a more sensible place 2016-09-05 11:18:23 +02:00
Matt Oliver
8b4e4bc620 configure: Remove fifo muxers dependency on pthreads.
Signed-off-by: Matt Oliver <protogonoi@gmail.com>
2016-09-04 17:07:22 +10:00
Diego Biurrun
4fb311c804 Drop memalign hack
It no longer serves a useful purpose.
2016-09-03 15:11:29 +02:00
Timo Rothenpieler
1c37be6e95 configure: check for dlsym as well
For some reason, when compiling with gcc-asan and a recent enough gcc
version(seen on 5.3+ so far), linking dlopen works without -ldl, but
dlsym fails with:

undefined reference to symbol 'dlsym@@GLIBC_2.2.5'

So this patchs checks for both dlopen and dlsym to work for determining
if -ldl is needed.
2016-09-03 00:09:39 +02:00
James Almer
f66abefefe configure: add missing check for LoadLibrary
Commit 2b1d316ff6 made nvenc depend on
LoadLibrary, but the availability of the latter was never checked.

This fixes nvenc on Windows platforms

Signed-off-by: James Almer <jamrial@gmail.com>
2016-09-01 13:50:38 -03:00
Timo Rothenpieler
2b1d316ff6 configure: fix ldl dependency for new nvenc encoder names 2016-08-31 20:16:00 +02:00
Timo Rothenpieler
20f0902010 configure: fix nvenc detection logic 2016-08-31 15:40:00 +02:00
Burt P
728e80cd2e High Definition Compatible Digital (HDCD) decoder filter, using libhdcd
Signed-off-by: Burt P <pburt0@gmail.com>
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2016-08-29 19:09:59 +02:00
Timo Rothenpieler
325e56479f avcodec/nvenc: include nvEncodeAPI v7 SDK header
As Nvidia has put the most recent Video Codec SDK behind a double
registration wall, of which one needs manual approval of a lenghty
application, bundling this header saves everyone trying to use NVENC
from that headache.

The header is still MIT licensed and thus fine to bundle with ffmpeg.

Not bundling this header would get ffmpeg stuck at SDK v6, which is
still freely available, holding back future development of the NVENC
encoder.
2016-08-28 16:47:54 +02:00
Paul B Mahol
0429ff4be6 avfilter: add vaguedenoiser filter 2016-08-26 23:17:19 +02:00
Diego Biurrun
46e3936fb0 configure: Set __MSVCRT_VERSION__to 0x0700 for MinGW
This exposes some required functionality like _aligned_malloc() in the
MinGW system headers, thus obviating the need for the memalign hack.
2016-08-23 17:07:26 +02:00
James Almer
69f7aad571 configure: force _WIN32_WINNT >= 0x0502 on mingw32 targets
Windows versions earlier than XP are not supported.

Should fix compilation of command line tools.

Tested-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: James Almer <jamrial@gmail.com>
2016-08-22 17:32:16 -03:00
Jan Sebechlebsky
92b5f8fecd avformat: Add fifo pseudo-muxer
Signed-off-by: Jan Sebechlebsky <sebechlebskyjan@gmail.com>
Signed-off-by: Marton Balint <cus@passwd.hu>
2016-08-22 22:03:37 +02:00
Maya Rashish
23f505bee0 configure: All sun4 machines are SPARCs, not just sun4u
Allow building on sun4v

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-08-15 02:11:03 +02:00
Carl Eugen Hoyos
79dc94a63b configure: Check for arc4random() header definition.
Fixes Cygwin compilation.
2016-08-13 12:14:01 +02:00
Shivraj Patil
6803a298f4 Support for MIPS cpu P6600
Signed-off-by: Shivraj Patil <shivraj.patil@imgtec.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-08-05 11:41:46 +02:00
Anton Khirnov
89aebc5bcc lavc: align the linesize to 32 when AVX is enabled 2016-08-03 10:56:53 +02:00
James Almer
63ac8e2d93 lavu: add LOCAL_ALIGNED_32
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2016-08-03 10:56:52 +02:00
Diego Biurrun
5ed4644d6d x11grab: Rename internal component to "xcbgrab" 2016-07-29 19:03:10 +02:00
Diego Biurrun
4fef648d10 Remove the legacy X11 screen grabber
The XCB screen grabber is a drop-in replacement and not under GPL.
2016-07-29 19:03:10 +02:00
Diego Biurrun
ae90119c67 configure: Simplify license incompatibility check 2016-07-27 10:59:48 +02:00
Martin Storsjö
c5d326f551 Add an OpenH264 decoder wrapper
This is cherrypicked from libav, from commits
82b7525173 and
d0b1e6049b.

Signed-off-by: Martin Storsjö <martin@martin.st>
2016-07-27 10:19:40 +03:00
Martin Storsjö
100fb0ddfd configure: Allow detecting and using LLVM lld-link as linker for windows
Signed-off-by: Martin Storsjö <martin@martin.st>
2016-07-26 09:29:49 +03:00
Martin Storsjö
79fb069299 configure: Move defines for controlling MSVCRT headers to the CRT detection section
This allows these flags to be automatically enabled for clang,
when using MSVCRT headers.

Signed-off-by: Martin Storsjö <martin@martin.st>
2016-07-26 09:29:38 +03:00
Martin Storsjö
56af0bc10f configure: Check for strtoll and redirect to _strtoi64 in the msvcrt block
This allows doing this redirection, if building with clang against
old enough MSVC headers that lack strtoll (2012 and older).

Signed-off-by: Martin Storsjö <martin@martin.st>
2016-07-26 09:29:24 +03:00
Anton Khirnov
ad71d3276f lavfi: add a QSV deinterlacing filter 2016-07-22 19:08:13 +02:00
Anton Khirnov
b0f36a0043 avconv: stop using setpts for input framerate forced with -r
The setpts filter does not signal to the rest of the filtergraph that
the stream is CFR. Just generate the timestamps manually instead.
2016-07-22 19:08:12 +02:00
Martin Storsjö
6f9e34baea arm: Check for support for the .fpu directive
When targeting COFF (windows), clang doesn't support this
directive (while binutils supports it for all targets).

Signed-off-by: Martin Storsjö <martin@martin.st>
2016-07-21 12:52:10 +03:00
James Almer
66408fce49 avformat: add an Ogg Video muxer
Signed-off-by: James Almer <jamrial@gmail.com>
2016-07-20 22:32:43 -03:00
James Almer
114870dbc9 configure: add support for new CPUs
Add new -march values for Intel and AMD CPUs introduced with GCC 5 and 6, and
improve SunCC flags accordingly.

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: James Almer <jamrial@gmail.com>
2016-07-19 20:45:48 -03:00
James Almer
298f556af4 configure: add missing loongson dependencies
Signed-off-by: James Almer <jamrial@gmail.com>
2016-07-16 15:18:58 -03:00
Josh de Kock
d52dd768a3 lavf: add libopenmpt demuxer
Fixes ticket #5623

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-07-15 20:59:25 +02:00
James Almer
fd6dbc5385 Revert "configure: Enable GCC vectorization on ≥4.9 on x86"
This reverts commit cb8646af24.

This change has brough more issues than benefits, between compilation
time failures depending on flags used and code miscompilation causing
runtime crashes.

See the "[PATCH 2/2] configure: Enable GCC vectorization on ≥4.9"
thread in the ffmpeg-devel mailing list for the relevant discussion.
2016-07-09 16:00:06 -03:00
Matthieu Bouron
0f2654c9a3 lavc: add mediacodec hwaccel support 2016-07-08 17:02:37 +02:00
Hendrik Leppkes
1ad4471526 configure: disable the new optimizer in Visual Studio 2015 Update 3
Visual Studio 2015 Update 3 introduced a new SSA optimizer, however
it unfortunately causes miscompilations. Until it is fixed, the new
optimizations are disabled and should be re-checked on subsequent
compiler releases.

Fixes recent FATE failure of fate-lavf-pam on VS2015.
2016-07-03 23:37:44 +02:00
James Almer
293484fa5e avcodec: add missing xmm/neon clobber test wrappers for the new decode API
Reviewed-by: Ronald S. Bultje <rsbultje@gmail.com>
Signed-off-by: James Almer <jamrial@gmail.com>
2016-07-03 18:04:30 -03:00
Diego Biurrun
8c929037ec build: Add a new component for H.264 parsing code
This fixes standalone compilation of the SVQ3 decoder, which had
incomplete dependencies related to H.264 parsing.
2016-06-29 12:31:03 +02:00
Martin Storsjö
82b7525173 Add an OpenH264 decoder wrapper
While it is less featureful (and slower) than the built-in H264
decoder, one could potentially want to use it to take advantage
of the cisco patent license offer.

Signed-off-by: Martin Storsjö <martin@martin.st>
2016-06-28 14:17:43 +03:00
Clément Bœsch
85a52a77ce Merge commit 'b2d5d6a7f20a255a5f3c9bf539cc507afd909ce5'
* commit 'b2d5d6a7f20a255a5f3c9bf539cc507afd909ce5':
  build: Only enable symbol reduction if the compiler does proper DCE

Merged-by: Clément Bœsch <u@pkh.me>
2016-06-27 19:48:21 +02:00
Clément Bœsch
da7c918e80 Merge commit 'c5fd4b50610f62cbb3baa4f4108139363128dea1'
* commit 'c5fd4b50610f62cbb3baa4f4108139363128dea1':
  build: Simplify postprocessing of linker version script files

Merged-by: Clément Bœsch <u@pkh.me>
2016-06-27 19:39:46 +02:00
Rick Kern
729d82abae configure: use c++98 for c++ files
Use c++98 standard instead of c++11.

Signed-off-by: Rick Kern <kernrj@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-06-26 23:25:23 +02:00
Marton Balint
8f9fa49bd8 avdevice/decklink: add support for setting duplex mode
This patch also makes BlackMagic drivers v10.6.1 a hard requirement.

Reviewed-by: Deti Fliegl <deti@fliegl.de>
Signed-off-by: Marton Balint <cus@passwd.hu>
2016-06-26 19:17:56 +02:00
Hendrik Leppkes
613ac3bf82 Merge commit '38392b2af815898b8716826c4e29d95c04fb2647'
* commit '38392b2af815898b8716826c4e29d95c04fb2647':
  hwcontext_vdpau: implement device creation

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2016-06-26 15:24:53 +02:00
Timo Rothenpieler
888a5c7947 avcodec/nvenc: Bring encoder names in line with other encoders 2016-06-25 23:05:17 +02:00
Clément Bœsch
63ac806ccb Merge commit '85ce9636e42dbda06b7d0af76a528a64b113fb3a'
* commit '85ce9636e42dbda06b7d0af76a528a64b113fb3a':
  configure: move the hardware accel libs' entries in the configure output

Merged-by: Clément Bœsch <u@pkh.me>
2016-06-25 11:32:26 +02:00
Clément Bœsch
7bf52e12d4 Merge commit 'c0f4c7db9fea1c07d290a298b8db858b7ceed96d'
* commit 'c0f4c7db9fea1c07d290a298b8db858b7ceed96d':
  configure: move the hardware accel libs' entries in the help text

Merged-by: Clément Bœsch <u@pkh.me>
2016-06-25 11:23:19 +02:00
Clément Bœsch
680ec710ec Merge commit '5e2203448ab4cc8ea1d933b87f1b39b009201044'
* commit '5e2203448ab4cc8ea1d933b87f1b39b009201044':
  configure: improve the help text for external libraries

Only merged the explanation paragraphs. The removal of "enable/disable"
and "[no]" would create too much inconsistency and might cause
confusion.

Merged-by: Clément Bœsch <u@pkh.me>
2016-06-25 11:01:50 +02:00
Rick Kern
8db203a9dd lavd/decklink: Fix compile issue on OS X
Fixes #4124: Invalid argument '-std=c99' not allowed with 'C++/ObjC++'
C++ files fail to compile. This adds '-std=c++11' to CXX_FLAGS to fix.

Signed-off-by: Rick Kern <kernrj@gmail.com>
2016-06-24 21:59:43 -04:00
Derek Buitenhuis
a02766fb4d avcodec: remove libutvideo wrapper support
The 10-bit decoding support is available now in native decoder.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2016-06-23 13:04:11 +02:00
Clément Bœsch
ea80e90e13 Merge commit '1f1ad8ace040a08edc2646ff638ca42a8828779f'
* commit '1f1ad8ace040a08edc2646ff638ca42a8828779f':
  configure: Document --enable-libfontconfig

Merged-by: Clément Bœsch <u@pkh.me>
2016-06-21 22:03:18 +02:00
Anton Khirnov
ac7bfd6967 lavfi: add a QSV scaling filter 2016-06-21 19:53:38 +02:00
Clément Bœsch
ba5100ce84 Merge commit '74beead9bd596180bcac6108548fc0a86d8eb4ae'
* commit '74beead9bd596180bcac6108548fc0a86d8eb4ae':
  mmaldec: limit internal buffering

See 14a90c9ef0

The introduction of the MMAL_PARAMETER_VIDEO_MAX_NUM_CALLBACKS check is
merged.

Merged-by: Clément Bœsch <clement@stupeflix.com>
2016-06-21 13:32:57 +02:00
Paul B Mahol
d78fd2fa21 Add MagicYUV decoder
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2016-06-20 15:45:51 -04:00
Clément Bœsch
0ed14bba12 Merge commit '72da8d9bb24d1b1bf74c2f1108650c0da0054d2e'
* commit '72da8d9bb24d1b1bf74c2f1108650c0da0054d2e':
  h264_parser: remove the remaining dependencies on the h264 decoder

Merged-by: Clément Bœsch <u@pkh.me>
2016-06-19 12:50:24 +02:00
Timo Rothenpieler
88e8aef9e9 avcodec/cuvid: add cuvid decoder 2016-06-10 16:31:23 +02:00
Michael Niedermayer
134cba728b Seperate x264rgb encoder and only enable when its actually supported
This avoids enabling and building the x264rgb encoder when its actually not supported and
thus would not work

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-06-05 17:04:29 +02:00
Paul B Mahol
77f9c4b7aa avocdec: add MagicYUV decoder
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2016-05-31 22:37:09 +02:00
Diego Biurrun
b2d5d6a7f2 build: Only enable symbol reduction if the compiler does proper DCE
With compilers that do not support proper dead code elimination, like
Sun C 5.12, linking fails due to missing references to unavailable,
but also unused, symbols.

Bug-Id: 895
2016-05-30 14:59:43 +02:00
Diego Biurrun
c5fd4b5061 build: Simplify postprocessing of linker version script files
Generate the files in a single postprocessing step w/o intermediate files.
2016-05-29 16:49:16 +02:00
Anton Khirnov
38392b2af8 hwcontext_vdpau: implement device creation 2016-05-26 15:40:33 +02:00
Timo Rothenpieler
09522a303d configure: Don't require nonfree for nvenc
As the nvEncodeApi.h header is now MIT licensed, this can be dropped.
The loaded CUDA and NVENC libraries are part of the nvidia driver, and
thus count as system libraries.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2016-05-19 14:17:03 +02:00
Anton Khirnov
6f58b4dc47 nvenc: drop the hard dependency on CUDA
The code needs only a few definitions from cuda.h, so define them
directly when CUDA is not enabled. CUDA is still required for accepting
HW frames as input.

Based on the code by Timo Rothenpieler <timo@rothenpieler.org>.
2016-05-19 14:17:03 +02:00
Anton Khirnov
2156c4c300 nvenc: write the VUI signal properties for HEVC
Bump the API version requirement to 6.

Based on a patch by Agatha Hu <ahu@nvidia.com>.
2016-05-19 14:17:03 +02:00
Anton Khirnov
85ce9636e4 configure: move the hardware accel libs' entries in the configure output
Print them as a subsection of the external library section, in line with
what is done for the help text in the previous commit.
2016-05-19 13:43:29 +02:00
Anton Khirnov
c0f4c7db9f configure: move the hardware accel libs' entries in the help text
Group them in a subsection of the external library section. That should
make them easier to find and understand how they fit in the scheme of
things.

Also, rewrite the description text in a similar way as in the previous
commit.
2016-05-19 13:41:51 +02:00
Anton Khirnov
5e2203448a configure: improve the help text for external libraries
Add a more accurate description of what the switches actually do (i.e.
allow using the given library, not enabling the corresponding
codecs etc.).

Replace the library descriptions, in many cases boilerplate text without
useful information, with a short summary of what the library does.
2016-05-19 13:40:53 +02:00
Kyle Swanson
c0c378009b avfilter: add loudnorm
Signed-off-by: Kyle Swanson <k@ylo.ph>
2016-05-18 22:15:01 +02:00
Derek Buitenhuis
9f8a942d6a Merge commit '06edef3d5e072ef3c4face9ce946d2d9c36cc477'
* commit '06edef3d5e072ef3c4face9ce946d2d9c36cc477':
  Generate the lists of enabled protocols/bsfs from configure.

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-05-12 14:04:02 +01:00
Derek Buitenhuis
e330ab0fb7 Merge commit 'f1cd9b03f3fa875eb5e394281b4b688cec611658'
* commit 'f1cd9b03f3fa875eb5e394281b4b688cec611658':
  omx: Add support for broadcom OMX on raspberry pi

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-05-11 19:23:15 +01:00
Derek Buitenhuis
0e38723220 Merge commit 'e8919ec486a5559fdcf366e347be0656d904a87f'
* commit 'e8919ec486a5559fdcf366e347be0656d904a87f':
  libavcodec: Add H264/MPEG4 encoders based on OpenMAX IL

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-05-11 19:19:28 +01:00
Derek Buitenhuis
ce3037ac8e Merge commit '330177b508420a553083df94f22cbd5142de0f4a'
* commit '330177b508420a553083df94f22cbd5142de0f4a':
  build: Group declarations for hw-accelerated de-/encoding separately

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-05-11 15:19:06 +01:00
Derek Buitenhuis
38eeb85ff3 Merge commit 'e656a6ccd9cab1b0a79cffe3e609793857aae330'
* commit 'e656a6ccd9cab1b0a79cffe3e609793857aae330':
  configure: cosmetics: Drop pointless end-of-line semicolons

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-05-08 23:57:32 +01:00
Derek Buitenhuis
dc0152548f Merge commit '6bb99757b780144d9fa27cdce09d3621e1a0ed43'
* commit '6bb99757b780144d9fa27cdce09d3621e1a0ed43':
  jack: Support OSX

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-05-08 23:02:33 +01:00
Derek Buitenhuis
939345854a Merge commit '83f230c2445a94fdd94c66504482217fcece5909'
* commit '83f230c2445a94fdd94c66504482217fcece5909':
  lavc: VAAPI MJPEG encoder

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-05-08 22:46:52 +01:00
Derek Buitenhuis
a82d1a8c7a Merge commit '31fe1f2577f8208f79a4b3ab59465e78dd497555'
* commit '31fe1f2577f8208f79a4b3ab59465e78dd497555':
  lavc: VAAPI H.265 encoder

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-05-08 22:45:39 +01:00
Derek Buitenhuis
b975aeec02 Merge commit '2c62fcdf5d617791a653d7957d449f75569eede0'
* commit '2c62fcdf5d617791a653d7957d449f75569eede0':
  lavc: VAAPI H.264 encoder

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-05-08 22:43:52 +01:00
Derek Buitenhuis
508957fd0f Merge commit '104c804bcaac24b52eb51ed17df2fb311e6ae73e'
* commit '104c804bcaac24b52eb51ed17df2fb311e6ae73e':
  lavc: VAAPI encode common infrastructure

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-05-08 22:41:12 +01:00
Derek Buitenhuis
172d3568b3 Merge commit '5d273d3efac340ef8de445c955ff44c7abed4e8f'
* commit '5d273d3efac340ef8de445c955ff44c7abed4e8f':
  avconv: VAAPI hwcontext initialisation and hwaccel helper

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-05-08 22:39:39 +01:00
Carl Eugen Hoyos
017d42ebc6 configure: Only utvideo <= 15.3.0 is supported.
Fixes ticket #5511.
2016-05-06 19:42:35 +02:00
Diego Biurrun
1f1ad8ace0 configure: Document --enable-libfontconfig 2016-05-05 10:47:00 +02:00
Rick Kern
dc750194b6 lavc/videotoolboxenc: Set colorimetry values
Signed-off-by: Rick Kern <kernrj@gmail.com>
2016-05-04 18:40:40 +02:00
Derek Buitenhuis
a454ad670c Merge commit 'add1467e5e447b79e8743a0b05c54dcf58c61dfe'
* commit 'add1467e5e447b79e8743a0b05c54dcf58c61dfe':
  svq3: drop the build dependency on the h264 decoder

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-05-03 10:57:36 +01:00
Janne Grunau
c267413321 Revert "mmaldec: autodetect by default" since it breaks linking on systems without mmal libraries
This reverts commit 33ac77e850.
2016-04-30 16:05:32 +02:00
Carl Eugen Hoyos
a2810d03b9 configure: Add pixelutils dependency for framerate filter. 2016-04-30 13:35:24 +02:00
wm4
33ac77e850 mmaldec: autodetect by default
It qualifies as a system library.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2016-04-30 08:34:10 +02:00
wm4
74beead9bd mmaldec: limit internal buffering
This uses a new MMAL feature, which limits the number of extra frames
that can be buffered within the decoder. VIDEO_MAX_NUM_CALLBACKS can
be defined as positive or negative number. Positive numbers are
absolute, and can lead to deadlocks if the user underestimates the
number of required buffers. Negative numbers specify the number of extra
buffers, e.g. -1 means no extra buffer, (-1-N) means N extra buffers.

Set a gratuitous default of -11 (N=10). This is much lower than the
firmware default, which appears to be 96.

This is backwards compatible, but needs a symbol only present in newer
firmware headers. (It's an enum item, so it requires a check in
configure.)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2016-04-30 08:31:08 +02:00
wm4
84bba36846 configure: fix mmal build dependencies
The mmal decoders do not depend on the software decoders.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2016-04-30 08:27:48 +02:00
wm4
9a382f3639 mmaldec: add vc1 decoding support
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2016-04-30 08:19:53 +02:00
Julian Scheel
d52208e8d5 mmaldec: Add mpeg2 decoding support
Register mmaldec as mpeg2 decoder. Supporting mpeg2 in mmaldec is just a
matter of setting the correct MMAL_ENCODING on the input port. To ease the
addition of further supported mmal codecs a macro is introduced to generate
the decoder and decoder class structs.

Signed-off-by: Julian Scheel <julian@jusst.de>
Signed-off-by: wm4 <nfxjfg@googlemail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2016-04-30 08:11:13 +02:00
Dave Yeo
3cb3dddeb4 configure: Allow choice in choosing a symlink command
Signed-off-by: Dave Yeo <daveryeo@telus.net>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-04-28 02:33:10 +02:00
Dmitriy Kuminov
5d7696fe2b configure: Do not create/install versioned DLLs on OS/2.
Only one DLL for each module must be present on OS/2: SLIBNAME_WITH_MAJOR
(the same as on Windows). Creating other DLLs makes no sense as they can't
be used.

Signed-off-by: Dave Yeo <daveryeo@telus.net>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-04-28 02:32:53 +02:00
Timo Rothenpieler
bc4137d4aa configure: Don't require nonfree for nvenc
As the nvEncodeApi.h header is now MIT licensed, this can be dropped.
The loaded CUDA and NVENC libraries are part of the nvidia driver, and
thus count as system libraries.
2016-04-27 20:17:33 +02:00
Derek Buitenhuis
896fce8509 Merge commit '159323897f545e7405fb9db234e0ba123e174376'
* commit '159323897f545e7405fb9db234e0ba123e174376':
  intrax8: Add a local BlockDSPContext and initialize it

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-24 12:36:23 +01:00
Derek Buitenhuis
83e0b1b1d7 Merge commit '68127e1bf8037a6e0acd6401cc8c5da950e3fa0a'
* commit '68127e1bf8037a6e0acd6401cc8c5da950e3fa0a':
  intrax8: Keep a reference to the context idctdsp

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-24 12:19:53 +01:00
Anton Khirnov
72da8d9bb2 h264_parser: remove the remaining dependencies on the h264 decoder 2016-04-24 10:06:24 +02:00
Anton Khirnov
06edef3d5e Generate the lists of enabled protocols/bsfs from configure. 2016-04-19 13:34:07 +02:00
Derek Buitenhuis
94e5f0922b Merge commit '8a02a8031ef4f98faf5647f0e01a8922247bf748'
* commit '8a02a8031ef4f98faf5647f0e01a8922247bf748':
  lavfi: add an NVIDIA NPP-based scaling filter

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-18 15:34:04 +01:00
Derek Buitenhuis
34245eccaf Merge commit '98114d70e48caf871b0fe9b8e5bf8ebd989b845d'
* commit '98114d70e48caf871b0fe9b8e5bf8ebd989b845d':
  lavf: VAAPI scale filter

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-18 15:22:24 +01:00
Derek Buitenhuis
8f540b8612 Merge commit '65a802401c6cc136576bb2e613c0577cbf622aa8'
* commit '65a802401c6cc136576bb2e613c0577cbf622aa8':
  build: Add component for the SRTP common code

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-17 19:39:57 +01:00
Derek Buitenhuis
909f5e7100 Merge commit '0c6a70873fc6e43194b471d112c30823b6c8d0b4'
* commit '0c6a70873fc6e43194b471d112c30823b6c8d0b4':
  intrax8: Move error resilience out of intrax8

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-17 19:09:12 +01:00
Derek Buitenhuis
af9cac1be1 Merge commit '33d18982fa03feb061c8f744a4f0a9175c1f63ab'
* commit '33d18982fa03feb061c8f744a4f0a9175c1f63ab':
  lavc: add a new bitstream filtering API

Conversions-by: Hendrik Leppkes <h.leppkes@gmail.com>
Conversions-by: Derek Buitenguis <derek.buitenhuis@gmail.com>
Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-17 18:47:40 +01:00
Derek Buitenhuis
28abb216cb Merge commit '551c6775abb5e0ad34c26d7e23bc6fbbe8ccc9d4'
* commit '551c6775abb5e0ad34c26d7e23bc6fbbe8ccc9d4':
  lavu: VAAPI hwcontext implementation

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-14 13:49:55 +01:00
Derek Buitenhuis
37f4cdb937 Merge commit '59b9d2f684f1ff66627ca2b7d2dd05771ade62f0'
* commit '59b9d2f684f1ff66627ca2b7d2dd05771ade62f0':
  configure: Add support for clang llvm-cov

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-13 17:29:10 +01:00
Derek Buitenhuis
6e6b1fe7f7 Merge commit 'c11a8586264520e6afcddc52156f4a1fd2fb07b2'
* commit 'c11a8586264520e6afcddc52156f4a1fd2fb07b2':
  configure: Support msan as toolchain

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-13 17:28:44 +01:00
Rodger Combs
b20d3bf4a4
lavc/audiotoolboxdec: avoid relying on consumer-provided params when possible 2016-04-13 03:27:29 -05:00
Martin Storsjö
f1cd9b03f3 omx: Add support for broadcom OMX on raspberry pi
The raspberry pi uses the alternative API/ABI for OMX; this makes
such builds incompatible with all the normal OpenMAX implementations.
Since this can't easily be detected at configure time (one can
build for raspberry pi's OMX just fine using the generic, pristine
Khronos OpenMAX IL headers, no need for their own extensions),
require a separate configure switch for it instead.

The broadcom host library can't be unloaded once loaded and started;
the deinit function that it provides is a no-op, and after started,
it has got background threads running, so dlclosing it makes it
crash.

Signed-off-by: Martin Storsjö <martin@martin.st>
2016-04-12 13:50:59 +03:00
Martin Storsjö
e8919ec486 libavcodec: Add H264/MPEG4 encoders based on OpenMAX IL
Signed-off-by: Martin Storsjö <martin@martin.st>
2016-04-12 13:50:57 +03:00
Diego Biurrun
330177b508 build: Group declarations for hw-accelerated de-/encoding separately 2016-04-07 15:26:08 +02:00
Diego Biurrun
e656a6ccd9 configure: cosmetics: Drop pointless end-of-line semicolons 2016-04-07 15:23:21 +02:00
Rodger Combs
b4daa2c40f lavc/audiotoolboxdec: add eac3 decoder
This is added in 10.11, so we add a #define when building against older SDKs.

The decoder actually supports 7.1-channel eac3, but since the parser only
reports 6 channels, we end up decoding the 5.1 downmix (same as the internal
decoder) for now.
2016-04-02 03:03:13 -05:00
Josh de Kock
6bb99757b7 jack: Support OSX
Previously, with JACK installed, the configure script would enable the
JACK indev; this broke on OS X due to an incomplete pthreads
implementation. Add some simple macros to map libdispatch to pthreads
on OS X.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2016-03-31 18:03:21 +02:00
Alex Smith
a677121cc5 configure: Fix debugging on mingw-w64 with gdb
The relocation hack broke debugging on mingw-w64 when using gdb.  This
makes the reloc hack dependent on --disable-debug so it's still enabled
for release builds.

This is simply an immediate fix for the issue of broken debugging, we
should probably still look at the possibility of reverting it outright
if it proves to be more trouble than it's worth.  For now keeping it
enabled for release builds is a reasonable trade off.

Signed-off-by: Alex Smith <theryuu@warpsharp.info>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-03-31 14:34:17 +02:00
Mark Thompson
83f230c244 lavc: VAAPI MJPEG encoder
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2016-03-30 09:11:44 +02:00
Mark Thompson
31fe1f2577 lavc: VAAPI H.265 encoder
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2016-03-30 09:11:25 +02:00
Mark Thompson
2c62fcdf5d lavc: VAAPI H.264 encoder
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2016-03-30 09:10:26 +02:00
Mark Thompson
104c804bca lavc: VAAPI encode common infrastructure
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2016-03-30 09:05:28 +02:00
Mark Thompson
5d273d3efa avconv: VAAPI hwcontext initialisation and hwaccel helper
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2016-03-30 09:04:53 +02:00
Anton Khirnov
add1467e5e svq3: drop the build dependency on the h264 decoder 2016-03-28 09:58:26 +02:00
Timo Rothenpieler
665c05f7cb configure: Fail if CUDA enabled but not found
Without this patch, configure still passes and enables CUDA, no matter
if it was actually found, breaking the build in case it was not.
2016-03-28 01:14:36 +02:00
Kieran Kunhya
e259dc86a8 avcodec: Remove libdcadec, we already have it merged internally 2016-03-27 04:21:38 +01:00
Vittorio Giovara
159323897f intrax8: Add a local BlockDSPContext and initialize it
Helps in decoupling this code from mpegvideo.
2016-03-25 15:55:49 -04:00
Vittorio Giovara
68127e1bf8 intrax8: Keep a reference to the context idctdsp
Use it instead of the embedded mpegvideo one. Update init function
signature to load it directly from the callers.
2016-03-25 15:52:24 -04:00
Thilo Borgmann
4d251723c0 lavfi: Add coreimage filter for GPU based image filtering on OSX. 2016-03-25 17:18:49 +01:00
Anton Khirnov
8a02a8031e lavfi: add an NVIDIA NPP-based scaling filter 2016-03-23 19:55:34 +01:00
Mark Thompson
98114d70e4 lavf: VAAPI scale filter
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2016-03-23 19:40:15 +01:00
Diego Biurrun
65a802401c build: Add component for the SRTP common code
This allows expressing the SRTP test code dependencies more clearly.
2016-03-23 09:35:41 +01:00
Vittorio Giovara
0c6a70873f intrax8: Move error resilience out of intrax8
The intrax8 decoding process does not imply any kind of error
resilience, and the only call present is more related to how mpegvideo
works rather than anything else.

Therefore have the parent decoders carry out er when actually needed.
2016-03-22 16:51:09 -04:00
Rodger Combs
65cff81453 lavc: add AudioToolbox encoders
Fixes trac #4828
2016-03-22 12:43:14 -05:00
Rodger Combs
d5d328059e lavc: add AudioToolbox decoders
Part of trac #4828
2016-03-22 12:43:14 -05:00
Carl Eugen Hoyos
30d1213ecd configure: Remove (b)zlib and iconv dependencies for videoltoolbox encoder. 2016-03-22 01:30:33 +01:00
Anton Khirnov
33d18982fa lavc: add a new bitstream filtering API
Deprecate the current bitstream filtering API.
2016-03-20 08:15:01 +01:00
Mark Thompson
551c6775ab lavu: VAAPI hwcontext implementation
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2016-03-19 15:40:22 +01:00
Hendrik Leppkes
7d9e064cc1 configure: check for SEC_I_CONTEXT_EXPIRED before enabling SChannel
Fixes build on mingw32, which lacks this constant.
2016-03-16 15:31:21 +01:00
İsmail Dönmez
fa3eecf9ab configure: Use lowercase includes/library names for schannel check.
Fixes cross-build on Linux with mingw-w64.

Reviewed-by: Reimar Döffinger
Reviewed-by: Hendrik Leppkes
2016-03-16 09:20:39 +01:00
Shivraj Patil
15ef98afd1 configure: build fix for P5600 along option --disable-msa
Signed-off-by: Shivraj Patil <shivraj.patil@imgtec.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-03-11 23:57:06 +01:00
Carl Eugen Hoyos
a62d768894 configure: Check for msghdr struct.
Some (Solaris) systems apparently have an incompatible msghdr struct
breaking sctp protocol compilation.

Reported-by: mvelanka
2016-03-09 14:17:46 +01:00
Shivraj Patil
8ca2c872b6 configure: build fix for P5600 with mips code restructuring
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-03-08 17:36:46 +01:00
Shivraj Patil
b59d06d5f4 configure: add check_inline_asm_flags()
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-03-08 17:36:46 +01:00
Luca Barbato
59b9d2f684 configure: Add support for clang llvm-cov 2016-03-07 16:59:00 +01:00
Luca Barbato
c11a858626 configure: Support msan as toolchain 2016-03-07 16:59:00 +01:00
Matthieu Bouron
4737fe6907 lavc: add h264 mediacodec decoder 2016-03-07 11:28:29 +01:00
Matthieu Bouron
3ab178516e lavc: add JNI support 2016-03-07 11:17:31 +01:00
Timo Rothenpieler
95a5fd4581 configure: NVENC API version 6 is now required 2016-03-04 23:03:14 +01:00
Rick Kern
3af71ac3f9 lavc: add VideoToolbox H.264 Encoder
Autodetected by default. Encode using -codec:v h264_videotoolbox.

Signed-off-by: Rick Kern <kernrj@gmail.com>
Signed-off-by: wm4 <nfxjfg@googlemail.com>
2016-03-02 21:19:35 +01:00
Derek Buitenhuis
9c75148e6e Merge commit '2758cdedfb7ac61f8b5e4861f99218b6fd43491d'
This commit also disables the async fate test, because it
used internal APIs in a non-kosher way, which no longer
exists.

* commit '2758cdedfb7ac61f8b5e4861f99218b6fd43491d':
  lavf: reorganize URLProtocols

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-02-29 16:51:10 +00:00
Clément Bœsch
98084adccf build: add --install-name-dir=DIR Darwin option
This option is typically useful when cross-compiling dynamic libraries
for iOS, with something such as --install-name-dir=@rpath
2016-02-29 11:01:24 +01:00
Andreas Cadhalpun
15708f1347 configure: add direct detection of libopencv
The pkg-config file contains all opencv libraries, not only the
neccessary ones.

This change makes it possible to use the libopencv-imgproc-dev Debian
package instead of libopencv-dev, saving about 200 MB of useless
build-dependencies.

In particular one doesn't need to install the parts of opencv that
depend on ffmpeg libraries.

Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
Reviewed-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-02-28 02:47:12 +01:00
Vicente Olivert Riera
5156578d1f mips: do not disable any feature for generic cores
We don't know which features are available when the user selects a
generic core, so don't disable anything by default and let the user
decide.

Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-02-27 04:22:56 +01:00
Vicente Olivert Riera
8514fb6b98 mips: improve detection of ISAs, FPU and ASEs (DSP, MSA)
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-02-27 04:22:55 +01:00
Matthieu Bouron
885a6d8324 configure: only check dispatch header on darwin
Fixes build of lavd/jack on linux if dispatch happens to be available on
this platform. dispatch, as well as its dependencies kqueue and pwq are
generally not installed / distribued on linux systems. If it happens to
be the case, you want to explicitely link against the libraries (using
-ldispatch) as opposed to darwin where it is part of the standard
library and -ldispatch doesn't work.
2016-02-26 09:23:17 +01:00
Matthieu Bouron
666e2edc41 configure: add missing --strip option to show_help() 2016-02-25 21:21:39 +01:00
James Almer
fc404460bd configure: add missing vc1dsp dependency to vc1_decoder
Fixes compilation of vc1_decoder when vc1_parser is not enabled

Signed-off-by: James Almer <jamrial@gmail.com>
2016-02-24 15:49:51 -03:00
Derek Buitenhuis
ef7ce480c8 Merge commit 'd24bd96bdd5b4bae9a9e0055fa8d1104db1283a9'
* commit 'd24bd96bdd5b4bae9a9e0055fa8d1104db1283a9':
  build: Disentangle VC-1 decoder and parser

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-02-24 18:23:36 +00:00
Derek Buitenhuis
b056482ef3 Merge commit '15a24614aef5836af3cd2c7cc3b2b737eee6bf3c'
* commit '15a24614aef5836af3cd2c7cc3b2b737eee6bf3c':
  build: Add vc1dsp component for more fine-grained dependencies

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-02-24 18:21:38 +00:00
Derek Buitenhuis
d61849f0b7 Merge commit 'b10c33c5ea9a41c41726fb5488ea1633e3f898ac'
* commit 'b10c33c5ea9a41c41726fb5488ea1633e3f898ac':
  build: Add missing mpegvideo dependency for the MSS2 and VC-1 decoders

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-02-24 18:12:26 +00:00
Derek Buitenhuis
0ffaae60e8 Merge commit '7d16d8533daf73b66d318c5e27de3b17208aa0ba'
* commit '7d16d8533daf73b66d318c5e27de3b17208aa0ba':
  build: More precise dependencies for h264dsp

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-02-24 18:11:03 +00:00
Derek Buitenhuis
745d0c0300 Merge commit '624e235502c5aa2d17e22dd6c0ccdf080a177310'
* commit '624e235502c5aa2d17e22dd6c0ccdf080a177310':
  build: Introduce iso_media component

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-02-24 17:53:30 +00:00
Derek Buitenhuis
34e4c588c8 Merge commit '82454c3a826bc8aa42474097784b70befd5be532'
* commit '82454c3a826bc8aa42474097784b70befd5be532':
  build: Let the WTV demuxer select the MPEG-TS demuxer
  build: Adjust mpeg4video parser dependencies
  build: Fix mpegvideo component dependencies
  build: Fix dependencies for components relying on H.263 data tables

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-02-24 17:46:10 +00:00
Derek Buitenhuis
ef9915a0e2 Merge commit '21f7cd4acd8dc4b4796b55966dd015cb037164d8'
* commit '21f7cd4acd8dc4b4796b55966dd015cb037164d8':
  lavfi: add a filter for uploading normal frames to CUDA

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-02-24 17:02:48 +00:00
Anton Khirnov
9f2c1c77d2 configure: Allow linking to CUDA dynamically instead of dlopen()ing it at runtime
This currently doesn't do anything, but will be used later for hwaccel
filters and libavutil.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-02-24 15:05:13 +00:00
Muhammad Faiz
bfc61b0fcc avfilter: add firequalizer filter
Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Muhammad Faiz <mfcc64@gmail.com>
2016-02-23 00:44:07 +07:00
Anton Khirnov
2758cdedfb lavf: reorganize URLProtocols
Instead of a linked list constructed at av_register_all(), store them
in a constant array of pointers.

Since no registration is necessary now, this removes some global state
from lavf. This will also allow the urlprotocol layer caller to limit
the available protocols in a simple and flexible way in the following
commits.
2016-02-22 11:30:58 +01:00
Josh de Kock
67f8a0be54 configure&avdevice/jack: Fixed issue #43 JACK indev support on OSX
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-02-22 00:46:49 +01:00
Carl Eugen Hoyos
e6cbe3ffef configure: Fix webm_dash_manifest demuxer standalone compilation. 2016-02-20 00:29:55 +01:00
Diego Biurrun
d24bd96bdd build: Disentangle VC-1 decoder and parser 2016-02-19 20:38:18 +01:00
Diego Biurrun
15a24614ae build: Add vc1dsp component for more fine-grained dependencies 2016-02-19 20:38:18 +01:00
Diego Biurrun
b10c33c5ea build: Add missing mpegvideo dependency for the MSS2 and VC-1 decoders 2016-02-19 20:38:17 +01:00
Diego Biurrun
7d16d8533d build: More precise dependencies for h264dsp 2016-02-19 20:38:17 +01:00
Diego Biurrun
b4a0f172c7 Revert all recent configure changes related to dependency resolution
This reverts commits 2edc718723, a2bb771a3c, 21c750f240, 8e7bea6dc6.
2016-02-19 13:43:52 +01:00
Michael Niedermayer
8fdee3ee8f Revert 4 commits to configure which broke dependency handling
Revert "configure: Don't enable examples when --disable-everything is used"
reverted as the problematic commit will be reverted too
This reverts commit 02dfa64c08.

Revert "Merge commit 'a2bb771a3cded8a05137c0effb34f61a2bc78e22'"
This reverts commit e8ebcb0034, reversing
changes made to 3bff005be8.

Revert "Merge commit '21c750f240b9d0c41a258d1adee2d9f75ff378b6'"
This reverts commit 470bfab470, reversing
changes made to f97ee815cf.

Revert "Revert "configure: Revert recent changes to disable-everything""
This reverts commit f97ee815cf.

Reviewed-by: Hendrik Leppkes <h.leppkes@gmail.com>
Immediate commit suggested by BBB
2016-02-18 16:28:30 +01:00
Diego Biurrun
624e235502 build: Introduce iso_media component 2016-02-18 15:35:46 +01:00