- 18 Jun, 2017 4 commits
-
-
Martin Storsjö authored
When targeting the UWP API subset, the LoadLibrary function is not available (and the fallback, LoadPackagedLibrary, can't be used to load system DLLs). In these cases, link directly to the functions in the DLLs instead of trying to load them dynamically at runtime. Signed-off-by: Martin Storsjö <martin@martin.st>
-
Mark Thompson authored
-
Mark Thompson authored
-
Mark Thompson authored
-
- 17 Jun, 2017 7 commits
-
-
Diego Biurrun authored
The handling of _select dependencies had two issues: 1) extralibs from _select dependencies of a component were not added to the list of extralibs for that component. 2) extralibs from dependencies were only added to the extralibs of a component if the component was enabled. This led to incorrect results if that component was enabled by another component later in the dependency resolution process. Instead, always generate the full list of component extralibs for use later in the dependency resolution process. Also remove a leftover unused variable.
-
Diego Biurrun authored
-
Diego Biurrun authored
-
Diego Biurrun authored
-
Diego Biurrun authored
This ensures that mmx_internal is only ever enabled on x86.
-
Diego Biurrun authored
-
Diego Biurrun authored
-
- 14 Jun, 2017 1 commit
-
-
Mark Thompson authored
-
- 13 Jun, 2017 4 commits
-
-
Michael Niedermayer authored
The timeDataSize argument to aacDecoder_DecodeFrame() seems undocumented and until 2016 04 (203e3f28fbebec7011342017fafc2a0bda0ce530) unused. After that commit libfdk-aacdec interprets it as size in sample units and memsets that on error. FFmpeg as well as others (like GStreamer) did interpret it as size in bytes. Fixes: 1442/clusterfuzz-testcase-minimized-4540199973421056 (This requires recent libfdk to reproduce) Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpegSigned-off-by: Martin Storsjö <martin@martin.st>
-
Diego Biurrun authored
-
Diego Biurrun authored
-
Diego Biurrun authored
Apple GCC has not been a thing anymore on PowerPC since many years.
-
- 12 Jun, 2017 1 commit
-
-
Diego Biurrun authored
-
- 10 Jun, 2017 1 commit
-
-
Srinath K R authored
AVCodecContext::refs is used to control the DPB size to be used by the encoder. The default value for AVCodecContext::refs as set in libavcodec/options_table.h is 1. This patch sets AVCodecContext::refs to 0 for h264_nvenc and hevc_nvenc in order to let the driver take the decision of the correct DPB size to use in all cases. Signed-off-by: Srinath K R <skr@nvidia.com> Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
-
- 08 Jun, 2017 5 commits
-
-
wm4 authored
This also adds support to avconv (which is trivial due to the new hwaccel API being generic enough). The new decoder setup code in dxva2.c is significantly based on work by Steve Lhomme <robux4@gmail.com>, but with heavy changes/rewrites. Signed-off-by: Diego Biurrun <diego@biurrun.de>
-
wm4 authored
I want to make it non-mandatory to set a mutex in the D3D11 device context, and replacing it with user callbacks seems like the best solution. This is preparation for it. Also makes the code slightly more readable. Signed-off-by: Diego Biurrun <diego@biurrun.de>
-
wm4 authored
The actual hwaccel code will need to access an internal context instead of avctx->hwaccel_context, so add a new DXVA_CONTEXT() macro, that will dispatch between the "old" external and the new internal context. Also, the new API requires a new D3D11 pixfmt, so all places which check for the pixfmt need to be adjusted. Introduce a ff_dxva2_is_d3d11() function, which does the check. Signed-off-by: Diego Biurrun <diego@biurrun.de>
-
wm4 authored
So a hwaccel can access avctx->hwaccel in init for whatever reason. This is for the new d3d hwaccel API. We could create separate entrypoints for each of the 3 hwaccel types (dxva2, d3d11va, new d3d11va), but this seems nicer. Signed-off-by: Diego Biurrun <diego@biurrun.de>
-
wm4 authored
To be used with the new d3d11 hwaccel decode API. With the new hwaccel API, we don't want surfaces to depend on the decoder (other than the required dimension and format). The old D3D11VA pixfmt uses ID3D11VideoDecoderOutputView pointers, which include the decoder configuration, and thus is incompatible with the new hwaccel API. This patch introduces AV_PIX_FMT_D3D11, which uses ID3D11Texture2D and an index. It's simpler and compatible with the new hwaccel API. The introduced hwcontext supports only the new pixfmt. Frame upload code untested. Significantly based on work by Steve Lhomme <robux4@gmail.com>, but with heavy changes/rewrites. Signed-off-by: Diego Biurrun <diego@biurrun.de>
-
- 06 Jun, 2017 1 commit
-
-
Diego Biurrun authored
Both libraries provide similar functionality and cannot be used together. When both are enabled one is used and the other ignored arbitrarily. Error out instead and have the user choose which library to use.
-
- 03 Jun, 2017 5 commits
-
-
Diego Biurrun authored
This allows for more graceful fallback from NASM to Yasm if the available NASM version is too old.
-
Diego Biurrun authored
-
Diego Biurrun authored
avtools/cmdutils.c:1234:28: warning: unused variable ‘pix_fmt’ [-Wunused-variable]
-
Diego Biurrun authored
The .version files are only relevant during an actual build.
-
James Almer authored
This makes ubsan happy and also considerably increases performance on big endian systems. Tested on an IBM POWER7 3.55 GHz Before: 2.24user 0.14system 0:02.39elapsed 99%CPU (0avgtext+0avgdata 2624maxresident)k 2.26user 0.11system 0:02.38elapsed 99%CPU (0avgtext+0avgdata 2688maxresident)k 2.23user 0.15system 0:02.38elapsed 99%CPU (0avgtext+0avgdata 2624maxresident)k 2.25user 0.12system 0:02.38elapsed 100%CPU (0avgtext+0avgdata 2624maxresident)k 2.20user 0.15system 0:02.36elapsed 99%CPU (0avgtext+0avgdata 2624maxresident)k After: 1.86user 0.13system 0:02.00elapsed 99%CPU (0avgtext+0avgdata 2624maxresident)k 1.89user 0.11system 0:02.01elapsed 99%CPU (0avgtext+0avgdata 2624maxresident)k 1.85user 0.14system 0:02.00elapsed 99%CPU (0avgtext+0avgdata 2624maxresident)k 1.84user 0.15system 0:01.99elapsed 99%CPU (0avgtext+0avgdata 2624maxresident)k 1.89user 0.13system 0:02.02elapsed 99%CPU (0avgtext+0avgdata 2688maxresident)k Tested-by: Nicolas George <george@nsup.org> Reviewed-by: Michael Niedermayer <michael@niedermayer.cc> Signed-off-by: James Almer <jamrial@gmail.com> Signed-off-by: Sean McGovern <gseanmcg@gmail.com>
-
- 02 Jun, 2017 1 commit
-
-
Diego Biurrun authored
TLS is currently implemented over either OpenSSL or GnuTLS, with more backends likely to appear in the future. Currently, those backend libraries are part of the protocol names used during e.g. the configure stage of a build. Hide those details behind a generically-named declaration for the TLS protocol to avoid leaking those details into the configuration stage.
-
- 01 Jun, 2017 4 commits
-
-
Diego Biurrun authored
Return sensible error values and forward error codes.
-
Michael Niedermayer authored
Fixes out of array access Fixes: ce19e41f0ef1e52a23edc488faecdb58/asan_heap-oob_2504e97_4202_ffa0df1baed14022b9bfd4f8ac23d0cb.smk Bug-Id: CVE-2015-8365 CC: libav-stable@libav.org Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Michael Niedermayer <michael@niedermayer.cc> (cherry picked from commit 4a9af07a) Signed-off-by: Diego Biurrun <diego@biurrun.de>
-
Martin Storsjö authored
If we for some unexplicable reason didn't pick up getaddrinfo at configure, the default, IPv4-only, fallback should be good enough. This effectively reverts 6023d84a. Signed-off-by: Martin Storsjö <martin@martin.st>
-
Martin Storsjö authored
This makes the getaddrinfo functions visible, which aren't normally by default on legacy mingw. We already force __MSVCRT_VERSION__ to an XP version. Signed-off-by: Martin Storsjö <martin@martin.st>
-
- 31 May, 2017 3 commits
-
-
Luca Barbato authored
Parse the playlist to recover the start sequence and previously generated segments and continue muxing from there. Mainly useful for near-seamless recovery in live scenarios.
-
Luca Barbato authored
-
Martin Storsjö authored
This was actually broken when committed in 46e3936f; the test never succeeded, and thus, _aligned_malloc wasn't actually used on legacy mingw. Signed-off-by: Martin Storsjö <martin@martin.st>
-
- 29 May, 2017 2 commits
-
-
Elviss Strazdins authored
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
-
Luca Barbato authored
Clang support for Altivec/VSX uses a different approach.
-
- 20 May, 2017 1 commit
-
-
Aaron Levinson authored
Add dxva2_pool_release_dummy() and use it in call to av_buffer_create() in dxva2_pool_alloc(). Prior to this change, av_buffer_create() was called with NULL for the third argument, which indicates that av_buffer_default_free() should be used to free the buffer's data. Eventually, it gets to buffer_pool_free() and calls buf->free() on a surface object (which is av_buffer_default_free()). This can result in a crash when the debug version of the C-runtime is used on Windows. While it doesn't appear to result in a crash when the release version of the C-runtime is used on Windows, it likely results in memory corruption, since av_free() is being called on memory that was allocated using IDirectXVideoAccelerationService::CreateSurface(). Signed-off-by: Aaron Levinson <alevinsn@aracnet.com> Reviewed-by: wm4 <nfxjfg@googlemail.com> Reviewed-by: Steven Liu <lingjiujianke@gmail.com> Reviewed-by: Mark Thompson <sw@jkqxz.net> Signed-off-by: Anton Khirnov <anton@khirnov.net>
-