summaryrefslogtreecommitdiff
path: root/compat
Commit message (Collapse)AuthorAgeFilesLines
...
* | compat/cuda: fix cast warnings on windowsTimo Rothenpieler2017-05-091-43/+46
| |
* | compat/cuda: update cuvid/nvdec headers to Video Codec SDK 8.0.14Timo Rothenpieler2017-05-094-461/+575
| | | | | | | | | | | | This raises the required minimum NVIDIA display driver versions: NVIDIA Linux display driver 378.13 or newer NVIDIA Windows display driver 378.66 or newer
* | compat/nvenc: bump nvEncodeAPI.h to Video Codec SDK 8.0.14Timo Rothenpieler2017-05-091-66/+171
| | | | | | | | | | | | This raises the required minimum NVIDIA display driver versions: NVIDIA Linux display driver 378.13 or newer NVIDIA Windows display driver 378.66 or newer
* | compat/strtod: Add missing const qualifiers.Carl Eugen Hoyos2017-05-041-6/+6
| | | | | | | | | | Fixes many warnings: initialization discards 'const' qualifier from pointer target type
* | Support building C++ files with MSVCAaron Levinson2017-04-131-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Made appropriate changes to be able to successfully build C++ files using a Visual C++ build on Windows. Based on an earlier patch by Kyle Schwarz. Comments: -- compat/w32pthreads.h: Made appropriate changes to w32pthreads.h to get it to build when it is being included in a C++ file and built with Visual C++. This is mostly a copy of Kyle Schwarz's patch as described above. -- configure: a) Now calling set_ccvars CXX to cause the various CXX_ variables to be setup properly. For example, with MSVC (Microsoft Visual C++), this causes CXX_O to be set to -Fo$@ instead of using the default value. The default value does not work with Visual C++. This change will also have the impact of correcting CXX_O (and possibly CXX_C) for other compilers, although this is really only relevant for the Intel compiler, in addition to MSVC. b) Now using cl for the C++ compiler for the MSVC toolchain. This is currently only relevant for building the Blackmagic/Decklink-related files under avdevice. Signed-off-by: Hendrik Leppkes <h.leppkes@gmail.com>
* | Merge commit '6a93b596c5c3af31b843d63013a7985ffeea354d'James Almer2017-04-132-2/+3
|\ \ | |/ | | | | | | | | | | * commit '6a93b596c5c3af31b843d63013a7985ffeea354d': compat/atomics: add typecasts in atomic_compare_exchange_strong() Merged-by: James Almer <jamrial@gmail.com>
| * compat/atomics: add typecasts in atomic_compare_exchange_strong()Wan-Teh Chang2016-12-082-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Solaris and Windows emulations of atomic_compare_exchange_strong() need typecasts to avoid compiler warnings, because the functions they call expect a void* pointer but an intptr_t integer is passed. Note that the emulations of atomic_compare_exchange_strong() (except the gcc version) only work for atomic_intptr_t because of the type of the second argument (|expected|). See http://en.cppreference.com/w/c/atomic: _Bool atomic_compare_exchange_strong( volatile A* obj, C* expected, C desired ); The types of the first argument and second argument are different (|A| and |C|, respectively). |C| is the non-atomic type corresponding to |A|. In the emulations of atomic_compare_exchange_strong(), |C| is intptr_t. This implies |A| can only be sig_intptr_t. Signed-off-by: Wan-Teh Chang <wtc@google.com>
* | Merge commit '3794062ab1a13442b06f6d76c54dce51ffa54697'Clément Bœsch2017-04-093-46/+0
|\ \ | |/ | | | | | | | | | | * commit '3794062ab1a13442b06f6d76c54dce51ffa54697': Remove Plan 9 support Merged-by: Clément Bœsch <u@pkh.me>
| * Remove Plan 9 supportDiego Biurrun2016-12-033-46/+0
| | | | | | | | | | | | 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.
* | Merge commit 'bd9cd04626a98a752c5771d057a6b86779359904'James Almer2017-04-041-12/+12
|\ \ | |/ | | | | | | | | | | * commit 'bd9cd04626a98a752c5771d057a6b86779359904': w32pthreads: Fix function pointer casts Merged-by: James Almer <jamrial@gmail.com>
| * w32pthreads: Fix function pointer castsDiego Biurrun2016-11-241-12/+12
| | | | | | | | This eliminates a handful of warnings at every inclusion of the header.
| * Add a compat dummy stdatomic.h used when threading is disabledAnton Khirnov2016-10-021-0/+176
| | | | | | | | Adapted from the code by Rémi Denis-Courmont from VLC
| * Add a compat stdatomic.h implementation based on pthreadsAnton Khirnov2016-10-022-0/+236
| | | | | | | | Adapted from the code by Rémi Denis-Courmont from VLC
| * Add a compat stdatomic.h implementation based on suncc atomicsAnton Khirnov2016-10-021-0/+186
| | | | | | | | Adapted from the code by Rémi Denis-Courmont from VLC
| * Add a compat stdatomic.h implementation based on windows atomicsAnton Khirnov2016-10-021-0/+179
| | | | | | | | Adapted from the code by Rémi Denis-Courmont from VLC
| * Add a compat stdatomic.h implementation based on GCC atomicsAnton Khirnov2016-10-021-0/+173
| | | | | | | | Adapted from the code by Rémi Denis-Courmont from VLC
* | stdatomic/win32: only include the lean windows headers to avoid conflictsHendrik Leppkes2017-04-041-0/+1
| |
* | compat/atomics: fix atomic_fetch_xorJames Almer2017-04-025-6/+6
| |
* | compat/atomics/gcc: use __typeof__ instead of typeofJames Almer2017-03-181-4/+4
| | | | | | | | | | | | | | | | | | 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>
* | compat/cuda: fix ulong size on cygwinTimo Rothenpieler2017-03-012-12/+18
| |
* | compat/atomics: rename header guardsJames Almer2016-12-025-15/+15
| | | | | | | | | | | | Fixes fate-source. Signed-off-by: James Almer <jamrial@gmail.com>
* | Add a compat dummy stdatomic.h used when threading is disabledAnton Khirnov2016-12-021-0/+176
| | | | | | | | | | | | | | | | | | | | 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>
* | Add a compat stdatomic.h implementation based on pthreadsAnton Khirnov2016-12-022-0/+236
| | | | | | | | | | | | | | | | | | | | 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>
* | Add a compat stdatomic.h implementation based on suncc atomicsAnton Khirnov2016-12-021-0/+186
| | | | | | | | | | | | | | | | | | | | 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>
* | Add a compat stdatomic.h implementation based on windows atomicsAnton Khirnov2016-12-021-0/+179
| | | | | | | | | | | | | | | | | | | | 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>
* | Add a compat stdatomic.h implementation based on GCC atomicsAnton Khirnov2016-12-021-0/+173
| | | | | | | | | | | | | | | | | | | | 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>
* | avcodec/cuvid: Add support for P010/P016 as an output surface formatPhilip Langdale2016-11-221-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* | avcodec/cuvid: use dynamically loaded CUDA/CUVIDTimo Rothenpieler2016-11-222-1148/+0
| | | | | | | | And remove the now obsolete compat headers.
* | compat/cuda: add dynamic loaderTimo Rothenpieler2016-11-224-0/+1475
| |
* | compat/w32dlfcn.h: Add safe win32 dlopen/dlclose/dlsym functions.Matt Oliver2016-11-051-0/+83
| | | | | | | | Signed-off-by: Matt Oliver <protogonoi@gmail.com>
* | compat/cuda: convert to unix line endingsTimo Rothenpieler2016-09-232-1148/+1148
| |
* | cuvid: Use bundled headersPhilip Langdale2016-09-222-58/+29
| | | | | | | | | | | | | | | | 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.
* | cuvid: Add MIT licenced nvcuid headers from Video SDK 7.0Philip Langdale2016-09-222-0/+1177
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* | avcodec/nvenc: include nvEncodeAPI v7 SDK headerTimo Rothenpieler2016-08-281-0/+3219
| | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* | compat/avisynth: update AviSynth+ headerStephen Hutchinson2016-08-171-37/+219
| | | | | | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | Merge commit '6bb99757b780144d9fa27cdce09d3621e1a0ed43'Derek Buitenhuis2016-05-081-0/+42
|\ \ | |/ | | | | | | | | | | * commit '6bb99757b780144d9fa27cdce09d3621e1a0ed43': jack: Support OSX Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
| * jack: Support OSXJosh de Kock2016-03-311-0/+42
| | | | | | | | | | | | | | | | | | 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>
* | compat/os2threads: split long linesKO Myung-Hun2016-02-141-5/+12
| | | | | | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | compat/os2threads: support the return value of joined threadKO Myung-Hun2016-02-141-21/+18
| | | | | | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | compat/os2threads: Improve pthread_cond_xxx() functionsKO Myung-Hun2016-02-141-11/+15
| | | | | | | | | | | | | | 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>
* | all: Make header guard names consistentTimothy Gu2016-01-315-15/+15
| |
* | all: Add missing header guardsTimothy Gu2016-01-281-0/+5
| |
* | os2threads: Add pthread_once()KO Myung-Hun2015-11-121-0/+27
| | | | | | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | Merge commit '407ac22322e5ce67996ec54ef619cafa4c9ceb78'Hendrik Leppkes2015-11-021-2/+2
|\ \ | |/ | | | | | | | | | | * commit '407ac22322e5ce67996ec54ef619cafa4c9ceb78': w32pthreads: Map MemoryBarrier to __sync_synchronize on mingw Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
| * w32pthreads: Map MemoryBarrier to __sync_synchronize on mingwMartin Storsjö2015-10-301-2/+2
| | | | | | | | | | | | | | This fixes building on older mingw (both mingw.org and mingw64; mingw64 from before May 2011). Signed-off-by: Martin Storsjö <martin@martin.st>
| * w32pthreads: fix mingw build on x86 with -msse2 or higherHendrik Leppkes2015-10-161-0/+5
| | | | | | | | | | | | | | | | 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>
* | compat/solaris/make_sunver.pl: Use /usr/bin/env perl instead of /usr/bin/perlMichael Niedermayer2015-10-201-1/+1
| | | | | | | | | | | | | | 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>
* | w32pthreads: fix mingw build on x86 with -msse2 or higherHendrik Leppkes2015-10-161-0/+5
| | | | | | | | | | | | 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.
* | winrt: multithreading supportwang-bin2015-10-161-0/+5
| | | | | | | | | | | | _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>
* | Merge commit 'c1aac39eaccd32dc3b74ccfcce701d3d888fbc6b'Hendrik Leppkes2015-10-141-0/+352
|\ \ | |/ | | | | | | | | | | * commit 'c1aac39eaccd32dc3b74ccfcce701d3d888fbc6b': build: add Solaris symbol versioning Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>