1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2024-12-28 20:53:54 +02:00
Commit Graph

4690 Commits

Author SHA1 Message Date
Dale Curtis
01763144dc Avoid corrupting diagnostic state with _Pragma changes.
The macros for ICC and MSVC correctly push and pop the diagnostic
state of the compiler when disabling deprecation warnings. The
ones for clang/gcc should do the same. Without this, if a blanket
deprecation warning is applied to the code base it'll be flipped
back on incorrectly with FF_ENABLE_DEPRECATION_WARNINGS.

Signed-off-by: Dale Curtis <dalecurtis@chromium.org>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-11-14 20:49:07 +01:00
Muhammad Faiz
8329ae781a avutil/crc: use ff_thread_once at av_crc_get_table
Fix tsan warnings.

Signed-off-by: Muhammad Faiz <mfcc64@gmail.com>
2017-11-14 06:25:05 +07:00
Thomas Köppe
43171a2a73 Fix missing used attribute for inline assembly variables
Variables used in inline assembly need to be marked with attribute((used)).
Static constants already were, via the define of DECLARE_ASM_CONST.
But DECLARE_ALIGNED does not add this attribute, and some of the variables
defined with it are const only used in inline assembly, and therefore
appeared dead. This change adds a macro DECLARE_ASM_ALIGNED that marks
variables as used.

This change makes FFMPEG work with Clang's ThinLTO.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-11-13 03:58:34 +01:00
Mark Thompson
1ef4af2d49 hwcontext_vaapi: Fix build with libva 2.0
vaExportSurfaceHandle() wasn't included in the 2.0 release.

Fixes ticket #6828.
2017-11-12 15:38:00 +00:00
James Almer
12f4e2ba02 Merge commit '0af8a72174108b9bb482f1073a1e9a3bc258af51'
* commit '0af8a72174108b9bb482f1073a1e9a3bc258af51':
  build: Drop support for legacy TI ARM compiler

Merged-by: James Almer <jamrial@gmail.com>
2017-11-11 23:41:35 -03:00
James Almer
529de4f1b6 Merge commit '69ac24e556c6fbc7138be5a60d0b90d2a5676c3d'
* commit '69ac24e556c6fbc7138be5a60d0b90d2a5676c3d':
  aarch64: Get rid of a stray double space

Merged-by: James Almer <jamrial@gmail.com>
2017-11-11 17:46:48 -03:00
James Almer
3f27200954 Merge commit '7ac092d05de487d088bc96ab4a7bd6207fbfa98c'
* commit '7ac092d05de487d088bc96ab4a7bd6207fbfa98c':
  build: CryptGenRandom --> wincrypt, it is a better name

Merged-by: James Almer <jamrial@gmail.com>
2017-11-11 16:53:19 -03:00
James Almer
4e754e9419 Merge commit 'b46900914a1f25ce8dbf49d7c53766ff1f18b60f'
* commit 'b46900914a1f25ce8dbf49d7c53766ff1f18b60f':
  build: Merge mach/mach_time.h and mach_absolute_time() checks

Merged-by: James Almer <jamrial@gmail.com>
2017-11-11 16:42:27 -03:00
James Almer
c584368817 Merge commit '09c98327b9f25c6c1716c0ee82ce09d8b484887a'
* commit '09c98327b9f25c6c1716c0ee82ce09d8b484887a':
  build: Drop support for Tru64 Unix (OSF/1)

Merged-by: James Almer <jamrial@gmail.com>
2017-11-11 15:56:27 -03:00
James Almer
8c82c4d25d Merge commit 'ccbb31c14b766ef666ef2daa8c467e478183a957'
* commit 'ccbb31c14b766ef666ef2daa8c467e478183a957':
  qsv: Make sure the session is set with the latest version

Merged-by: James Almer <jamrial@gmail.com>
2017-11-11 15:23:49 -03:00
James Almer
98a9b1f0de Merge commit 'accb06120c13a4ead442464d96f2fa318fa07a4e'
* commit 'accb06120c13a4ead442464d96f2fa318fa07a4e':
  configure: Use dllexport/dllimport for data symbols across DLLs with mingw

Merged-by: James Almer <jamrial@gmail.com>
2017-11-11 13:15:42 -03:00
James Almer
87865bf6c7 Merge commit 'abf1c058d1bd0ed1b820ea5e501a4484756f00b0'
* commit 'abf1c058d1bd0ed1b820ea5e501a4484756f00b0':
  msvc: Properly specify dllexport for data symbols shared across dll boundaries

Merged-by: James Almer <jamrial@gmail.com>
2017-11-11 11:29:16 -03:00
James Almer
f87ad3a058 Merge commit 'e41daa62465036ad36ad0bd14e4936e848d7f07e'
* commit 'e41daa62465036ad36ad0bd14e4936e848d7f07e':
  Remove support for building for mingw32ce (Windows CE)

Merged-by: James Almer <jamrial@gmail.com>
2017-11-11 10:22:11 -03:00
James Almer
28bb96c408 Merge commit '7b7760ad6efb7b96122aa7133ad21e22653ae222'
* commit '7b7760ad6efb7b96122aa7133ad21e22653ae222':
  aarch64: Fix negative movrel offsets for windows

Merged-by: James Almer <jamrial@gmail.com>
2017-11-11 10:02:43 -03:00
Michael Niedermayer
1fa3a9a31d avutil/frame: Add private_ref to AVFrame
This gives FFmpeg libs a field that they can freely and safely use.
Avoiding the need of wrapping of a users opaque_ref field and its issues.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-11-10 16:44:17 +01:00
Gyan Doshi
84556ef059 lavu/timecode: clarify error msg for timecode_rate
The user-supplied value for timecode_rate in drawtext is rounded
to nearest integer. So, a supplied value of 0.49 or lower is rounded to 0.
This throws a misleading error message which says "Timecode frame rate must be
specified". Changed message to account for values under one.

Also noted supported framerates for drop TC.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-11-10 00:53:11 +01:00
Greg Wessels
2c2f25eb89 avutil/hwcontext_d3d11va: Fix leak when wrapping texture in AVD3D11FrameDescriptor
Reviewed-by: Aaron Levinson <alevinsn_dev@levland.net>
Signed-off-by: James Almer <jamrial@gmail.com>
2017-11-07 22:56:43 -03:00
Martin Vignali
bb3d62874e avutil/pixdesc: remove reference to avcodec_get_chroma_sub_sample
Don't recommend to use deprecated functions.

Signed-off-by: James Almer <jamrial@gmail.com>
2017-11-06 19:16:46 -03:00
Michael Niedermayer
e34fe61bf4 avutil/softfloat: Add FLOAT_MIN
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-11-05 22:13:16 +01:00
James Almer
2eb20caccf Merge commit 'd76479c5020ca43e67d47ba3767146b192dc4782'
* commit 'd76479c5020ca43e67d47ba3767146b192dc4782':
  ppc: Drop support for Apple GCC

Merged-by: James Almer <jamrial@gmail.com>
2017-11-01 20:16:33 -03:00
James Almer
e621b1ca64 Merge commit '97cfe1d8bd1968143e2ba9aa46ebe9504a835e24'
* commit '97cfe1d8bd1968143e2ba9aa46ebe9504a835e24':
  Convert all AVClass struct declarations to designated initializers.

Merged-by: James Almer <jamrial@gmail.com>
2017-11-01 20:05:09 -03:00
Carl Eugen Hoyos
17806f6083 lavu/murmur3: Enforce usual function attribute order. 2017-11-01 03:05:51 +01:00
James Almer
71bf534dd6 Merge commit '59cee42d7d22530e66a155305389e29679b11f78'
* commit '59cee42d7d22530e66a155305389e29679b11f78':
  arm: Check for the .arch directive in configure

Merged-by: James Almer <jamrial@gmail.com>
2017-10-30 20:04:46 -03:00
James Almer
4959f18a8e Merge commit '04b0f0e371ff81b682274b574fb465ba4395c09f'
* commit '04b0f0e371ff81b682274b574fb465ba4395c09f':
  mem: uninline av_malloc(z)_array()

Merged-by: James Almer <jamrial@gmail.com>
2017-10-30 16:08:14 -03:00
James Almer
7df37dd319 avutil/frame: deprecate getters and setters for AVFrame fields
The fields can be accessed directly, so these are not needed anymore.

Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: James Almer <jamrial@gmail.com>
2017-10-29 10:16:44 -03:00
James Almer
00bfe8509c Merge commit '193b09189004ede4a6998e69192d1a9f63602088'
* commit '193b09189004ede4a6998e69192d1a9f63602088':
  thread: Define ff_mutex_* macros as stub functions when threads are disabled

Merged-by: James Almer <jamrial@gmail.com>
2017-10-26 17:13:14 -03:00
James Almer
5de85c1029 Merge commit '10f4511f14a4e830c0ed471df4cd1cc2a18a481a'
* commit '10f4511f14a4e830c0ed471df4cd1cc2a18a481a':
  libavutil: Make LOCAL_ALIGNED(xx be equal to LOCAL_ALIGNED_xx(

Also added LOCAL_ALIGNED_4 as it's used in vp8 decoder, and
simplified the configure defines.

Merged-by: James Almer <jamrial@gmail.com>
2017-10-26 14:06:34 -03:00
Kaustubh Raste
736a48901f avcodec/mips: Improve hevc bi weighted hv mc msa functions
Use immediate unsigned saturation for clip to max saving one vector register.

Signed-off-by: Kaustubh Raste <kaustubh.raste@imgtec.com>
Reviewed-by: Manojkumar Bhosale <Manojkumar.Bhosale@imgtec.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-10-25 21:50:37 +02:00
Dale Curtis
50e30d9bb7 Don't use _tzcnt instrinics with clang for windows w/o BMI.
Technically _tzcnt* intrinsics are only available when the BMI
instruction set is present. However the instruction encoding
degrades to "rep bsf" on older processors.

Clang for Windows debatably restricts the _tzcnt* instrinics behind
the __BMI__ architecture define, so check for its presence or
exclude the usage of these intrinics when clang is present.

See also:
https://ffmpeg.org/pipermail/ffmpeg-devel/2015-November/183404.html
https://bugs.llvm.org/show_bug.cgi?id=30506
http://lists.llvm.org/pipermail/cfe-dev/2016-October/051034.html

Signed-off-by: Dale Curtis <dalecurtis@chromium.org>
Reviewed-by: Matt Oliver <protogonoi@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-10-25 21:50:37 +02:00
Diego Biurrun
0af8a72174 build: Drop support for legacy TI ARM compiler 2017-10-25 13:39:58 +02:00
Mark Thompson
2708c8e8ef hwcontext_vaapi: Set message callbacks on internally-created devices
The message callbacks are library-safe in libva2, so we can now use
them.
2017-10-25 00:01:41 +01:00
James Almer
4e9dc52a97 Merge commit '1bd986ed4b0e95ded368a8eeb5c044853c090f9b'
* commit '1bd986ed4b0e95ded368a8eeb5c044853c090f9b':
  hwcontext: Move NONE to the be the first member of AVHWDeviceType

Merged-by: James Almer <jamrial@gmail.com>
2017-10-24 19:14:22 -03:00
Martin Storsjö
17f5171cd4 arm: Check for have_vfp_vm instead of !have_vfpv3 for float_dsp_vfp
This was missed in e2710e790c since those functions weren't exercised
by checkasm.

Signed-off-by: Martin Storsjö <martin@martin.st>
2017-10-24 09:06:56 +03:00
James Almer
572b7a0b85 Merge commit '35cf146a33ce41a1adb6c9bd5a0827eacb1b6bfc'
* commit '35cf146a33ce41a1adb6c9bd5a0827eacb1b6bfc':
  lavu: Drop deprecated av_dlog macro

Merged-by: James Almer <jamrial@gmail.com>
2017-10-23 18:20:07 -03:00
James Almer
c0cfc0ce11 Merge commit '619a433eca2c5655c41b799e0b06380020fb1498'
* commit '619a433eca2c5655c41b799e0b06380020fb1498':
  lavu: Drop deprecated option type

Merged-by: James Almer <jamrial@gmail.com>
2017-10-23 18:18:00 -03:00
James Almer
b773a8d8c1 Merge commit 'dd343fd986459f467a2d1d70c26101dff1d47d68'
* commit 'dd343fd986459f467a2d1d70c26101dff1d47d68':
  lavu: Drop deprecated VDPAU pixel formats

Merged-by: James Almer <jamrial@gmail.com>
2017-10-23 18:15:49 -03:00
James Almer
b46613dd9b Merge commit 'dcc39ee10e82833ce24aa57926c00ffeb1948198'
* commit 'dcc39ee10e82833ce24aa57926c00ffeb1948198':
  lavc: Remove deprecated XvMC support hacks

Merged-by: James Almer <jamrial@gmail.com>
2017-10-23 15:20:49 -03:00
James Almer
8c2b829123 avutil/frame: remove unneccessary metadata pointer getter
Signed-off-by: James Almer <jamrial@gmail.com>
2017-10-23 10:58:00 -03:00
Martin Storsjö
f1fd12ef85 lavu/arm: Check for have_vfp_vm instead of !have_vfpv3 for float_dsp_vfp
This was missed in e754c8e8 / e2710e790c since those functions
weren't exercised by checkasm.

Fixes ticket #6766.
2017-10-23 13:29:12 +02:00
Clément Bœsch
2b32031827 lavc: drop VDA
Deprecated (aka removed) in OSX 10.11, and we have a replacement for it
(VideoToolbox).
2017-10-23 11:56:15 +02:00
James Almer
90eb0a2180 avutil/tests/hmac: remove superfluous loop
The gap in enum values has been removed.

Signed-off-by: James Almer <jamrial@gmail.com>
2017-10-22 20:25:38 -03:00
James Almer
1eb01cca6f avutil/hmac: remove gap in AVHMACType enum values
Signed-off-by: James Almer <jamrial@gmail.com>
2017-10-22 19:47:05 -03:00
James Almer
382aaa3312 avutil/crc: remove gap in AVCRCId enum values
Signed-off-by: James Almer <jamrial@gmail.com>
2017-10-22 00:44:55 -03:00
James Almer
69b5ce64d2 Merge commit '07a2b155949eb267cdfc7805f42c7b3375f9c7c5'
* commit '07a2b155949eb267cdfc7805f42c7b3375f9c7c5':
  Bump major versions of all libraries

A few API deprecated ~2 years ago or more are also postponed here for
varying reasons.

FF_API_LOWRES:
Since this functionality depends on AVStream->codec, i figure the two can
be removed at the same time in the next bump or so.

FF_API_AVCTX_TIMEBASE:
Couldn't get this one to work. Not just libavcodec but apparently also
libavformat and ffmpeg.c expect AVCodecContext->time_base to be set for
decoding. Upon removal some tests report a different generic stream time
base (like 1/25), and others lose packet duration values. I guess it's
somehow tied to the AVStream->codec clusterfuck.
It can be dealt with alongside FF_API_LAVF_AVCTX in the next bump.

FF_API_OLD_FILTER_OPTS_ERROR:
This one is meant to remain after FF_API_OLD_FILTER_OPTS is removed.
Its purpose is displaying the corrected command line using the new syntax
as a suggestion as part of the error message.

Merged-by: James Almer <jamrial@gmail.com>
2017-10-21 14:57:53 -03:00
James Almer
072b14f390 Merge commit '8e2346154e6d58b733fd20326ce706f82fd91b3e'
* commit '8e2346154e6d58b733fd20326ce706f82fd91b3e':
  libavutil: Hook up the rest of the gcc specific attributes to clang as well

Merged-by: James Almer <jamrial@gmail.com>
2017-10-21 14:25:55 -03:00
James Almer
1ba5e456dd Merge commit '3aa9c523e9cf4f4a5e239ac737281e096c884907'
* commit '3aa9c523e9cf4f4a5e239ac737281e096c884907':
  libavutil: Define the noreturn attribute for clang in MSVC mode as well

Merged-by: James Almer <jamrial@gmail.com>
2017-10-21 14:21:12 -03:00
James Almer
2904db9045 Merge commit '994c4bc10751e39c7ed9f67ffd0c0dea5223daf2'
* commit '994c4bc10751e39c7ed9f67ffd0c0dea5223daf2':
  x86util: Port all macros to cpuflags

See d5f8a642f6

Merged-by: James Almer <jamrial@gmail.com>
2017-10-21 12:15:57 -03:00
Martin Storsjö
69ac24e556 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
Diego Biurrun
7ac092d05d build: CryptGenRandom --> wincrypt, it is a better name 2017-10-12 20:04:18 +02:00
Diego Biurrun
b46900914a build: Merge mach/mach_time.h and mach_absolute_time() checks 2017-10-12 20:04:16 +02:00