Commit Graph

2888 Commits

Author SHA1 Message Date
Michael Niedermayer
4451be5ce1 Merge commit 'b1ee8eec849f17fce2f411a297de9cbf2edaeb3a'
* commit 'b1ee8eec849f17fce2f411a297de9cbf2edaeb3a':
  configure: Add basic valgrind-memcheck support

Conflicts:
	configure

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-05 10:47:19 +02:00
Reinhard Tartler
b1ee8eec84 configure: Add basic valgrind-memcheck support
With the parameter --valgrind-memcheck, the configure script sets
reasonable defaults that can be overridden as explained in the
documentation.

The idea of using set_defaults is from Luca Barbato.
2013-05-04 12:17:51 +02:00
Michael Niedermayer
760f7d3a90 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  compat: msvc: Make sure the object files are included when linking statically
  id3v2: check for end of file while unescaping tags

Conflicts:
	configure
	libavformat/id3v2.c

Note, ffmpeg is not affected by the out of buffer write bug

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-03 15:50:01 +02:00
Martin Storsjö
769d921f3e compat: msvc: Make sure the object files are included when linking statically
If building libav with -MD in the cflags (for making the MSVC compiler
generate code for using a dynamically linked libc), the system headers
that declare strtod, snprintf and vsnprintf declare the functions as
imported from a DLL. To hook up wrappers of our own for these functions,
the function names are defined to avpriv_*, so that the calling code
within libav calls the wrappers instead. Since these functions
are declared to be imported from DLLs, the calling code expects to
load them from DLL import function pointers (creating references to
_imp__avpriv_strtod instead of directly to avpriv_strtod). If the
libav libraries are not built as DLLs, no such function pointers (as
the calling code expects) are created.

The linker can fix this up automatically in some cases (producing
warnings LNK4217 and LNK4049), if the object files are already
included. By telling the linker to try to include those symbols
(without the _imp prefix as the calling code ends up using),
we get the object files included, so that the linker can do the
automatic fixup. This is done via config.h, so that all (or at least
most) of the object files in our libraries force including the compat
files, to make sure they are included regardless of what files from our
static libraries actually are included.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-05-03 13:34:34 +03:00
Michael Niedermayer
6190aae90d Merge commit 'ffb068ce8e99df121d18a5b9b1d820f3ea8697fb'
* commit 'ffb068ce8e99df121d18a5b9b1d820f3ea8697fb':
  configure: Don't do enable_deep_weak on disabled variables

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-03 11:17:02 +02:00
Michael Niedermayer
085a4e6b16 Merge commit '4d810ad2e943a59658ddf00a397121c2b62f7157'
* commit '4d810ad2e943a59658ddf00a397121c2b62f7157':
  configure: Use a different variable name in push/popvar

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-03 11:11:44 +02:00
highgod0401
f685aee18f lavu/opencl: fix the compile bug on linux
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-03 04:15:29 +02:00
Martin Storsjö
ffb068ce8e configure: Don't do enable_deep_weak on disabled variables
This avoids cases where configure tries to weakly enable an item
which actually is disabled, ending up still enabling dependencies
of the item which itself is only enabled weakly.

More concretely, the h264 decoder suggests error resilience, which
is then enabled weakly (unless manually disabled). Previously,
dsputil, which is a dependency of error resilience, was enabled
even if error resilience wasn't enabled in the end.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-05-02 22:31:57 +03:00
Martin Storsjö
4d810ad2e9 configure: Use a different variable name in push/popvar
The variable name 'var' is commonly used to iterate through arguments
in other functions. When the pushvar function internally uses the
variable 'var', it makes pushing/popping the variable 'var' not
work as intended.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-05-02 22:31:55 +03:00
highgod0401
df9117921a lavu/opencl: add check version and platform
Reviewed-by: Hanspeter Niederstrasser <niederstrasser@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-28 23:42:58 +02:00
Georg Martius
4364e1f150 lavfi: add video stabilization plugins using vid.stab library
vidstabdetect and vidstabtransform common functions for interfacing
vid.stab are in libavfilter/vidstabutils.c

Signed-off-by: Georg Martius <martius@mis.mpg.de>
2013-04-24 18:30:42 +02:00
Michael Niedermayer
3fee9fa022 Merge commit '28bc406c84b04a5f1458b90ff52ddbec73e46202'
* commit '28bc406c84b04a5f1458b90ff52ddbec73e46202':
  mjpeg: Use hpeldsp instead of dsputil for half-pel functions
  svq1enc: Use hpeldsp instead of dsputil for half-pel functions

Conflicts:
	configure
	libavcodec/mjpegdec.c
	libavcodec/svq1enc.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-20 13:21:18 +02:00
Michael Niedermayer
ab4ba6b74d Merge commit '2f6bc5f7c193477c2ebc0acce8f2d5551445e129'
* commit '2f6bc5f7c193477c2ebc0acce8f2d5551445e129':
  svq3: Use hpeldsp instead of dsputil for half-pel functions
  mpegvideo: Use hpeldsp instead of dsputil for half-pel functions
  svq1: Use hpeldsp instead of dsputil for half-pel functions
  mimic: Use hpeldsp instead of dsputil for half-pel functions

Conflicts:
	configure
	libavcodec/motion_est.c
	libavcodec/mpegvideo.c
	libavcodec/mpegvideo.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-20 10:12:07 +02:00
Ronald S. Bultje
28bc406c84 mjpeg: Use hpeldsp instead of dsputil for half-pel functions
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-19 23:18:38 +03:00
Ronald S. Bultje
1277dc07fb svq1enc: Use hpeldsp instead of dsputil for half-pel functions
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-19 23:18:32 +03:00
Ronald S. Bultje
2f6bc5f7c1 svq3: Use hpeldsp instead of dsputil for half-pel functions
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-19 23:18:27 +03:00
Ronald S. Bultje
f4fed5a2f9 mpegvideo: Use hpeldsp instead of dsputil for half-pel functions
This also converts vc1, since that is mpegvideo-based.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-19 23:18:21 +03:00
Ronald S. Bultje
6caa44aa7d svq1: Use hpeldsp instead of dsputil for half-pel functions
This makes svq1 independent of dsputil.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-19 23:18:14 +03:00
Ronald S. Bultje
c10470035e mimic: Use hpeldsp instead of dsputil for half-pel functions
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-19 23:18:08 +03:00
Ronald S. Bultje
8071264f21 interplayvideo: Use hpeldsp instead of dsputil for half-pel functions
This makes interplayvideo independent of dsputil.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-19 23:18:02 +03:00
Ronald S. Bultje
0f0a11d576 bink: Use hpeldsp instead of dsputil for half-pel functions
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-19 23:17:56 +03:00
Ronald S. Bultje
8f992dc8c7 indeo3: Use hpeldsp instead of dsputil for half-pel functions
This makes the Indeo 3 decoder independent of dsputil.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-19 23:17:50 +03:00
Ronald S. Bultje
cb7ecb7563 vp56: Use hpeldsp instead of dsputil for half-pel functions
This makes vp5 and vp6 independent of dsputil.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-19 23:17:33 +03:00
Ronald S. Bultje
3bd062bf7f vp3: Use hpeldsp instead of dsputil for half-pel functions
This makes vp3 independent of dsputil.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-19 23:17:26 +03:00
Ronald S. Bultje
68d8238cca hpeldsp: Add half-pel functions (currently copies of dsputil)
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-19 23:17:17 +03:00
Carl Eugen Hoyos
2ade23a7ad Fix pgc compilation with --disable-optimizations.
-O1 disables dead code elimination on pgc, use -O instead.
2013-04-18 02:20:04 +02:00
Clément Bœsch
ab0ad6eccf lavfi: rename decimate to mpdecimate.
The next commit will introduce a proper decimation filter to be used
along with the field matching filter. To avoid confusion with this
filter which has currently a very limited usage (and will not work
properly with the fieldmatching filter), the new decimation filter will
take the decimate name, and this filter is renamed to mpdecimate.
2013-04-14 15:59:37 +02:00
Michael Niedermayer
ebbd4fd5f0 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  FATE: add a test for the interlace filter
  lavfi: new interlace filter

Conflicts:
	Changelog
	configure
	doc/filters.texi
	libavfilter/Makefile
	libavfilter/allfilters.c
	tests/fate/filter.mak

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-12 16:32:33 +02:00
Michael Niedermayer
b2175b0f2a Merge commit '93e65e9a6c0895f869752a66731d9b2ec3916467'
* commit '93e65e9a6c0895f869752a66731d9b2ec3916467':
  Cosmetics, restore alphabetic order in atomics lists.

Conflicts:
	libavutil/Makefile

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-11 22:22:06 +02:00
Vittorio Giovara
3fce136798 lavfi: new interlace filter
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2013-04-11 21:33:07 +02:00
James Almer
94d13df34c Fix compilation with --disable-everything --enable-filter=deshake
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-11 16:33:02 +02:00
Paul B Mahol
d185343687 libshine fixed point MP3 encoding support
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-04-11 14:27:59 +00:00
Michael Niedermayer
742c392885 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  dsputil: Make dsputil selectable

Conflicts:
	configure
	libavcodec/Makefile
	libavcodec/x86/Makefile
	libavcodec/x86/constants.c
	libavcodec/x86/dsputil_mmx.c
	libavcodec/x86/dsputil_mmx.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-11 12:32:29 +02:00
Anton Khirnov
93e65e9a6c Cosmetics, restore alphabetic order in atomics lists. 2013-04-11 12:31:14 +02:00
Clément Bœsch
2a7f885fe1 lavf: add libquvi demuxer. 2013-04-10 12:09:20 +02:00
Ronald S. Bultje
b93b27edb0 dsputil: Make dsputil selectable
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-10 11:04:05 +03:00
Michael Niedermayer
84bfa8beb7 Merge commit 'a862c7d3368241e72a465ab944afa38ea62a6640'
* commit 'a862c7d3368241e72a465ab944afa38ea62a6640':
  Integrate lcov/gcov into Libav

Conflicts:
	Makefile
	common.mak

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-06 13:23:38 +02:00
Reinhard Tartler
a862c7d336 Integrate lcov/gcov into Libav
The gcov/lcov are a common toolchain for visualizing code coverage with
the GNU/Toolchain. The documentation and implementation of this
integration was heavily inspired from the blog entry by Mike Melanson:
http://multimedia.cx/eggs/using-lcov-with-ffmpeg/
2013-04-05 18:55:11 +02:00
Stefano Sabatini
9b4d9d8795 doc: enable compilation of -all tool pages
In particular, add documentation configuration system, through the
doc/config.texi file.

Fix trac issue #2374.
2013-04-05 10:11:57 +02:00
Michael Niedermayer
57b191b82a Merge commit 'fc43c19a567aa945398dccb491d972c11ec2a065'
* commit 'fc43c19a567aa945398dccb491d972c11ec2a065':
  matroska: Update the available size after lace parsing
  clang: use -fsantize=address and -fsanitize=thread

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-04 12:39:18 +02:00
Michael Niedermayer
4d636947b4 Merge commit '817dff578f13ce97576c609ab141508b9dc782e9'
* commit '817dff578f13ce97576c609ab141508b9dc782e9':
  configure: Check for the atomic.h functions used in the suncc atomics header

Conflicts:
	configure

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-03 15:08:21 +02:00
Michael Niedermayer
6ce1d87355 Merge commit 'f9f6402e9c9ce3642df981b48507df3a2d956f65'
* commit 'f9f6402e9c9ce3642df981b48507df3a2d956f65':
  configure: prettify atomics handling.

Conflicts:
	configure

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-03 14:46:48 +02:00
Luca Barbato
19f251a288 clang: use -fsantize=address and -fsanitize=thread
The previous syntax is deprecated.
2013-04-03 12:23:43 +02:00
Martin Storsjö
817dff578f configure: Check for the atomic.h functions used in the suncc atomics header
The "suncc" atomics implementation uses a suncc specific memory
barrier, but also relies on a few atomic functions from atomic.h,
that are not suncc specific but specific to solaris. This made
the current implementation fail on suncc on linux.
2013-04-03 09:23:04 +02:00
Anton Khirnov
f9f6402e9c configure: prettify atomics handling.
Add simpler names and a shorthand for native atomics (as opposed to
pthreads fallback).
2013-04-03 09:22:31 +02:00
highgod0401
189cbc1a03 opencl wrapper based on comments on 20130401
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-01 12:52:13 +02:00
Michael Niedermayer
e63ebaca16 Merge commit 'e9cc98839574c7e8d546e890ebbf57d1766e5d8a'
* commit 'e9cc98839574c7e8d546e890ebbf57d1766e5d8a':
  win32: Allow other programs to open the same files
  configure: Add error_resilience as dependency to the eatqi decoder

Conflicts:
	configure
	libavformat/os_support.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-28 12:20:41 +01:00
Michael Niedermayer
021547bfcc Merge commit 'd767e2f969933b4e450ed4e69ea2bf8ca864838c'
* commit 'd767e2f969933b4e450ed4e69ea2bf8ca864838c':
  configure: fix dependencies of XvMC and old vdpau mpeg2 decoders

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-28 10:54:17 +01:00
Martin Storsjö
cfe5908a72 configure: Add error_resilience as dependency to the eatqi decoder
This makes standalone compilation of the eatqi decoder
succeed. The dependency comes from the shared mpeg12dec.o file.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-03-27 17:37:15 +02:00
Michael Niedermayer
12f203a098 Merge commit 'c24469e812501903a46a06eff9722a82e136e841'
* commit 'c24469e812501903a46a06eff9722a82e136e841':
  utils: add workaround for AVHWAccel in ff_get_buffer compat code
  configure: Remove a stray msmpeg4v1 encoder declaration

Conflicts:
	libavcodec/utils.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-27 11:42:15 +01:00