Commit Graph

5094 Commits

Author SHA1 Message Date
Alexander Bilyak 9fd11e5188 configure: fix clang-cl detection
When using clang-cl it expects parameters passed in MSVC-style, so appropriate toolchain should be selected.
As soon as both clang and clang-cl report themselfs as "clang" with -v option the only chance to detect
clang-cl is passing -? option to both which is valid for clang-cl.exe and not for clang.exe.

Reviewed-by: Dale Curtis <dalecurtis@chromium.org>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-04-15 17:37:00 +02:00
Steve Lhomme aedbf1640c avutil/random_seed: use bcrypt instead of the old wincrypt API
Remove the wincrypt API calls since we don't support XP anymore and bcrypt is
available since Vista, even on Windows Store builds.

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: James Almer <jamrial@gmail.com>
2018-04-14 18:31:25 -03:00
Michael Niedermayer 876f9ac9a6 configure: make the C11 atomics check more robust
C11 atomics allow direct access. This check should prevent the usage
of bogus stdatomic.h available on some systems.

Signed-off-by: James Almer <jamrial@gmail.com>
2018-04-13 11:08:17 -03:00
James Almer e7a2f1f8d8 configure: disable direct stripping in OpenBSD
It appears strip -o creates new files without preserving permissions
from the source binary, resulting in non executable files.

Signed-off-by: James Almer <jamrial@gmail.com>
2018-04-13 11:01:29 -03:00
Carl Eugen Hoyos b5c877a554 configure: Disable direct stripping for AIX.
AIX strip doesn't know the option -o.
2018-04-12 02:30:21 +02:00
James Almer aea610b0d6 configure: check for INIT_ONCE before enabling w32threads
Should fix compilation wiht some old mingw-w64 builds that
don't seem to define it.

Signed-off-by: James Almer <jamrial@gmail.com>
2018-04-10 20:45:17 -03:00
James Almer 234a5e0831 configure: check that the required header for Linux Perf is available
Should fix compilation on targets like some old Android NDK versions.

Signed-off-by: James Almer <jamrial@gmail.com>
2018-04-10 20:43:25 -03:00
Michael Niedermayer 8247e0304e configure: fix build
regression since 8f1382f80e
2018-04-01 02:58:42 +02:00
Josh de Kock 65452bcd64 lavd: remove linked lists
Signed-off-by: Josh de Kock <josh@itanimul.li>
2018-03-31 23:26:31 +01:00
Josh de Kock d8ae40611b Revert "lavd: add new API for iterating input and output devices"
This reverts commit 0fd475704e.

Revert "lavd: fix iterating of input and output devices"

This reverts commit ce1d77a5e7.

Signed-off-by: Josh de Kock <josh@itanimul.li>
2018-03-31 23:26:31 +01:00
Josh de Kock 8f1382f80e lavfi: add new iteration API
Signed-off-by: Josh de Kock <josh@itanimul.li>
2018-03-31 23:26:30 +01:00
Martin Storsjö f33f728470 arm: swscale: Only compile the rgb2yuv asm if .dn aliases are supported
Vanilla clang supports altmacro since clang 5.0, and thus doesn't
require gas-preprocessor for building the arm assembly any longer.

However, the built-in assembler doesn't support .dn directives.

This readds checks that were removed in d7320ca3ed, when
the last usage of .dn directives within libav were removed.

Alternatively, the assembly could be rewritten to not use the
.dn directive, making it available to clang users.

Signed-off-by: Martin Storsjö <martin@martin.st>
2018-03-31 21:54:56 +03:00
James Almer a123e576a4 Merge commit 'a2fc8dbae85339d1b418d296f2982b6c04c53c57'
* commit 'a2fc8dbae85339d1b418d296f2982b6c04c53c57':
  Add Haivision SRT protocol

Merged-by: James Almer <jamrial@gmail.com>
2018-03-29 21:56:19 -03:00
James Almer 75bf51ef87 Merge commit '434b44cd6fb4bb9a2bf2bb29ef55ce1a315314b8'
* commit '434b44cd6fb4bb9a2bf2bb29ef55ce1a315314b8':
  configure: Simplify vararg check

Merged-by: James Almer <jamrial@gmail.com>
2018-03-29 21:30:16 -03:00
James Almer e46fab0f3c Merge commit '8c7554e6a9b126bd6ee5bf80dae9e11e056db2f1'
* commit '8c7554e6a9b126bd6ee5bf80dae9e11e056db2f1':
  configure: Add check_x86asm() helper function to simplify some expressions

Merged-by: James Almer <jamrial@gmail.com>
2018-03-29 21:25:43 -03:00
James Almer 91bcf0b8cd Merge commit '17ee5b0c13bc17465b71bc9ca1cde9f0eed8b3ff'
* commit '17ee5b0c13bc17465b71bc9ca1cde9f0eed8b3ff':
  configure: Use indirection for the -o assembler flag also for x86asm

Merged-by: James Almer <jamrial@gmail.com>
2018-03-29 21:15:18 -03:00
James Almer 3bbec8e7c2 Merge commit 'b9ea301e02472d0982b0fa0f80294bd95885bde8'
* commit 'b9ea301e02472d0982b0fa0f80294bd95885bde8':
  configure: Use a more sensible suffix for x86 assembly tempfiles

Merged-by: James Almer <jamrial@gmail.com>
2018-03-29 21:06:25 -03:00
James Almer 44df2e8588 Merge commit '5292e97c42b05db7ad4e51c1ea756b12fdf721ff'
* commit '5292e97c42b05db7ad4e51c1ea756b12fdf721ff':
  configure: Document available options for the --toolchain parameter

Merged-by: James Almer <jamrial@gmail.com>
2018-03-29 21:03:33 -03:00
James Almer 23f4472944 Merge commit 'ea2f72a2c14c67a3b35dac6426d1e3c0fae33fd5'
* commit 'ea2f72a2c14c67a3b35dac6426d1e3c0fae33fd5':
  configure: Don't assume a 16 byte aligned stack on BSDs on i386

Merged-by: James Almer <jamrial@gmail.com>
2018-03-29 20:40:07 -03:00
James Almer 7e3c4d029b Merge commit '847190ebd99ffd57dc89bd568a33bf2d5c424129'
* commit '847190ebd99ffd57dc89bd568a33bf2d5c424129':
  configure: Don't assume an aligned stack on clang on windows

Merged-by: James Almer <jamrial@gmail.com>
2018-03-29 20:31:03 -03:00
James Almer 99cc3cf7a2 Merge commit '43778a501f1bfbceeddc8eaeea2ea2b3506beeda'
* commit '43778a501f1bfbceeddc8eaeea2ea2b3506beeda':
  Support AV1 encoding using libaom

This contains some extra changes taken from the libvpx encoder
wrapper, most of them contained in the set_pix_fmt() function.

Merged-by: James Almer <jamrial@gmail.com>
2018-03-29 00:05:45 -03:00
James Almer 0dc11d8bbd Merge commit 'c438899a706422b8362a13714580e988be4d638b'
* commit 'c438899a706422b8362a13714580e988be4d638b':
  Add AV1 video decoding support through libaom

This contains some extra changes taken from the libvpx decoder
wrapper, most of them contained in the set_pix_fmt() function.

Merged-by: James Almer <jamrial@gmail.com>
2018-03-28 18:09:46 -03:00
James Almer 18195e570c Merge commit 'dd7e63af93b2430b5d42b87a966160c66736342c'
* commit 'dd7e63af93b2430b5d42b87a966160c66736342c':
  configure: Restore original endianness test

The test was not changed in 67e8f476b7
Merging only the explanation.

Merged-by: James Almer <jamrial@gmail.com>
2018-03-28 15:39:26 -03:00
James Almer 23ba9b3fd1 Merge commit '31a53ab34e22fe1eec902f79ec1f19ab828a7a0c'
* commit '31a53ab34e22fe1eec902f79ec1f19ab828a7a0c':
  configure: Add check_as() helper function to simplify some expressions

Merged-by: James Almer <jamrial@gmail.com>
2018-03-28 15:28:13 -03:00
James Almer c00b218a8f Merge commit '18dc1ff0fb4572b1d50a44905aa1e76bc3bbb0ad'
* commit '18dc1ff0fb4572b1d50a44905aa1e76bc3bbb0ad':
  configure: Add check_ld() helper function to simplify some expressions

Merged-by: James Almer <jamrial@gmail.com>
2018-03-28 15:19:35 -03:00
James Almer 67e8f476b7 Merge commit '9c37d765ef28b027414f86b0088b0c282a3c46d8'
* commit '9c37d765ef28b027414f86b0088b0c282a3c46d8':
  configure: Add check_cc/require_cc helper functions to simplify some expressions

Merged-by: James Almer <jamrial@gmail.com>
2018-03-28 15:03:56 -03:00
Sven Dueking a2fc8dbae8 Add Haivision SRT protocol
The protocol requires libsrt (https://github.com/Haivision/srt) to be
installed

Signed-off-by: Sven Dueking <sven.dueking@nablet.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2018-03-28 16:16:41 +02:00
Diego Biurrun 2124a97a49 configure: Drop unused helper function test_cflags_cpp() 2018-03-27 13:38:20 +02:00
Danil Iashchenko 9f17875134 libavfilter: Add OpenCL convolution filter
Behaves like existing convolution filter.

Signed-off-by: Mark Thompson <sw@jkqxz.net>
2018-03-26 22:26:35 +01:00
Diego Biurrun 434b44cd6f configure: Simplify vararg check 2018-03-26 18:59:44 +02:00
Diego Biurrun 8c7554e6a9 configure: Add check_x86asm() helper function to simplify some expressions 2018-03-26 18:59:43 +02:00
Diego Biurrun 17ee5b0c13 configure: Use indirection for the -o assembler flag also for x86asm
Similar indirections are used for the -o compiler/assembler flag to
account for differences in compiler/assembler syntax. For x86asm half
the infrastructure for doing the same currently exists unused.
Finish and use that infrastructure for consistency.
2018-03-26 18:54:56 +02:00
Diego Biurrun b9ea301e02 configure: Use a more sensible suffix for x86 assembly tempfiles 2018-03-26 18:52:04 +02:00
Diego Biurrun 5292e97c42 configure: Document available options for the --toolchain parameter 2018-03-26 18:52:04 +02:00
Mark Thompson ac993e73de hwcontext_opencl: Add support for mapping DRM objects to Beignet
Also use that to support mapping VAAPI to Beignet.
2018-03-22 23:19:00 +00:00
drfer3 6135c958cd lavfi: Add OpenCL avgblur filter
Behaves like the existing avgblur filter, except working on OpenCL
hardware frames. Takes exactly the same options.

Signed-off-by: Mark Thompson <sw@jkqxz.net>
2018-03-22 23:16:25 +00:00
James Almer d8ca7a7e70 configure: add const_nan dependency to h264_metadata_bsf
Fixes compilation with some compilers.

Reviewed-by: jkqxz
Signed-off-by: James Almer <jamrial@gmail.com>
2018-03-18 19:51:22 -03:00
Mark Thompson c99f837dde lavc: Add filter_units bitstream filter
This can remove units with types in or not in a given set from a stream.
For example, it can be used to remove all non-VCL NAL units from an H.264 or
H.265 stream.
2018-03-18 18:23:18 +00:00
Mark Thompson 84bb8327f5 cbs: Add a table of all supported codec IDs
Use it as the set of codec IDs supported by the trace_headers BSF.
2018-03-18 17:55:00 +00:00
Martin Storsjö ea2f72a2c1 configure: Don't assume a 16 byte aligned stack on BSDs on i386
With GCC, request it to maintain 16 byte alignment, and the existing
entry points already align it via attribute_align_arg.

With clang, do the same as for mingw; disable the aligned stack
and let the assembly functions that require it do the alignment
instead.

Signed-off-by: Martin Storsjö <martin@martin.st>
2018-03-17 22:27:42 +02:00
James Almer c51dbc2717 configure: revert changes to the schannel check
check_cpp_condition was not being called on some targets, which made schannel
remain enabled even when it was not available

Signed-off-by: James Almer <jamrial@gmail.com>
2018-03-17 16:49:15 -03:00
James Almer 222d4b0acc Merge commit '83fef16b6a8dbbcbd80d159ba3ebe818dbbb2776'
* commit '83fef16b6a8dbbcbd80d159ba3ebe818dbbb2776':
  configure: Add check_cpp_condition() helper function to simplify some expressions

Merged-by: James Almer <jamrial@gmail.com>
2018-03-17 15:01:29 -03:00
James Almer 40e32f83c6 Merge commit 'a5e011c8dcbf6968cc60f883d33382ba46147e90'
* commit 'a5e011c8dcbf6968cc60f883d33382ba46147e90':
  configure: Add check_cmd() helper function to simplify some expressions

Merged-by: James Almer <jamrial@gmail.com>
2018-03-17 15:00:40 -03:00
James Almer eeca8921e2 configure: add missing adts_header to aac_fixed decoder
Signed-off-by: James Almer <jamrial@gmail.com>
2018-03-15 20:33:20 -03:00
James Almer f75ba4c2d6 Merge commit '49804dc2baec009577e6b4ee827ae562188fbc2f'
* commit '49804dc2baec009577e6b4ee827ae562188fbc2f':
  configure: Use test_ prefix for helper functions that do not set variables

Merged-by: James Almer <jamrial@gmail.com>
2018-03-15 19:21:31 -03:00
James Almer 3c56d67341 Merge commit '8c893aa3cd5f2d73896c72af330dcbfe299fbc5a'
* commit '8c893aa3cd5f2d73896c72af330dcbfe299fbc5a':
  configure: Drop unnecessary variables, shifts, and quotes in helper functions

Merged-by: James Almer <jamrial@gmail.com>
2018-03-15 18:09:58 -03:00
Martin Storsjö 847190ebd9 configure: Don't assume an aligned stack on clang on windows
If we'd enable a 16 byte aligned stack, clang/llvm would also assume
that alignment everywhere and produce code that strictly requires it.
That would require adding realignment (via attribute_align_arg) on every
single public library function or enable -mstackrealign (which does the
same on every single function).

Also relatedly; the parameter currently tested (-mllvm
-stack-alignment=16) hasn't actually been supported for quite some
time; current clang versions use -mstack-alignment=16 for the same.
Actually testing for that parameter would be a different change
though, since it has a real risk of changing behaviour on any other
platform where clang is used.

Signed-off-by: Martin Storsjö <martin@martin.st>
2018-03-13 15:25:12 +02:00
Luca Barbato 43778a501f Support AV1 encoding using libaom 2018-03-12 12:10:33 +01:00
Luca Barbato c438899a70 Add AV1 video decoding support through libaom
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2018-03-12 08:12:43 +01:00
Diego Biurrun dd7e63af93 configure: Restore original endianness test
Previously the bit pattern for the endianness test was declared as a
global, instead of a local, variable. This ensures that the pattern
appears unchanged in the object file and is not optimized out.
2018-03-08 14:02:30 +01:00