Commit Graph

44948 Commits

Author SHA1 Message Date
wm4 fd61c38454 lavc: fix hw_device_ctx operation
Commit f53d483ded accidentally broke this (requested change that was
added to the patch later and which was not fully tested).

Signed-off-by: Mark Thompson <sw@jkqxz.net>
2017-10-23 23:35:31 +01:00
Diego Biurrun 9b1bbd13e4 configure: Group system feature variables and system libraries together 2017-10-22 05:53:03 +02:00
Diego Biurrun 27add765df build: Delete compiler-generated compat files on 'make clean' 2017-10-19 19:44:06 +02:00
Diego Biurrun 8374a3fe05 configure: Bail out early if neither static nor shared libs are built 2017-10-19 18:09:39 +02:00
Diego Biurrun 53f099bd4f configure: Move enabling libc_type into probe_libc() function 2017-10-19 18:09:39 +02:00
wm4 f53d483ded lavc: external hardware frame pool initialization
This adds a new API, which allows the API user to query the required
AVHWFramesContext parameters. This also reduces code duplication across
the hwaccels by introducing ff_decode_get_hw_frames_ctx(), which uses
the new API function. It takes care of initializing the hw_frames_ctx
if needed, and does additional error handling and API usage checking.

Support for VDA and Cuvid missing.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2017-10-19 17:10:59 +02:00
Anton Khirnov 3adf92162a FATE: add a test for the H.264 sample fixed by 7c4f6f6 2017-10-19 16:38:51 +02:00
Luca Barbato 271e58a982 qsv: Make the hevc idr_interval consistent with the h264 one
According to the MediaSDK documentation the idr_interval value has
a different meaning depending on the codec:

    0 in H264 means make every I-frame IDR, in HEVC it means to have
    it only at the beginning.

    1 in H264 means every other I-frame is not-IDR, in HEVC it means
    that every I-frame is IDR.

Keep the behaviour consistent between the two encoders by increasing
by 1 internally the idr_interval value for HEVC.
2017-10-18 11:55:44 +00:00
Martin Storsjö fb10496483 configure: Set the default assembler to armasm64 for MSVC for arm64
Signed-off-by: Martin Storsjö <martin@martin.st>
2017-10-18 10:49:48 +03:00
Martin Storsjö 7fbca77341 aarch64: Remove a dot from a label
This fixes building with armasm64 (when run through gas-preprocessor).

Signed-off-by: Martin Storsjö <martin@martin.st>
2017-10-18 10:49:33 +03:00
Martin Storsjö 0ecc012e01 aarch64: Get rid of a stray double space
The extra space got included as part of the expansion of ELF, which
later interfered with gas-preprocessor which earlier only stripped out
leftover lines starting with '#' if the line started with that char.

Signed-off-by: Martin Storsjö <martin@martin.st>
2017-10-18 10:49:28 +03:00
Mark Thompson 635b176e45 cbs: Add test dependencies
Fixes the MPEG-2 failure with --disable-error-resilience.
2017-10-17 20:25:07 +01:00
Diego Biurrun 262428187a mss1: Add missing macro parameters to ARITH_GET_* macros
It is wrong to pass no arguments to a macro that expects one argument
and some compilers complain.
2017-10-16 20:42:29 +02:00
Luca Barbato 5a11c706f4 qsv: Expose idr_interval for hevc as well 2017-10-14 19:22:58 +00:00
Josh de Kock 9e2fd473bf Remove dv1394 input device
Support for this device has been removed in the Linux kernel since v2.6.37.
dv1394 has been superseded by libiec61883 which is functionally equivalent.

Signed-off-by: Josh de Kock <josh@itanimul.li>
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2017-10-13 23:57:59 +02:00
Diego Biurrun a10ae477ee avfoundation: Drop silly _dec suffix from filename 2017-10-13 23:57:59 +02:00
Diego Biurrun 4548dfa510 alsa: Coalesce source files after outdev removal 2017-10-13 23:57:59 +02:00
Diego Biurrun 2e3a97012a oss: Coalesce source files after outdev removal 2017-10-13 23:57:59 +02:00
Diego Biurrun a68b20424f sndio: Coalesce source files after outdev removal 2017-10-13 23:57:59 +02:00
Diego Biurrun 3cfc4e3338 Remove all output devices
The libavformat API is not suitable for exporting output devices as muxers.
Some practical problems are e.g. lack of timing/synchronization mechanisms
or interaction with output-specific features.
2017-10-13 23:57:01 +02:00
Michael Niedermayer f147be0504 pictor: Correctly check frame dimensions
Fixes: 559/clusterfuzz-testcase-6424225917173760
Bug-Id: CVE-2017-7862
CC: libav-stable@libav.org

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/targets/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
(cherry picked from commit ad9884d2c6)
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2017-10-12 21:20:05 +02:00
Martin Storsjö 77edd41483 makedef: Add support for identifying the ARM64 machine type
Since this machine type is 5 chars while the existing ones only
were 3 (which the regexp assumed), the regexp has to be extended
a little.

Signed-off-by: Martin Storsjö <martin@martin.st>
2017-10-12 21:49:19 +03:00
Martin Storsjö c97abad802 configure: Add a comment about why we don't try to enable pic on arm on target_os=win32
Signed-off-by: Martin Storsjö <martin@martin.st>
2017-10-12 21:49:16 +03:00
Martin Storsjö 73e5fb1675 configure: Don't add -fPIC to asflags when targeting windows
On X86 windows, asflags weren't actually ever used for anything,
since assembling used x86asflags instead, and that flags list
had -DPIC already.

This fixes building shared libraries with clang for arm/aarch64
windows. (This wasn't an issue when in msvc mode before, since
we don't try to enable pic at all there, since the msvc armasm
assembler fails on our pic constructs there.)

Signed-off-by: Martin Storsjö <martin@martin.st>
2017-10-12 21:49:13 +03:00
Martin Storsjö ec99c18344 configure: Don't add -fPIC to cflags for target_os=win32
We skipped adding it to cflags for mingw/cygwin configurations
where the compiler either complains loudly or even errors out;
do the same for target_os=win32, for the case when building with
clang in msvc mode.

This wasn't needed for the actual msvc before, since msvc uses
msvc_common_flags to filter out this flag from cflags.
When building with clang in msvc mode, no such filter is used.

This fixes building shared libraries with clang in msvc mode.

Signed-off-by: Martin Storsjö <martin@martin.st>
2017-10-12 21:49:08 +03:00
Diego Biurrun 4a949a371a build: CryptGenRandom --> wincrypt, it is a better name 2017-10-12 20:04:18 +02:00
Diego Biurrun 2095149a5d build: Rename stdatomic_h variable to stdatomic
It does not represent a header but a complete system capability.
2017-10-12 20:04:17 +02:00
Diego Biurrun 19614ee3e2 configure: Extend check_header() to allow checking for multiple headers
Also use that new capability to simplify bktr header checks.
2017-10-12 20:04:17 +02:00
Diego Biurrun 2aa4782f0c build: Merge mach/mach_time.h and mach_absolute_time() checks 2017-10-12 20:04:16 +02:00
Diego Biurrun 353f1dc59e configure: Merge separate parts of GnuTLS test 2017-10-12 20:04:16 +02:00
Diego Biurrun 98eab81a7f configure: Simplify nvenc check (and move it to the correct spot) 2017-10-12 20:04:15 +02:00
Diego Biurrun d6a0c6ba85 configure: Drop fallback for deprecated avserver command line options 2017-10-12 20:04:15 +02:00
Diego Biurrun 80d0f418fe configure: Drop feature for randomly disabling/enabling components
This feature was never used for anything.
2017-10-12 20:04:15 +02:00
Diego Biurrun 11ce40bdba configure: Fix stupid typo in gsm.h header name 2017-10-11 18:58:00 +02:00
Diego Biurrun 32f8ccee88 configure: Remove pointless empty *_COMPONENTS variables 2017-10-10 23:20:21 +02:00
Diego Biurrun e990254950 configure: Drop stray extralibs for libspeex
These extralibs are set by pkg-config already.
2017-10-10 23:20:20 +02:00
Diego Biurrun 17f7cd305c configure: Drop unused attribute checks 2017-10-10 23:20:19 +02:00
Diego Biurrun f4983fcef7 configure: Drop test for fork()
fork() is never used conditionally.
2017-10-10 23:20:18 +02:00
Diego Biurrun f730f2f07d build: Drop redundant check for soundcard.h
It should be sys/soundcard.h nowadays.
2017-10-10 23:20:17 +02:00
Diego Biurrun 95b841ce91 build: Remove check for gsm/gsm.h for libgsm
libgsm never installed more than a single header, the headers installed into
the gsm/ subdirectory by some distros are private. Who started this nonsense
is a mystery, but it got cargo-culted around ever since.
2017-10-10 23:20:16 +02:00
Diego Biurrun 35ca072e3c build: Drop check for sys/mman.h in favor of mmap() check
We already rely on just mmap() in other places.
2017-10-10 23:20:16 +02:00
Diego Biurrun a66be3c33b configure: Drop redundant header check for d3d11.h
It is detected as a part of the ID3D11VideoDecoder check.
2017-10-10 23:20:11 +02:00
Diego Biurrun c8ff1a0b4b build: Drop explicit check for dlfcn.h
It is detected as a part of the libdl check.
2017-10-10 23:20:10 +02:00
Diego Biurrun 6bd2cbf904 configure: Drop unused or internally-used entries from variable lists
The variable lists are for variables whose values end up in output files.
2017-10-10 23:20:05 +02:00
Diego Biurrun b798c2d44c build: Drop support for Tru64 Unix (OSF/1)
This proprietary Unix flavor dropped from the face of the earth more
than a decade ago. Nothing of value was lost.
2017-10-10 23:17:54 +02:00
James Almer 2257104869 configure: rename hevc_ps to hevcparse
Build h2645_parse.o with it, as every hevc_ps dependency also needs it.
This is more in line with h264's h264parse module.

Signed-off-by: James Almer <jamrial@gmail.com>
2017-10-10 14:03:53 -03:00
James Almer 02c6f0944a extract_extradata: return an error when buffer allocation fails
ret is 0 by default.

Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2017-10-09 11:48:44 +02:00
James Almer 9c760df8f0 cpu: split flag checks per arch in av_cpu_max_align()
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2017-10-09 11:48:24 +02:00
James Almer 54faf3ea24 configure: Use test_pkg_config() for the SDL check
Removes the extra code to preserve global CFLAGS.

Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2017-10-04 19:12:36 +02:00
James Almer 611234d003 configure: Add test_pkg_config()
This helper is split off check_pkg_config(), setting only the pkg CFLAGS
and extralibs. This is useful for checks that do not require or do not
benefit from setting global CFLAGS.

Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2017-10-04 19:12:26 +02:00