Commit Graph

3030 Commits

Author SHA1 Message Date
Michael Niedermayer c88e52e797 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  configure: Enable the strtod workaround when building for bionic

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-22 10:57:46 +02:00
Martin Storsjö 5b2b0b912d configure: Enable the strtod workaround when building for bionic
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-05-21 19:37:07 +03:00
Michael Niedermayer 2afcd16711 Merge commit '0b6899f154347cdd0aa66c5ec16ed9c65871766f'
* commit '0b6899f154347cdd0aa66c5ec16ed9c65871766f':
  configure: msvc: Set the target windows version to XP if no target is set

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-20 10:46:21 +02:00
Clément Bœsch 16a75eaa20 lavd: add v4l2 outdev. 2013-05-20 01:11:33 +02:00
Michael Niedermayer 1a5f1bcff0 configure: add more allocation functions to valgrind-massif
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-19 20:30:51 +02:00
Martin Storsjö 0b6899f154 configure: msvc: Set the target windows version to XP if no target is set
MSVC 2010 (or more precisely, Windows SDK 7.0 which comes with MSVC
2010) sets _WIN32_WINNT to the constant for Windows 7 if nothing is
set. This could lead to the libav configure script detecting and
using functions only present in Windows 7 or newer, which in most
cases isn't desired. If the caller explicitly wants this, the caller
can add the _WIN32_WINNT define via --extra-cflags, setting the desired
version.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-05-19 18:22:32 +03:00
Michael Niedermayer 1de28cb7e4 configure: use the user specified valgrind excutable for massif
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-19 11:24:15 +02:00
Michael Niedermayer f51263e6fe configure: fix valgrind-massif to actually work
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-19 11:23:28 +02:00
Michael Niedermayer fa6001e728 Merge commit '8e673efc6f5b7a095557664660305148f2788d30'
* commit '8e673efc6f5b7a095557664660305148f2788d30':
  prores: update FATE test to account for alpha plane present in the test sample
  configure: Add basic valgrind-massif support

Conflicts:
	tests/fate/prores.mak
	tests/ref/fate/prores-alpha

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-19 10:53:39 +02:00
Lukasz Marek c86d3a54de FTP protocol support
Implementation of ftp protocol.

Fixes #1672

Signed-off-by: Lukasz Marek <lukasz.m.luki@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-18 22:16:02 +02:00
Luca Barbato edfe609fc9 configure: Add basic valgrind-massif support
With the parameter --toolchain valgrind-massif, the configure
script sets reasonable defaults that can be overridden as explained
in the documentation.
2013-05-18 21:29:17 +02:00
Michael Niedermayer 5bc892cb17 Merge commit '1232a1647ab27e024a3baf4d01d40c8d08d6ced9'
* commit '1232a1647ab27e024a3baf4d01d40c8d08d6ced9':
  Apple Intermediate Codec decoder
  movenc: Don't add base_data_offset in tfhd for PIFF files

Conflicts:
	Changelog
	libavcodec/allcodecs.c
	libavcodec/avcodec.h
	libavcodec/codec_desc.c
	libavcodec/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-17 10:38:08 +02:00
Kostya Shishkov 1232a1647a Apple Intermediate Codec decoder 2013-05-17 06:31:05 +02:00
Carl Eugen Hoyos 17989dcf54 configure: Autodetect VA-API
This fixes a regression (reproducible since 1.2) and restores the
behaviour of 0.6, 0.7, 0.8, 0.9, 0.10, 0.11, 1.0 and 1.1.
2013-05-17 02:32:21 +02:00
Clément Bœsch b1e84efa3d lavfi: port wavelet denoiser filter from libmpcodecs. 2013-05-16 00:45:45 +02:00
Michael Niedermayer e3c24f663e Merge remote-tracking branch 'qatar/master'
* qatar/master:
  configure: Use linker hardening flags on mingw
  vc1: Make INIT_LUT() self contained
  vc1: Simplify code by using INIT_LUT()
  vc1: Move INIT_LUT() further up to allow using it in more places
  vc1dec: Remove some now unused variables
  vc1dec: Do not allow field_mode to change after the first header
  vc1, mss2: Check for any negative return value from ff_vc1_parse_frame_header
  vc1dec: Fix current ptr selection in vc1_mc_4mv_chroma()
  vc1dec: Factorize picture pointer selection in vc1_mc_4mv_chroma()
  vc1dec: Factorize picture pointer selection code
  vc1dec: Factorize srcU/V offseting
  vc1dec: Fix tff == 0 handling in init_block_index()
  vc1dec: Update destination pointers in context for fields

Conflicts:
	libavcodec/vc1.c
	libavcodec/vc1dec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-15 20:09:20 +02:00
Alex Smith 225a5f91cc configure: Use linker hardening flags on mingw
This makes it consistent with the msvc builds which automatically set
the DEP and ASLR flags by default.  There really is no good reason why
they shouldn't be set.

The fact that binutils does not set them on by default boggles the mind.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-05-15 14:42:08 +03:00
Clément Bœsch 7b43120c7c lavfi: add dctdnoiz filter. 2013-05-15 00:54:00 +02:00
Stefano Sabatini 7ddb0ef9af lavfi: add zmq filters 2013-05-14 20:10:44 +02:00
Michael Niedermayer 509cc1e883 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  configure: Disable PIC for cygwin just as for win32/mingw

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-14 12:21:48 +02:00
Martin Storsjö 05165c2f7a configure: Disable PIC for cygwin just as for win32/mingw
If this is explicitly disabled for win32/mingw, it should also
be disabled for cygwin, for consistency and for the same reasons
as for win32/mingw.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-05-13 20:20:55 +03:00
Michael Niedermayer df4f4fc8a5 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  configure: x86: Only enable cpunop on i686

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-13 11:36:46 +02:00
Michael Niedermayer 69d52ef8ff Merge commit 'f54b55058a429c4eea5bae7e5bcb49bd29b34199'
* commit 'f54b55058a429c4eea5bae7e5bcb49bd29b34199':
  configure: Rename cmov processor capability to i686

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-13 11:29:40 +02:00
Michael Niedermayer 6585275e79 Merge commit 'e08c946c6860a78b0c479551d5f6735361160cbd'
* commit 'e08c946c6860a78b0c479551d5f6735361160cbd':
  configure: Explicitly disable PIC when targeting win32/mingw

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-13 11:23:16 +02:00
Michael Niedermayer 352eb1f02f Merge commit 'b1803c79dcd6d0a345fa1cbe18dd8e2149717121'
* commit 'b1803c79dcd6d0a345fa1cbe18dd8e2149717121':
  configure: Use enable_weak when enabling pic

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-13 10:53:18 +02:00
Diego Biurrun 2c2c48a9bd configure: x86: Only enable cpunop on i686
The assembler may insert nopl instructions for cpunop, which are not
(universally) supported on i586 CPUs.
2013-05-12 21:23:38 +02:00
Diego Biurrun f54b55058a configure: Rename cmov processor capability to i686
The goal is to make the capapility slightly more general and have it
cover the availability of the nopl instruction in addition to cmov.
2013-05-12 21:23:38 +02:00
Martin Storsjö e08c946c68 configure: Explicitly disable PIC when targeting win32/mingw
These platforms do not have any notion of PIC. On some compilers,
enabling pic produces a number of warnings.

This avoids trying to produce PIC loads in the ARM assembly - there
are no relocation types in PE/COFF that correspond to
BFD_RELOC_32_PCREL (R_ARM_REL32 in ELF).

As a side-effect, this avoids enabling PIC on mingw64, getting rid
of the warnings about PIC not having any effect on that platform.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-05-12 19:45:33 +03:00
Martin Storsjö b1803c79dc configure: Use enable_weak when enabling pic
This allows it to be overridden, either by the user on the command
line, or by other sections of the configure script.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-05-12 19:45:26 +03:00
Carl Eugen Hoyos 0f05b72f19 Fix configure --help output for some autodetected features. 2013-05-10 10:41:28 +02:00
Michael Niedermayer 8d9537228f Merge remote-tracking branch 'qatar/master'
* qatar/master:
  msvc: Move linker pragma from config.h to libavutil/internal.h

Conflicts:
	configure

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-08 14:32:43 +02:00
Michael Niedermayer 1aed0513a1 configure: use shorter variable name for "libavdevice_pc_deps"
This is in line with the new name for the libavfilter variable.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-08 12:38:01 +02:00
Michael Niedermayer 28397de4df Merge commit '9779f93066ee5ea6fba6b76f001d358cc2857891'
* commit '9779f93066ee5ea6fba6b76f001d358cc2857891':
  configure: add dependencies to lavfi .pc file

Conflicts:
	configure

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-08 12:37:15 +02:00
Michael Niedermayer bf0547504b Merge commit 'bce70f8170592599a4f2f5f02606c1246e88df57'
* commit 'bce70f8170592599a4f2f5f02606c1246e88df57':
  configure: make avconv select (a)trim filters

Conflicts:
	configure

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-08 12:17:46 +02:00
Martin Storsjö 06122c2533 msvc: Move linker pragma from config.h to libavutil/internal.h
This makes linking succeed for tools that include config.h but
don't link to libavutil.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-05-08 01:28:25 +03:00
Anton Khirnov 9779f93066 configure: add dependencies to lavfi .pc file
The scale filter depends on sws, resample on lavr, and movie on lavf and
lavc.

Fixes Bug 502.
2013-05-07 12:32:14 +02:00
Anton Khirnov bce70f8170 configure: make avconv select (a)trim filters
They are now used for -ss/-t
2013-05-07 12:32:03 +02:00
Michael Niedermayer fb90e7b86d configure: Use the tool specified with --valgrind instead of a hardcoded "valgrind"
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-05 16:22:44 +02:00
Michael Niedermayer 54021aea57 configure: set valgrind-memcheck toolchain when --valgrind is specified
This avoids duplicating the default command line arguments

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-05 16:21:57 +02:00
Michael Niedermayer 35623d833e Merge remote-tracking branch 'qatar/master'
* qatar/master:
  configure: Check for getenv

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-05 13:05:45 +02:00
Michael Niedermayer 86c9cf643b configure: fix valgrind-memcheck arguments
They now match the --valgrind arguments

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-05 10:52:39 +02:00
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
Martin Storsjö 2cca96e670 configure: Check for getenv
When targeting the "windows store application" (metro) API subset
(or the windows phone API subset), the getenv function isn't
available. If it is unavailable, just define getenv to NULL.

The check uses check_func_headers, since the function actually
might exist in the libraries, but is hidden in the headers.

The fallback is in config.h since msvc can't do -D defines with
parameters on the command line, and it's used both within the
libraries and the frontend applications (so a libavutil internal
header wouldn't be enough).

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-05-04 23:58:59 +03: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
Janne Grunau d767e2f969 configure: fix dependencies of XvMC and old vdpau mpeg2 decoders 2013-03-26 22:53:18 +01:00
Martin Storsjö 2ece5bf3ec configure: Remove a stray msmpeg4v1 encoder declaration
No such encoder exists currently.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-03-26 16:17:00 +02:00
Martin Storsjö 3b2d0ec473 configure: Remove the mpegvideo dependency from svq1
The svq1 decoder can be built standalone without mpegvideo.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-03-26 15:50:00 +02:00
Michael Niedermayer 07d405cc9e configure: mpegvideo should not depend on error resilience
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-26 14:43:12 +01:00
Michael Niedermayer 79c845659a configure: the snow encoder is not supposed to depend on error resilience
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-26 14:41:55 +01:00
Michael Niedermayer 365ad0042a Merge remote-tracking branch 'qatar/master'
* qatar/master:
  h264: Make it possible to compile without error_resilience

Conflicts:
	configure
	libavcodec/h264.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-26 14:36:00 +01:00
Michael Niedermayer 7834bb092a Revert "Fix compilation with --disable-everything --enable-parser=h264."
This reverts commit e0e8c20559.

The mpegvideo dependancy should not be needed anymore
2013-03-26 13:23:01 +01:00
Michael Niedermayer 2cdedcbcea Merge commit '75644335b907919057960716508477239c26fed4'
* commit '75644335b907919057960716508477239c26fed4':
  lavc: Move start code finding to utils.c

Conflicts:
	configure
	libavcodec/mpegvideo.c
	libavcodec/utils.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-26 13:22:48 +01:00
Ronald S. Bultje 0b499c9b06 h264: Make it possible to compile without error_resilience
Error resilience is enabled by the h264 decoder, unless explicitly
disabled. --disable-everything --enable-decoder=h264 will produce
a h264 decoder with error resilience enabled, while
--disable-everything --enable-decoder=h264 --disable-error-resilience
will produce a h264 decoder with error resilience disabled.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-03-26 09:55:05 +02:00
Martin Storsjö 75644335b9 lavc: Move start code finding to utils.c
This allows dropping the mpegvideo dependency from a number of
components.

This also fixes standalone building of the h264 parser, which
was broken in 64e438697.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-03-26 09:48:12 +02:00
Carl Eugen Hoyos 1ed10bd89c Fix typo in dvvideo decoder dependencies.
Fixes compilation with --disable-everything --enable-decoder=dvvideo
2013-03-22 21:37:17 +01:00
Carl Eugen Hoyos e0e8c20559 Fix compilation with --disable-everything --enable-parser=h264. 2013-03-22 13:32:35 +01:00
Michael Niedermayer abbc34c372 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  configure: Enable hwaccels without external dependencies by default.
  doc/developer: Clarify symbol naming prefixes section.

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-22 12:58:22 +01:00
Diego Biurrun 2e2ec66741 configure: Enable hwaccels without external dependencies by default. 2013-03-21 14:19:03 +01:00
d s b9ad009475 AviSynth demuxer rewrite.
Dynamically loads the library itself, rather than through VfW.
Supports AvxSynth on Linux and OS X.

Supports the new colorspaces added in AviSynth 2.6 when used
with AviSynth 2.6.
2013-03-21 04:11:22 +01:00
Ronald S. Bultje b76d853697 lavc: make compilation of frame_thread_encoder.o optional.
Only compile if CONFIG_ENCODERS is enabled, i.e. if at least one
encoder is to be compiled. This prevents it from being includes in
a decoder-only build.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-14 15:04:17 +01:00
Ronald S. Bultje e0a8f31591 mjpeg: use hpeldsp instead of dsputil for half-pel functions. 2013-03-13 03:59:10 +01:00
Ronald S. Bultje b42d594c85 svq1enc: use hpeldsp instead of dsputil for half-pel functions. 2013-03-13 03:59:00 +01:00
Ronald S. Bultje 771ba8f206 snow: use hpeldsp instead of dsputil for half-pel functions. 2013-03-13 03:58:49 +01:00
Ronald S. Bultje 05dd583426 svq3: use hpeldsp instead of dsputil for half-pel functions. 2013-03-13 03:58:31 +01:00
Ronald S. Bultje 4ba5dbc0e4 mpegvideo: use hpeldsp instead of dsputil for half-pel functions.
This also converts vc1, since that is mpegvideo-based.
2013-03-13 03:58:00 +01:00
Ronald S. Bultje 4652389777 svq1: use hpeldsp instead of dsputil for half-pel functions.
This makes svq1 independent of dsputil.
2013-03-13 03:57:45 +01:00
Ronald S. Bultje cc5d17e026 mimic: use hpeldsp instead of dsputil for half-pel functions. 2013-03-13 03:57:33 +01:00
Ronald S. Bultje 04a75bb74f interplayvideo: use hpeldsp instead of dsputil for half-pel functions.
This makes interplayvideo independent of dsputil.
2013-03-13 03:57:21 +01:00
Ronald S. Bultje af1e3dfb9e bink: use hpeldsp instead of dsputil for half-pel functions. 2013-03-13 03:56:09 +01:00
Ronald S. Bultje 4b642ab19b indeo3: use hpeldsp instead of dsputil for half-pel functions.
This makes indeo3 independent of dsputil.
2013-03-13 03:56:09 +01:00
Ronald S. Bultje 704c9874a3 vp56: use hpeldsp instead of dsputil for half-pel functions.
This makes vp5 and vp6 independent of dsputil.
2013-03-13 03:56:07 +01:00
Ronald S. Bultje d1293512cf vp3: use hpeldsp instead of dsputil for half-pel functions.
This makes vp3 independent of dsputil.
2013-03-13 03:55:33 +01:00
Ronald S. Bultje 9628e5a4ac hpeldsp: add half-pel functions (currently copies of dsputil). 2013-03-13 03:54:47 +01:00
Michael Niedermayer b94df21a51 Merge commit '2eaa3663fda750dac66d41fe8541a8744d5563a4'
* commit '2eaa3663fda750dac66d41fe8541a8744d5563a4':
  avplay: enable only when SDL 1.2 is found

Conflicts:
	configure

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-13 01:31:46 +01:00
Nicolas George 684a264638 configure: remove selection of ff(a)buffersink.
buffersink is enabled unconditionally.
2013-03-12 23:31:07 +01:00
Ronald S. Bultje 6a701306db dsputil: make selectable.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-12 19:56:58 +01:00
Martin Storsjö c48828f763 atomic: Check for __sync_val_compare_and_swap instead of __sync_synchronize
Not all gcc configurations have an implementation of all the atomic
operations, and some gcc configurations have some atomic builtins
implemented but not all.

Thus check for the most essential function, whose presence should
indicate that all others are present as well, since it can be used
to implement all the other ones.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-03-12 10:41:02 +01:00
Carl Eugen Hoyos 3f78f0904b Revert "build: disable iconv by default."
This reverts commit 9ad3cd5b5f.

The misdetection on OS X should be fixed, we will only get
problem reports if auto-detection is enabled.
2013-03-10 01:28:16 +01:00
Vittorio Giovara 2eaa3663fd avplay: enable only when SDL 1.2 is found
SDL 2 is API incompatible.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-03-09 14:33:54 +01:00
Michael Niedermayer e92ba51fd7 Merge commit '65f1d45dcc71186ede72fff950996099d23359bd'
* commit '65f1d45dcc71186ede72fff950996099d23359bd':
  lavu: add support for atomic operations.

Conflicts:
	configure

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-08 15:48:27 +01:00
Michael Niedermayer 1f3a577353 Merge commit '4be368b504c6f4a03051448728fc62cd0ed506b2'
* commit '4be368b504c6f4a03051448728fc62cd0ed506b2':
  avstring: Fix isxdigit to not accept non-hex characters
  configure: Add missing videodsp dependencies to some decoders

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-08 15:37:21 +01:00
Michael Niedermayer c32cc7e3a4 Merge commit 'bcd0a7137e4aca0f6f598593b90ca8f338444c51'
* commit 'bcd0a7137e4aca0f6f598593b90ca8f338444c51':
  configure: Add missing h264chroma dependencies to vp5, vp6
  Add missing error_resilience includes to files that use ER

Conflicts:
	configure
	libavcodec/mpeg12.c
	libavcodec/mpeg4videodec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-08 15:23:56 +01:00
Michael Niedermayer b094931ab9 Merge commit '06b54e84254e4834b4978ff5b27cc2b7ee8d7a98'
* commit '06b54e84254e4834b4978ff5b27cc2b7ee8d7a98':
  build: Fix error_resilience code dependencies

Conflicts:
	configure

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-08 15:05:18 +01:00
Martin Storsjö e460aa3282 atomic: Check for __sync_val_compare_and_swap instead of __sync_synchronize
Not all gcc configurations have an implementation of all the atomic
operations, and some gcc configurations have some atomic builtins
implemented but not all.

Thus check for the most essential function, whose presence should
indicate that all others are present as well, since it can be used
to implement all the other ones.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-03-08 14:55:08 +02:00
Ronald S. Bultje 65f1d45dcc lavu: add support for atomic operations.
These could be used for reference counting, or for keeping track of
decoding progress in references in multithreaded decoders.

Support is provided by gcc/msvc/suncc intrinsics, with a fallback using
pthread mutexes.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2013-03-08 07:32:36 +01:00
Diego Biurrun 870add0de9 configure: Add missing videodsp dependencies to some decoders 2013-03-07 15:36:56 +01:00
Diego Biurrun bcd0a7137e configure: Add missing h264chroma dependencies to vp5, vp6 2013-03-07 15:33:41 +01:00
Diego Biurrun 06b54e8425 build: Fix error_resilience code dependencies 2013-03-07 15:04:49 +01:00
Ronald S. Bultje 64e4386974 h264: Integrate draw_horiz_band into ff_h264_draw_horiz_band
This makes the decoder independent of mpegvideo.

This copy of the draw_horiz_band code is simplified compared to
the "generic" mpegvideo one which still has a number of special
cases for different codecs.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-03-07 09:31:44 +02:00
Carl Eugen Hoyos 5da5128493 cavs: Add a dependency on h264chroma
This fixes standalone building of this decoder.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-03-06 21:55:51 +02:00
Carl Eugen Hoyos 34e7a3d74c Move the iconv test to the bottom of configure.
This fixes a possible mis-detection of iconv on OS X.
OS X with macports often has two version of libiconv.2.dylib
installed, one with symbols like "_iconv_open" and one with
"_libiconv_open", so test for iconv with all flags to make
sure the detection uses the same library as the actual
compilation / linking.

Tested-by: Paul Sturbaum
2013-03-06 00:57:51 +01:00
Paul B Mahol 3f35f36a2e lavfi: port MP stereo3d filter
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-03-05 18:36:40 +00:00
Michael Niedermayer 1567095acf Merge remote-tracking branch 'qatar/master'
* qatar/master:
  configure: Use check_builtin() where appropriate

Conflicts:
	configure

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-05 12:37:15 +01:00
Michael Niedermayer 1cb3ca2a67 Merge commit '9c7d85b3b45a77742b1e69c48ab33f9c8a2e6f35'
* commit '9c7d85b3b45a77742b1e69c48ab33f9c8a2e6f35':
  configure: Add check_builtin convenience function

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-05 12:23:48 +01:00
Michael Niedermayer 890b9c5c46 Merge commit 'f868b24d0f280bb966e5c352028a343e45d20a02'
* commit 'f868b24d0f280bb966e5c352028a343e45d20a02':
  configure: Add sanitize_var_name convenience function

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-05 12:17:15 +01:00
Michael Niedermayer 06ad309ab4 Merge commit '813b82b927b19532e3bc3397b972c8a27b9f6326'
* commit '813b82b927b19532e3bc3397b972c8a27b9f6326':
  configure: Fix silly typo in logging command of check_struct()
  fate: remove last incomplete frame from mpeg2-field-enc test

Conflicts:
	tests/fate/video.mak
	tests/ref/fate/mpeg2-field-enc

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-05 12:11:48 +01:00
Diego Biurrun 2a7ab2dfaa configure: Use check_builtin() where appropriate 2013-03-05 11:04:37 +01:00
Diego Biurrun 9c7d85b3b4 configure: Add check_builtin convenience function 2013-03-05 11:04:37 +01:00
Diego Biurrun f868b24d0f configure: Add sanitize_var_name convenience function
This is useful in all the places where special characters in
variable names are manually translated to underscores.
2013-03-05 11:04:37 +01:00
Diego Biurrun 813b82b927 configure: Fix silly typo in logging command of check_struct() 2013-03-05 11:04:37 +01:00
Carl Eugen Hoyos d043461344 Add h264chroma dependency for mpegvideo / lowres to configure.
Fix building for some unusual configurations.
2013-03-05 01:07:12 +01:00
Michael Niedermayer 144da7eeca Merge remote-tracking branch 'cehoyos/master'
* cehoyos/master:
  buildsys: only include log2_tab per library for shared builds
  Add h264chroma dependency for cavs decoder to configure.
  Add h264qpel dependency for snow codec to configure.
  Add h264chroma dependency for vp5 and vp6 decoder to configure.

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-04 14:45:52 +01:00