Commit Graph

3596 Commits

Author SHA1 Message Date
Michael Niedermayer
fe5093aafc Revert "configure: Refactor setting of feature test macro _XOPEN_SOURCE"
This fixes build on netbsd and probably other bsd based Platforms

This reverts commit 56b8d10676.
2014-09-22 17:12:35 +02:00
Deti Fliegl
bac6cfcb3a avdevice: add decklink input support
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-09-22 02:55:24 +02:00
Jörg Krause
56b8d10676 configure: Refactor setting of feature test macro _XOPEN_SOURCE
Some C libraries, eg glibc, uclibc, and musl, uses feature test macros
to expose definitions conforming to the standards ISO C, POSIX and
extensions. According to which feature test macros are defined by the
user or the compiler, a header file, eg <features.h>, used by these
libraries internally defines various other macros.

glibc and uclibc also defines release test macros, eg __GLIBC__ and
__UCLIBC__ in <features.h>. musl does not have (and does not want) a
macro __MUSL__. Therefore it is not possible to check for the musl
library.

However, building FFmpeg with musl needs the feature test macro
_XOPEN_SOURCE=600 to be defined.

Signed-off-by: Jörg Krause <jkrause@posteo.de>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-09-22 00:34:56 +02:00
James Almer
d1c49bcae9 avfilter: remove obsolete FF_API_ACONVERT_FILTER cruft
Signed-off-by: James Almer <jamrial@gmail.com>
2014-09-17 07:43:03 +00:00
Michael Niedermayer
5ddfac81c4 Merge commit '2d589273dd36c5eb271a035ea0e669b64dae257f'
* commit '2d589273dd36c5eb271a035ea0e669b64dae257f':
  configure: Split adding of CFLAGS and CPPFLAGS for hardened toolchain

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-09-16 11:58:40 +02:00
Diego Biurrun
2d589273dd configure: Split adding of CFLAGS and CPPFLAGS for hardened toolchain 2014-09-16 00:18:53 -07:00
Clément Bœsch
864d124bb7 build: simplify libwebp check
Tested (compilation and runtime) with libwebp 0.2.0, 0.2.1 and 0.4.1.
2014-09-15 23:54:34 +02:00
Mikulas Patocka
cdb3eee7c4 configure: Fix miscompilation for i586
If the CPU is 386, 486 or pentium, we must not use cmov in inline
assembler.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-09-12 22:57:31 +02:00
Jörg Krause
453944cc77 configure: fix check_cmd in check_host_cpp
Use correct cpp and c flags variables for the host libc.

Signed-off-by: Jörg Krause <jkrause@posteo.de>
Reviewed-by: Benoit Fouet <benoit.fouet@free.fr>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-09-11 18:42:23 +02:00
Michael Niedermayer
f044fc0372 Merge commit '1274ea8dbaec44355bde07f6bb31fec0c4e6fd2d'
* commit '1274ea8dbaec44355bde07f6bb31fec0c4e6fd2d':
  Split off floating point AAN (I)DCT into separate components

Conflicts:
	configure
	libavcodec/Makefile
	libavcodec/dct-test.c
	libavcodec/idctdsp.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-09-08 00:54:55 +02:00
Diego Biurrun
1274ea8dba Split off floating point AAN (I)DCT into separate components 2014-09-07 13:36:26 -07:00
Michael Niedermayer
5a20f1885d Merge commit 'f20518568a77a6138fc74021ce56013ab72907ba'
* commit 'f20518568a77a6138fc74021ce56013ab72907ba':
  build: Split WMA frequencies into a separate object file

Conflicts:
	configure
	libavcodec/Makefile

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-09-04 19:46:06 +02:00
Diego Biurrun
f20518568a build: Split WMA frequencies into a separate object file
These are the only WMA bits shared with binkaudio. Splitting them off
reduces the binnkaudio dependency on general WMA code.
2014-09-04 05:19:46 -07:00
Timothy Gu
17ad5fbb8a Use makeinfo to generate html doc for the new website
texi2html is deprecated by upstream in favor of makeinfo/texi2any. See:

- https://www.gnu.org/software/texinfo/manual/texinfo/html_node/texi2html.html
- https://wiki.debian.org/Texi2htmlTransition
- https://lists.debian.org/debian-devel/2013/05/msg01516.html

This is actually two separate changes.

Based on a patch by Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>.

Fixes Trac ticket #3232.

Signed-off-by: Timothy Gu <timothygu99@gmail.com>
2014-09-04 02:34:20 +02:00
Michael Niedermayer
dc81c0a0dc Merge commit 'ebef9f5a56d7df91e010a177a80cfc8dbe394305'
* commit 'ebef9f5a56d7df91e010a177a80cfc8dbe394305':
  time: Use clock_gettime if the monotonic clock is available

Conflicts:
	configure

The change to av_gettime() isnt merged, a patch will be posted to the mailing list
that would do the switch

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-09-03 14:24:53 +02:00
Luca Barbato
ebef9f5a56 time: Use clock_gettime if the monotonic clock is available
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2014-09-03 02:38:03 +02:00
Rong Yan
6abeaf2781 build sys: enable the decoding_encoding example under the ffmpeg/doc/examples
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-09-02 04:19:15 +02:00
Carl Eugen Hoyos
7cf1f0f4af Fix standalone compilation of the snow decoder. 2014-09-01 23:30:57 +02:00
Clément Bœsch
36952786a5 build: use pkg-config to detect libmodplug
Fix static build, at least for OSX.
2014-09-01 09:03:26 +02:00
James Almer
c2c56d54ee configure: update libvpx_vp9_encoder check
Required to add support for the aq_mode setting.
Any libvpx snapshot prior to 1.3.0 is not recommended for vp9 encoding for that matter.

Reviewed-by: James Zern <jzern@google.com>
Signed-off-by: James Almer <jamrial@gmail.com>
2014-08-26 00:53:50 -03:00
James Almer
b140b51ebb lavc/tiff: add support for LZMA compression
Derived from deflate code.
Requires liblzma.

Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-24 01:21:39 +02:00
Michael Niedermayer
2e3c1699ae Merge commit '749b1f1359b5af0a08221923b016551b18ab6171'
* commit '749b1f1359b5af0a08221923b016551b18ab6171':
  configure: add --enable-rpath

Conflicts:
	configure

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-23 22:46:06 +02:00
Reinhard Tartler
749b1f1359 configure: add --enable-rpath
This option facilitates testing shared libarary builds: for instance
fate builders do no longer need to set LD_LIBRARY_PATH as the binaries will
get the right search paths hardcoded into their executable file.

This option is only meant to be used for testing purposes: The installed
libraries must not move around in the file system, and doing so will
cause a lot of subtle problems. For more information why using RPATH is
dangerous, please refer to

https://blog.flameeyes.eu/2010/06/the-why-and-how-of-rpath
2014-08-23 10:53:21 -04:00
Michael Niedermayer
300d489ac9 Merge commit '051aadeed104ecbe8ee4850ec2d7e5394f5e1ccd'
* commit '051aadeed104ecbe8ee4850ec2d7e5394f5e1ccd':
  ogg: Provide aliases for Speex, Opus and audio-only ogg

Conflicts:
	Changelog
	libavformat/oggenc.c
	libavformat/version.h

See: 2ccc6ff03a
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-22 21:41:00 +02:00
Michael Niedermayer
de9e0386b2 Merge commit 'b0bfd09f88da8b7c7666faf0ac7d5e74559dba9f'
* commit 'b0bfd09f88da8b7c7666faf0ac7d5e74559dba9f':
  configure: Suppress "potentially uninitialized variable" warnings from MSVC

Conflicts:
	configure

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-22 18:43:26 +02:00
Luca Barbato
051aadeed1 ogg: Provide aliases for Speex, Opus and audio-only ogg
Since they are aliases for ogg enabling any of them enables ogg as well.
2014-08-22 13:23:50 +02:00
Diego Biurrun
b0bfd09f88 configure: Suppress "potentially uninitialized variable" warnings from MSVC
The same is done for GCC and clang already.
2014-08-21 17:55:28 +02:00
Clément Bœsch
b0352b1997 avcodec: export motion vectors in frame side data on demand
The reasoning behind this addition is that various third party
applications are interested in getting some motion information out of a
video "for free" when it is available.

It was considered to export other information as well (such as the intra
information about the block, or the quantization) but the structure
might have ended up into a half full-generic, half full of codec
specific cruft. If more information is necessary, it should either be
added in the "flags" field of the AVMotionVector structure, or in
another side-data.

This commit also includes an example exporting them in a CSV stream.
2014-08-18 14:13:57 +02:00
Michael Niedermayer
1e519b9d40 avutil: turn arm setend into a cpuflag
this allows disabling and enabling it
it also prevents crashes if vfpv3 and neon are disabled which previously
would have enabled the flag

And last but not least one can enable setend on cpus like cortex-a8 where
its fast but disabled by default

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-13 14:50:15 +02:00
Martin Storsjö
72199e1041 configure: Check for nanosleep in headers as well, not only in libs
On mingw64 with c++11 support, the link libraries do contain a
nanosleep function, while it isn't exposed via the headers. Using
check_func_headers instead of a plain check_func fixes this
misdetection.

Signed-off-by: Martin Storsjö <martin@martin.st>
2014-08-13 14:39:01 +03:00
Carl Eugen Hoyos
b703322059 Remove useless configure option "--enable-sram". 2014-08-12 14:27:37 +02:00
Martin Storsjö
223c374a9d configure: Check for nanosleep in headers as well, not only in libs
On mingw64 with c++11 support, the link libraries do contain a
nanosleep function, while it isn't exposed via the headers. Using
check_func_headers instead of a plain check_func fixes this
misdetection.

Suggested-by: Hendrik Leppkes <h.leppkes@gmail.com>
See: [FFmpeg-devel] [PATCH] fix: 'make' with mingw32
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-12 11:25:05 +02:00
Michael Niedermayer
7727345613 Merge commit '08b94f160a2c966bb83e32bde0e52246fafa2155'
* commit '08b94f160a2c966bb83e32bde0e52246fafa2155':
  configure: Don't pass MSVC compiler options -M[TD] to armasm

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-10 23:47:48 +02:00
Michael Niedermayer
3787495e1f Merge commit 'ab0742d2f34d70415620441b7ed7da2f03a0c14f'
* commit 'ab0742d2f34d70415620441b7ed7da2f03a0c14f':
  configure: Suggest upgrading gas-preprocessor instead of just installing

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-10 20:31:14 +02:00
Martin Storsjö
08b94f160a configure: Don't pass MSVC compiler options -M[TD] to armasm
The -MD option (for enabling a dynamically linked crt) gets interpreted
as a cpp option for generating dependency information (into a file named
'-.d', when preprocessing to a pipe). We shouldn't be passing
any and all C compiler flags to armasm (which is a plain assembler,
only with cpp bolted on via gas-preprocessor), but these are the
main conflicting ones.

Signed-off-by: Martin Storsjö <martin@martin.st>
2014-08-10 21:29:06 +03:00
Michael Niedermayer
7e4e45d227 Merge commit '9f8cf50e3be04b8e178086edaa4598826143303d'
* commit '9f8cf50e3be04b8e178086edaa4598826143303d':
  configure: Enable gas-preprocessor on all OSes but only if available

Conflicts:
	configure

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-10 19:16:42 +02:00
Michael Niedermayer
f51c3e3a84 Merge commit 'f4312352fc52cc47c1ba398a33f629d32a737e91'
* commit 'f4312352fc52cc47c1ba398a33f629d32a737e91':
  configure: Add probe identification of MS armasm

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-10 18:54:15 +02:00
Martin Storsjö
ab0742d2f3 configure: Suggest upgrading gas-preprocessor instead of just installing
Older versions don't support all the features we test for now.

Signed-off-by: Martin Storsjö <martin@martin.st>
2014-08-10 16:25:45 +03:00
Diego Biurrun
9f8cf50e3b configure: Enable gas-preprocessor on all OSes but only if available
Signed-off-by: Martin Storsjö <martin@martin.st>
2014-08-10 16:25:45 +03:00
Martin Storsjö
f4312352fc configure: Add probe identification of MS armasm
Signed-off-by: Martin Storsjö <martin@martin.st>
2014-08-10 16:25:45 +03:00
Michael Niedermayer
eb2def0ff2 Merge commit '444c73583d2848a542330c03949e1f933ac68f53'
* commit '444c73583d2848a542330c03949e1f933ac68f53':
  configure: Only run gas checks on ARM and PowerPC

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-08 21:38:58 +02:00
Michael Niedermayer
0472c5f8a1 Merge commit '0026e356d044e72b6e743b234708b8b8af457ac0'
* commit '0026e356d044e72b6e743b234708b8b8af457ac0':
  configure: Die if gas is unavailable under aarch64 as well as ARM

Conflicts:
	configure

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-08 21:38:12 +02:00
Carl Eugen Hoyos
e4d983e2db configure: Check if libwebp compilation will succeed. 2014-08-08 16:06:10 +02:00
Diego Biurrun
444c73583d configure: Only run gas checks on ARM and PowerPC
Standalone GNU assembly is not used on x86.
2014-08-08 05:30:32 -07:00
Diego Biurrun
0026e356d0 configure: Die if gas is unavailable under aarch64 as well as ARM 2014-08-08 05:30:32 -07:00
Clément Bœsch
06362ab750 avfilter/dctdnoiz: rewrite [f/i]dct
This removes the avcodec dependency and make the code almost twice as
fast. More to come.

The DCT factorization is based on "Fast and numerically stable
algorithms for discrete cosine transforms" from Gerlind Plonkaa &
Manfred Tasche (DOI: 10.1016/j.laa.2004.07.015).
2014-08-07 19:59:07 +02:00
Michael Niedermayer
40a820d6d8 Merge commit 'ed6d9ce914d552eeda16af857da97c4b1aea1e3f'
* commit 'ed6d9ce914d552eeda16af857da97c4b1aea1e3f':
  configure: Include the armcc build number in the compiler identification

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-06 20:56:05 +02:00
Martin Storsjö
ed6d9ce914 configure: Include the armcc build number in the compiler identification
This tries to find the most expressive part of the output of
armcc --vsn to include, giving a compiler identification of
"ARM Compiler 5.04 update 2 (build 82)" instead of just
"ARM Compiler 5.04" for armcc 5.0.

4.x versions of armcc output the following, for "armcc --vsn":
ARM C/C++ Compiler, RVCT4.0 [Build 925]
For evaluation purposes only
Software supplied by: ARM Limited

ARM C/C++ Compiler, 4.1 [Build 894]
For evaluation purposes only
Software supplied by: ARM Limited

5.0 versions output this:
Product: ARM Compiler 5.04
Component: ARM Compiler 5.04 update 2 (build 82)
Tool: armcc [5040081]
For evaluation purposes only
Software supplied by: ARM Limited

Signed-off-by: Martin Storsjö <martin@martin.st>
2014-08-06 19:15:59 +03:00
Clément Bœsch
eaeb61c3a6 avfilter/select: remove optional avcodec dependency 2014-08-05 21:05:53 +02:00
Clément Bœsch
164b7ccf21 avfilter/mp_decimate: remove avcodec dependency 2014-08-05 21:05:52 +02:00