aboutsummaryrefslogtreecommitdiff
path: root/compat
AgeCommit message (Collapse)Author
2017-03-18compat/atomics/gcc: use __typeof__ instead of typeofJames Almer
The typeof keyword is apparently not available when using the -std=c99 option. Fixes the use of C11 atomic functions with old GCC. Reviewed-by: Muhammad Faiz <mfcc64@gmail.com> Signed-off-by: James Almer <jamrial@gmail.com>
2017-03-01compat/cuda: fix ulong size on cygwinTimo Rothenpieler
2016-12-02compat/atomics: rename header guardsJames Almer
Fixes fate-source. Signed-off-by: James Almer <jamrial@gmail.com>
2016-12-02Add a compat dummy stdatomic.h used when threading is disabledAnton Khirnov
Adapted from the code by Rémi Denis-Courmont from VLC This merges libav commit eb34d40354e2474517c9b9bd787e0dadc89c2a81. 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-02Add a compat stdatomic.h implementation based on pthreadsAnton Khirnov
Adapted from the code by Rémi Denis-Courmont from VLC This merges libav commit f9a6a80e065cdb95b233978f1d96ec9bc863daa1. 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-02Add a compat stdatomic.h implementation based on suncc atomicsAnton Khirnov
Adapted from the code by Rémi Denis-Courmont from VLC This merges libav commit bb81ed476569b912a37ed553e756e123b6b13b14. 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-02Add a compat stdatomic.h implementation based on windows atomicsAnton Khirnov
Adapted from the code by Rémi Denis-Courmont from VLC This merges libav commit c2755864afadfbaa349e8d583665c86fe99fa90b. 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-02Add a compat stdatomic.h implementation based on GCC atomicsAnton Khirnov
Adapted from the code by Rémi Denis-Courmont from VLC This merges libav commit 4e928ef340ac20325f529d92fcbc51e768085358. Signed-off-by: Wan-Teh Chang <wtc@google.com> Reviewed-by: wm4 <nfxjfg@googlemail.com> Signed-off-by: James Almer <jamrial@gmail.com>
2016-11-22avcodec/cuvid: Add support for P010/P016 as an output surface formatPhilip Langdale
The nvidia 375.xx driver introduces support for P016 output surfaces, for 10bit and 12bit HEVC content (it's also the first driver to support hardware decoding of 12bit content). The cuvid api, as far as I can tell, only declares one output format that they appear to refer to as P016 in the driver strings. Of course, 10bit content in P016 is identical to P010, and it is useful for compatibility purposes to declare the format to be P010 to work with other components that only know how to consume P010 (and to avoid triggering swscale conversions that are lossy when they shouldn't be). For simplicity, this change does not maintain the previous ability to output dithered NV12 for 10/12 bit input video - the user will need to update their driver to decode such videos.
2016-11-22avcodec/cuvid: use dynamically loaded CUDA/CUVIDTimo Rothenpieler
And remove the now obsolete compat headers.
2016-11-22compat/cuda: add dynamic loaderTimo Rothenpieler
2016-11-05compat/w32dlfcn.h: Add safe win32 dlopen/dlclose/dlsym functions.Matt Oliver
Signed-off-by: Matt Oliver <protogonoi@gmail.com>
2016-09-23compat/cuda: convert to unix line endingsTimo Rothenpieler
2016-09-22cuvid: Use bundled headersPhilip Langdale
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-22cuvid: Add MIT licenced nvcuid headers from Video SDK 7.0Philip Langdale
For unknown reasons, the only accurately descriptive version of cuviddec.h is in the Video SDK - the one in CUDA 7.5 lacks vp8 PICPARAMS and the vp9 struct definition is inaccurate. The CUDA 8 RC includes an ancient version of this file from many many years go. However, the one in the Video SDK is modified to work through a dynamic link mechanism which we don't really want to use, so the next change will modify the files to just declare functions in the normal way. I've split the changes so it's clear to see what changed between the original files and ones that work for us.
2016-08-28avcodec/nvenc: include nvEncodeAPI v7 SDK headerTimo Rothenpieler
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-17compat/avisynth: update AviSynth+ headerStephen Hutchinson
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-05-08Merge commit '6bb99757b780144d9fa27cdce09d3621e1a0ed43'Derek Buitenhuis
* commit '6bb99757b780144d9fa27cdce09d3621e1a0ed43': jack: Support OSX Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-03-31jack: Support OSXJosh de Kock
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-02-14compat/os2threads: split long linesKO Myung-Hun
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-02-14compat/os2threads: support the return value of joined threadKO Myung-Hun
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-02-14compat/os2threads: Improve pthread_cond_xxx() functionsKO Myung-Hun
1. Manipulate waiting count in pthread_cond_wait() 2. Use builtin atomic functions to manipulate waiting count Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-01-31all: Make header guard names consistentTimothy Gu
2016-01-28all: Add missing header guardsTimothy Gu
2015-11-12os2threads: Add pthread_once()KO Myung-Hun
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-11-02Merge commit '407ac22322e5ce67996ec54ef619cafa4c9ceb78'Hendrik Leppkes
* commit '407ac22322e5ce67996ec54ef619cafa4c9ceb78': w32pthreads: Map MemoryBarrier to __sync_synchronize on mingw Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2015-10-30w32pthreads: Map MemoryBarrier to __sync_synchronize on mingwMartin Storsjö
This fixes building on older mingw (both mingw.org and mingw64; mingw64 from before May 2011). Signed-off-by: Martin Storsjö <martin@martin.st>
2015-10-20compat/solaris/make_sunver.pl: Use /usr/bin/env perl instead of /usr/bin/perlMichael Niedermayer
This is how the other perl scripts in git call perl Reviewed-by: Ganesh Ajjanagadde <gajjanag@mit.edu> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-10-16w32pthreads: fix mingw build on x86 with -msse2 or higherHendrik Leppkes
When SSE2 or higher compiler optimizations are used, mingw uses the _mm_mfence intrinsic for MemoryBarrier, however it doesn't include the appropriate headers automatically. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-10-16w32pthreads: fix mingw build on x86 with -msse2 or higherHendrik Leppkes
When SSE2 or higher compiler optimizations are used, mingw uses the _mm_mfence intrinsic for MemoryBarrier, however it doesn't include the appropriate headers automatically.
2015-10-16winrt: multithreading supportwang-bin
_beginthreadex is for desktop only. CreateThread is available for windows store apps on windows (and phone) 8.1 and later. http://msdn.microsoft.com/en-us/library/ms682453%28VS.85%29.aspx Signed-off-by: Matt Oliver <protogonoi@gmail.com>
2015-10-14Merge commit 'c1aac39eaccd32dc3b74ccfcce701d3d888fbc6b'Hendrik Leppkes
* commit 'c1aac39eaccd32dc3b74ccfcce701d3d888fbc6b': build: add Solaris symbol versioning Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2015-10-11build: add Solaris symbol versioningSean McGovern
The versioning facility in the Solaris linker differs from Linux in 3 ways: 1. It does not support globs in linker scripts for symbol versioning -- this is a GNU extension. 2. The linker argument is '-M', instead of '--version-script'. 3. It is picky about line endings. Each symbol or directive must be on a line of it's own. Let's use make_sunver.pl from GCC to generate a version script that works correctly with the Solaris linker. It's function is to correctly expand the globs in the original generated version script. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-10-10Merge commit '2830bce47e2eb29c76202f19017031ddc1f95dd3'Hendrik Leppkes
* commit '2830bce47e2eb29c76202f19017031ddc1f95dd3': w32pthreads: Load dynamically loaded functions on demand Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2015-10-10Merge commit 'b22693b06d1e5d73454a65c203b4d31c1ca5b69a'Hendrik Leppkes
* commit 'b22693b06d1e5d73454a65c203b4d31c1ca5b69a': w32pthreads: Add pthread_once emulation Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2015-10-07w32pthreads: Load dynamically loaded functions on demandHendrik Leppkes
This removes the requirement of calling w32thread_init before being able to use the threading primitives. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-10-07w32pthreads: Add pthread_once emulationHendrik Leppkes
The emulation uses native InitOnce* APIs on Windows Vista+, and a lock-free/allocation-free approach using atomics and spinning for Windows XP. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-09-30compat/w32pthreads: Add return values to match the simulated pthread functions.Matt Oliver
2015-07-24use a wrapper script to call MS link.exe to avoid mixing with /usr/bin/link.exeSteve Lhomme
favor link over link.exe in case some wrapper script already exists fallback to "link" in the path if the one next to cl is not found Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-24use a wrapper script to call MS link.exe to avoid mixing with /usr/bin/link.exeSteve Lhomme
Fallback to "link" in the path if the one next to cl is not found. Signed-off-by: Martin Storsjö <martin@martin.st>
2015-06-02compat/os2threads: Check av_malloc() return codeMichael Niedermayer
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-25avisynth: drop support of AviSynth 2.5Stephen Hutchinson
If the user attempts to use AviSynth 2.5, an error message will now tell them they need to upgrade. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-25avisynth: ifdef to avoid implicit function declaration errorsStephen Hutchinson
The demuxer doesn't use these functions, so it shouldn't affect anything. Investigate whether this can be fixed by how headers are checked in configure. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-25avisynth: update headers against AviSynth+Stephen Hutchinson
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-02-18compat/avisynth/windowsPorts/windows2linux: Add () to protect macro argumentsMichael Niedermayer
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-12-11compat/avisynth/avxsynth_c: Clear all unused fields in returned structsMichael Niedermayer
Fixes: CID1257658 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-10-10w32pthreads: use the condition variable API directly when targeting newer ↵James Almer
versions of Windows Wrap the function calls in a similar fashion to how it's being done with the critical section API. Signed-off-by: James Almer <jamrial@gmail.com> Signed-off-by: Martin Storsjö <martin@martin.st>
2014-10-10w32pthreads: use the CONDITION_VARIABLE typedef if availableJames Almer
This silences warnings about passing arguments from incompatible pointer type when targeting Windows Vista or newer. Signed-off-by: James Almer <jamrial@gmail.com> Signed-off-by: Martin Storsjö <martin@martin.st>
2014-10-09compat/w32pthreads: use the condition variable API directly when targeting ↵James Almer
newer versions of Windows Wrap the function calls in a similar fashion to how it's being done with the critical section API. Reviewed-by: Michael Niedermayer <michaelni@gmx.at> Signed-off-by: James Almer <jamrial@gmail.com>
2014-10-09compat/w32pthreads: use the CONDITION_VARIABLE typedef if availableJames Almer
This silences warnings about passing arguments from incompatible pointer type when targeting Windows Vista or newer. Tested-by: Matt Oliver <protogonoi@gmail.com> Reviewed-by: Michael Niedermayer <michaelni@gmx.at> Signed-off-by: James Almer <jamrial@gmail.com>