Commit Graph

3070 Commits

Author SHA1 Message Date
Alex Smith
f11e4045b9 configure: More msvc/icl combining
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2013-06-22 17:00:57 -04:00
Derek Buitenhuis
8bdbabfaa4 configure: Enable MinGW-w64's implementation of vsnprintf and pals
As of r5799 in MinGW-w64's trunk, which is he upcoming major version 3,
the POSIX-compliant vsnprintf implementation is disabled by default.
Enable it for this version. Keep using out own implementation for
prior versions, because it is broken in them.

Relevant Reference Thread: http://article.gmane.org/gmane.comp.gnu.mingw.w64.general/7133

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2013-06-22 16:37:40 -04:00
Michael Niedermayer
99dc90ea59 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  configure: Remove unneeded icl inline compatibility definition

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-06-20 10:29:10 +02:00
Alex Smith
e0d6e2fc67 configure: Remove unneeded icl inline compatibility definition
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-06-19 10:53:27 +03:00
Clément Bœsch
a2c547ffec lavfi: add spp filter. 2013-06-14 01:27:22 +02:00
Stefano Sabatini
28aed88b73 require --enable-gpl for using the frei0r filter
frei0r license is GPL.

Based on a patch by Timothy Gu <timothygu99@gmail.com>.

See thread:
Subject: [FFmpeg-devel] [PATCH 1/2] LICENSE: Complete GPL'd external libraries list
Date: Thu,  6 Jun 2013 18:55:30 -0700
2013-06-13 01:40:24 +02:00
Michael Niedermayer
73d5cf8f43 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  lavc: add a libwavpack encoder wrapper

Conflicts:
	Changelog
	doc/encoders.texi
	libavcodec/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-06-11 09:36:34 +02:00
Michael Niedermayer
529ebc90f2 Merge commit '3965d404ccd9b6cac95c4aee6cb668845031b685'
* commit '3965d404ccd9b6cac95c4aee6cb668845031b685':
  configure: Don't add -fPIC on windows targets

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-06-11 08:53:37 +02:00
Michael Niedermayer
f556f27d29 Merge commit '3fd0d166aa240ef547482d1af397c4a653031c2d'
* commit '3fd0d166aa240ef547482d1af397c4a653031c2d':
  configure: Don't explicitly disable PIC for windows targets

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-06-11 08:38:16 +02:00
Michael Niedermayer
1603c9bd9c Merge commit '2aa3325454545b63cd63e3d5884f8558790d51df'
* commit '2aa3325454545b63cd63e3d5884f8558790d51df':
  configure: arm: Don't try to enable pic for shared libraries on win32

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-06-11 08:28:00 +02:00
Anton Khirnov
84d3ff50cd lavc: add a libwavpack encoder wrapper 2013-06-10 21:33:48 +02:00
Martin Storsjö
3965d404cc configure: Don't add -fPIC on windows targets
This avoids warnings about this option not having any effect on
this platform.

We still want to enable the pic configure item for these platforms
(if detected via the compiler builtin define __PIC__) to get proper
inline assembly workarounds.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-06-10 14:32:13 +03:00
Martin Storsjö
3fd0d166aa configure: Don't explicitly disable PIC for windows targets
This reverts e08c946c6 and 05165c2f7a. The actual intention of
e08c946c6 was to fix shared library builds for arm/win32, which
can also be accomplished in other ways.

Disabling pic on those platforms broke inline assembly on cygwin/64
(since some inline assembly requires knowing whether we are building
as PIC or not), and might also break inline assembly on other
compilers on windows.

As a side-effect, this unfortunately brings back all the warnings
about PIC not having any effect on that platform.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-06-10 14:32:10 +03:00
Martin Storsjö
2aa3325454 configure: arm: Don't try to enable pic for shared libraries on win32
The object file format doesn't support PIC loads in ARM assembly,
there are no relocation types in PE/COFF that correspond to
BFD_RELOC_32_PCREL (R_ARM_REL32 in ELF).

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-06-10 14:32:06 +03:00
Stefano Sabatini
841df7bf86 lavfi: port sab filter from libmpcodecs 2013-06-05 00:06:51 +02:00
Michael Niedermayer
e5cdf9c03b Merge commit '2d66a58ccde05e764594bd7e5f0f9244634d0b2c'
* commit '2d66a58ccde05e764594bd7e5f0f9244634d0b2c':
  Go2Webinar decoder

Conflicts:
	Changelog
	configure
	libavcodec/avcodec.h
	libavcodec/codec_desc.c
	libavcodec/version.h
	libavformat/riff.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-06-03 12:47:26 +02:00
Kostya Shishkov
2d66a58ccd Go2Webinar decoder 2013-06-03 09:24:55 +02:00
Stefano Sabatini
e89182fc94 lavfi: port mcdeint filter from libmpcodecs 2013-06-01 22:34:57 +02:00
Carl Eugen Hoyos
f514b5dff7 Fix libcdio-paranoia detection.
Fixes ticket #2614.
2013-06-01 18:34:51 +02:00
Michael Niedermayer
0c2f673ed2 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  indeo4: expand allowed quantiser range
  configure: icl: Merge -Qdiag-error parameters

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-06-01 10:27:47 +02:00
Michael Niedermayer
b919a8d3a3 Merge commit '14fb9d3d8ccf5f50180aabdb1afe8b570fea3d28'
* commit '14fb9d3d8ccf5f50180aabdb1afe8b570fea3d28':
  configure: Separate commonalities in msvc and icl flags

Conflicts:
	configure

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-06-01 10:16:42 +02:00
Alex Smith
60f09c04d8 configure: icl: Merge -Qdiag-error parameters
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2013-05-31 14:39:30 -04:00
Alex Smith
14fb9d3d8c configure: Separate commonalities in msvc and icl flags
Allows for easier handling of flags that may be specific to icl or msvc.
Furthermore, simplify the handling of warnings and remarks thanks to
icl's support of -Wall on Windows.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2013-05-31 14:39:14 -04:00
Michael Niedermayer
6e073dd127 configure: check for nanosecond precission stat
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-31 17:28:44 +02:00
Carl Eugen Hoyos
b3af9242d0 Use -lX11 -lXext when linking Xv output device.
Reviewed-by: Stefano Sabatini
2013-05-30 13:13:57 +02:00
Stefano Sabatini
9f8937b5ef lavd: add xv output device
Based on the work of Jeff Moguillansky <Jeff.Moguillansky@am.sony.com>.

See thread:
Subject: [FFmpeg-devel] x11 output device for libavdevice
Date: Wed, 10 Apr 2013 23:10:47 +0000
2013-05-30 10:44:54 +02:00
Michael Niedermayer
200ef1e3c3 Merge commit '9f30fb5a773d59298d8d45c741b3fd971d84c97b'
* commit '9f30fb5a773d59298d8d45c741b3fd971d84c97b':
  configure: Don't pass -mthumb or -march= to MSVC
  mpeg12: skip frames consistently

Conflicts:
	libavcodec/mpeg12dec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-29 11:06:26 +02:00
Michael Niedermayer
8543575cc4 Merge commit '78f75b6fa421dd39a715588e9487579f1ce5bada'
* commit '78f75b6fa421dd39a715588e9487579f1ce5bada':
  wavpack: extract sample rate from the bitstream
  configure: support gcc-4.8 instrumentation

Conflicts:
	libavcodec/wavpack.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-29 04:33:27 +02:00
Michael Niedermayer
1f5e5d2205 Merge commit 'ba13606ca6adbc74b4db4a72b0769397d6408791'
* commit 'ba13606ca6adbc74b4db4a72b0769397d6408791':
  fate: Add a --target-samples path parameter

Conflicts:
	configure
	tests/fate/audio.mak
	tests/fate/cover-art.mak
	tests/fate/demux.mak
	tests/fate/ea.mak
	tests/fate/filter-video.mak
	tests/fate/h264.mak
	tests/fate/image.mak
	tests/fate/lossless-audio.mak
	tests/fate/lossless-video.mak
	tests/fate/microsoft.mak
	tests/fate/pcm.mak
	tests/fate/prores.mak
	tests/fate/qt.mak
	tests/fate/real.mak
	tests/fate/screen.mak
	tests/fate/video.mak
	tests/fate/voice.mak
	tests/fate/vpx.mak
	tests/fate/vqf.mak

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-29 04:25:37 +02:00
Martin Storsjö
9f30fb5a77 configure: Don't pass -mthumb or -march= to MSVC
The modern MSVC for ARM always builds for thumb, and it can't be
disabled.

Also just use the default arch instead of trying to map the -march
parameter to MSVC's -arch parameter (which only takes the values
ARMv7VE and VFPv4).

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-05-29 00:53:11 +03:00
Luca Barbato
0ba49d28a1 configure: support gcc-4.8 instrumentation
Since version 4.8 gcc sports asan and tsan integration that can
be leveraged when hunting bugs.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-05-28 17:22:16 +02:00
Martin Storsjö
ba13606ca6 fate: Add a --target-samples path parameter
This allows having the samples accessible via different paths
on the target and on the host.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-05-28 17:16:54 +03:00
Carl Eugen Hoyos
c0957f49c7 configure: Fix jack auto-detection, broken since 3fc8500 2013-05-28 10:28:16 +02:00
Michael Niedermayer
3fc8500483 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  smacker: add a clarification notice about audio decoding
  configure: make jack depend on pthreads

Conflicts:
	configure

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-28 08:59:07 +02:00
Anton Khirnov
a3fc62e89e configure: make jack depend on pthreads 2013-05-27 21:56:14 +02:00
Michael Niedermayer
ee5964cc9c Merge remote-tracking branch 'qatar/master'
* qatar/master:
  msvc/icl: Intel Compiler support on Windows

Conflicts:
	configure

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-25 21:43:13 +02:00
Michael Niedermayer
efcc334c9d Merge commit '9495cd170b5786c3518419e873d94eb5e7ada11a'
* commit '9495cd170b5786c3518419e873d94eb5e7ada11a':
  configure: Fix check_exec_crash for ICL support

Conflicts:
	configure

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-25 21:38:17 +02:00
Alex Smith
322e4194dd msvc/icl: Intel Compiler support on Windows
Initial support for the ICL compiler on windows. Requires a new
c99wrap with ICL support (1.0.2+).

Currently not much different speed wise compared to msvc. In the
future with a few changes it can be made to support the inline asm.
This would be the primary reason for using it.

Passed all fate tests, versions tested:
    13.1.1.171 (2013 Update 3) x86 and x64
    12.1.5.344 (2011 Update 11) x86 and x64

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-05-25 17:52:44 +02:00
Laurent
9495cd170b configure: Fix check_exec_crash for ICL support
Change the check_exec_crash test to use a function pointer instead of
simply calling the function. The EBP availability test will crash when
compiled with ICL likely due to compiler optimization shenanigans.

Originally the check_exec_crash code was moved out of main to fix a
problem with gcc's treatment of non-leaf main on x86_32. Libav already
moved the code out of main but the addition of the function pointer will
prevent any inlining which fixes the remaining problem.

A function pointer is used since it is compiler agnostic (as opposed to
say __attribute__ ((noinline)) which would only work with gcc compatible
compilers).

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-05-25 12:07:56 +02:00
Carl Eugen Hoyos
82d105543c Fix compilation with --disable-everything --enable-filter=dctdnoiz 2013-05-24 14:19:20 +00:00
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