Commit Graph

1913 Commits

Author SHA1 Message Date
Janne Grunau
b9e2226972 bsd: use number of logical CPUs as automatic thread count 2011-12-22 21:50:07 +01:00
Janne Grunau
ad29ecbff0 windows: use number of CPUs as automatic thread count 2011-12-22 21:50:07 +01:00
Janne Grunau
ea4d5f4837 linux: use number of CPUs as automatic thread count
Use sched_getaffinity to determine the number of logical CPUs.
Limits the number of threads to 16 since slice threading of H.264
seems to be buggy with more than 16 threads.
2011-12-22 21:50:07 +01:00
Anton Khirnov
196c9e5c8c lavfi: always build vsrc_buffer.
It's a part of public API.
2011-12-22 15:42:52 +01:00
Martin Storsjö
9c984b1bd7 configure: Show whether the safe bitstream reader is enabled
Signed-off-by: Martin Storsjö <martin@martin.st>
2011-12-21 16:15:54 +02:00
Mans Rullgard
9d6b2077b2 build: error on mixed declarations and code
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-12-21 00:57:46 +00:00
Diego Biurrun
606c9297b9 build: fix standalone compilation of mpc7/mpc8 decoders
These decoders depend on the mpegaudio DSP code.
2011-12-20 22:38:51 +01:00
Ronald S. Bultje
8cfbbd928c get_bits: introduce safe bitreading to prevent overreads.
When turned on, H264/CAVLC gets ~15% (CVPCMNL1_SVA_C.264) slower for
ultra-high-bitrate files, or ~2.5% (CVFI1_SVA_C.264) for lower-bitrate
files. Other codecs are affected to a lesser extent because they are
less optimized; e.g., VC-1 slows down by less than 1% (all on x86).
The patch generated 3 extra instructions (cmp, cmovae and mov) per
call to get_bits().

The performance penalty on ARM is within the error margin for most
files, up to 4% in extreme cases such as CVPCMNL1_SVA_C.264.

Based on work (for GCI) by Aneesh Dogra <lionaneesh@gmail.com>, and
inspired by patch in Chromium by Chris Evans <cevans@chromium.org>.
2011-12-17 14:03:41 +00:00
Diego Biurrun
54e75be420 configure: refactor lists of tests and components into variables 2011-12-16 15:46:34 +01:00
Diego Biurrun
055c61b857 configure: refactor list of programs into a variable 2011-12-15 14:41:26 +01:00
Diego Biurrun
3e0b1c9a81 configure: cosmetics: sort some lists where appropriate 2011-12-14 12:01:17 +01:00
Diego Biurrun
88b9735753 build: conditionally compile x86 H.264 chroma optimizations 2011-12-14 11:58:45 +01:00
Diego Biurrun
0d9bd2d584 configure: do not manually enable protocols
Protocols are handled just like all other components groups such as
muxers and are automatically enabled.
2011-12-13 23:34:20 +01:00
Mans Rullgard
5b0d35eaed x86: bswap: remove test for bswap instruction
Firstly, this test never worked as intended, always reporting
success.  Secondly, bswap is available from 486 onward and can
thus be assumed present.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-12-12 12:14:15 +00:00
Rafaël Carré
be1e872582 configure: Store vda lib flags in extralibs instead of ldflags
This way the needed linking flags end up in libavcodec.pc.

Signed-off-by: Martin Storsjö <martin@martin.st>
2011-11-25 15:52:55 +02:00
Mans Rullgard
3fe5fc9325 regtest: split video encode/decode tests into individual targets
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-11-22 12:13:04 +00:00
Anton Khirnov
7c9224111e configure: add libpulse to help output
Fixes Bug 72.
2011-11-21 06:44:43 +01:00
John Stebbins
c40e1757a1 httpproxy: Fix dependencies
Fix building with --disable-network.

Signed-off-by: Martin Storsjö <martin@martin.st>
2011-11-20 09:51:17 +02:00
Janne Grunau
ff3755cbde configure: add check for w32threads to enable it automatically 2011-11-18 22:36:06 +01:00
Sebastien Zwickert
ac3dbb4d58 hwaccel: OS X Video Decoder Acceleration (VDA) support.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2011-11-14 16:07:32 +01:00
Martin Storsjö
183baeadca avformat: Add the https protocol
Signed-off-by: Martin Storsjö <martin@martin.st>
2011-11-05 12:09:36 +02:00
Martin Storsjö
558d192d23 avformat: Add the tls protocol, using OpenSSL or gnutls
Note, this protocol doesn't yet check verify the server
certificate against a local database of trusted CA root
certificates.

Signed-off-by: Martin Storsjö <martin@martin.st>
2011-11-05 12:09:30 +02:00
Martin Storsjö
bc8c1395ca configure: Allow linking to the gnutls library
Signed-off-by: Martin Storsjö <martin@martin.st>
2011-11-05 12:09:20 +02:00
Martin Storsjö
a060866fd7 configure: Allow linking to openssl
Signed-off-by: Martin Storsjö <martin@martin.st>
2011-11-05 12:08:56 +02:00
Diego Biurrun
76718f3fb7 configure: declare dependency of h264_vaapi_hwaccel on h264_decoder 2011-11-04 10:42:00 +01:00
Martin Storsjö
7b7b220cf7 Enable w32threads automatically unless explicitly disabled
Signed-off-by: Martin Storsjö <martin@martin.st>
2011-11-01 16:48:15 +02:00
Luca Barbato
0de9c41ff4 pulse: introduce pulseaudio input
It currently use the simple api and is using the latency information
provided only to offset the stream start.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2011-10-26 16:39:33 -07:00
Justin Ruggles
b606a01759 libspeexenc: add libspeex encoder 2011-10-20 13:06:15 -04:00
Stefano Sabatini
b157be1f38 lavfi: port libmpcodecs delogo filter
The ported filter supports named option parsing and more YUV formats.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-10-17 18:05:41 +02:00
Stefano Sabatini
ce6b6ef645 lavfi: port boxblur filter from libmpcodecs
With the following additions:
* support to gray format
* support to yuva420p format
* parametric luma/chroma/alpha radius
* consistency check on the radius values, avoid crashes with invalid values

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-10-17 18:05:41 +02:00
Anton Khirnov
46c3c53bae libx264: support yuv422/444 output. 2011-10-12 08:27:36 +02:00
Diego Biurrun
c2ed91de84 configure: Add -Wstrict-prototypes to CFLAGS if available. 2011-10-10 13:50:26 +02:00
Mans Rullgard
6308729e68 ARM: check for inline asm 'y' operand modifier support
The inline asm added in bf5d46d uses the 'y' modifier which
is only supported from gcc 4.5.  This check allows building
with older compilers.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-10-03 08:56:24 +01:00
Mans Rullgard
908f12f342 fate: allow testing with libavfilter disabled
This declares dependencies to skip tests using libavfilter
when it is disabled.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-09-27 00:05:51 +01:00
Sean McGovern
87a74f478f configure: disable hardware capabilities ELF section with suncc on Solaris x86
When using suncc to build, the Solaris linker will mark
an executable with each instruction set encountered by
the Solaris assembler.  As our libraries contain their own
guards for processor-specific code, instead suppress
generation of the HWCAPS ELF section on Solaris x86 only.

Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-09-24 14:47:49 +02:00
Anton Khirnov
e417d80d28 lavd: add libcdio-paranoia input device for audio CD grabbing 2011-09-17 06:45:26 +02:00
Diego Biurrun
d2ba1fb50c configure: fix typo in avconv dependency list 2011-08-26 03:46:10 +02:00
Alberto Delmás
45ecda8554 Windows Media Image decoder (WMVP/WVP2)
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-08-23 11:18:35 +02:00
Pino Toscano
f60d136637 configure: add missing CFLAGS to fix building on the HURD
Signed-off-by: Reinhard Tartler <siretart@tauware.de>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2011-08-12 14:11:21 +02:00
Anton Khirnov
6291d7e416 Make a copy of ffmpeg under a new name -- avconv.
It will be further developed with a few incompatible changes.

ffmpeg.c will stay as is for some time, so any scripts using it won't be
broken.
2011-08-12 13:27:30 +02:00
Anton Khirnov
4d58e4cb4c Rename ffserver to avserver. 2011-08-09 19:56:25 +02:00
Anton Khirnov
9e12f0bf5f Rename ffprobe to avprobe. 2011-08-09 19:56:24 +02:00
Anton Khirnov
266463daff Rename ffplay to avplay. 2011-08-09 19:56:21 +02:00
Diego Biurrun
001e600c3b configure: spelling cosmetics 2011-07-27 00:33:24 +02:00
Kostya Shishkov
c2d23309ef add Flash Screen Video 2 decoder
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-07-22 09:12:30 -07:00
Sean McGovern
558c268318 configure: add -xc99 to LDFLAGS for Sun CC
Using Sun's compiler on Solaris, -xc99 is as much a linker flag as a
compiler flag, so add it to LDFLAGS.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-07-21 00:30:16 +02:00
Mans Rullgard
0218808d49 fate: separate lavf-mxf_d10 test from lavf-mxf
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-17 16:30:49 +01:00
Martin Storsjö
e3bc07f4af configure: Automatically add more flags required on symbian
Signed-off-by: Martin Storsjö <martin@martin.st>
2011-07-15 16:09:03 +03:00
Anton Khirnov
6379900c53 Add a check for strptime().
It's an XSI extension, not available on some supported systems.
2011-07-13 12:14:27 +02:00
Mans Rullgard
b695256edd configure: fix --cpu=host with gcc 4.6
The output from -v with gcc 4.6 has changed such that the search
pattern matches too soon without making it more strict.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-10 17:56:06 +01:00
Mans Rullgard
2f138f0b7c build: clean up library installation rules
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-07 17:57:47 +01:00
Diego Biurrun
965dbe09b0 configure: simplify -rpath-link linker flag
Lists of ':'-separated directories can be passed to -rpath-link directly.
2011-07-05 12:09:47 +02:00
Mans Rullgard
8c94eab011 configure: do not blank $LIBNAME if static libs disabled
Whatever reason this was done for no longer applies, and it causes
lots of make warnings.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-03 17:17:16 +01:00
Diego Biurrun
c562ba4c3d configure: Add vdpau and dxva2 to configure results output. 2011-06-30 01:04:18 +02:00
Mans Rullgard
a3e1f80e8b ARM: remove check for PLD instruction
PLD is present in ARMv5TE and later, which is checked for separately.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-29 21:57:03 +01:00
Mans Rullgard
5e27ec28f0 build: create output directories as needed
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-29 09:14:56 +01:00
Mans Rullgard
b0da4903dd fate: enable lavfi-pixmt tests on big endian systems
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-28 23:35:00 +01:00
Mans Rullgard
842f463c77 fate: merge identical pixdesc_be/le tests
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-28 21:31:42 +01:00
Mans Rullgard
7ac6910dd8 build: call texi2pod.pl with full path instead of symlink
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-28 18:15:19 +01:00
Mans Rullgard
57b4a3dd2b build: include sub-makefiles using full path instead of symlinks
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-28 18:15:19 +01:00
Diego Biurrun
d2ee495fb2 configure: Drop check for availability of ten assembler operands.
This was done to support gcc 2.95, which is an old legacy compiler
that fails to compile the current codebase anyway.
2011-06-28 13:14:37 +02:00
Mans Rullgard
bc877faf7f build: factor out the .c and .S compile commands as a macro
These commands have the same form, and using a common macro allows
it to be used elsewhere without further duplication.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-26 23:07:40 +01:00
Alexis Ballier
9ddf1b1ae4 configure: allow post-fixed cpu strings for athlon64, k8, and opteron
when setting the -march flag.

This is to match gcc's {athlon64,k8,opteron}-sse3 -march flags.

Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
2011-06-26 13:29:40 -04:00
Mans Rullgard
d0ce090ec5 ARM: silence some annoying armcc warnings
This silences warnings about pointer target sign mismatches as
already done for gcc with -Wno-pointer-sign.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-25 19:02:56 +01:00
Diego Biurrun
89b5829d0a build: Remove multiple inclusion guards from config.mak.
config.mak is no longer included multiple times; the guards are pointless.
2011-06-25 13:02:51 +02:00
Diego Biurrun
b36518dcf4 configure: Add -Wno-format-zero-length to CFLAGS.
The C standard specifies that zero-length format strings are allowed.
2011-06-24 21:16:10 +02:00
Mans Rullgard
9e19704a6a ARM: enable thumb for Cortex-M* CPUs
These CPUs are thumb-only and thus require this option.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-23 16:55:36 +01:00
Mans Rullgard
f038cf3c74 build: remove SRC_PATH_BARE variable
Setting SRC_PATH to "." when building in-tree removes the need
for a quoted version of the source path since out-of-tree builds
are not possible if the pathname contains spaces.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-23 12:17:25 +01:00
Mans Rullgard
8986fddc2b ARM: allow building in Thumb2 mode
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-23 07:31:54 +01:00
Mans Rullgard
9cd7b8549b configure: add --optflags option
This allows overriding the default optimisation flags selected by
configure.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-22 22:59:46 +01:00
Mans Rullgard
f87b03b50d build: move documentation rules to doc/Makefile
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-22 22:59:46 +01:00
Mans Rullgard
698a183e30 build: move test rules to tests/Makefile
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-22 22:53:07 +01:00
Mans Rullgard
f082a0fb42 configure: report optimization for size separately
This removes an unsightly override of the 'optimizations' setting
only to make the configure report print 'small' when --enable-small
is used.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-21 20:47:10 +01:00
Mans Rullgard
7b2d219045 path64/open64: filter out unsupported flags
These flags are accepted without error but produce an annoying
warning.  Filtering them out makes the build less noisy.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-19 18:47:57 +01:00
Diego Biurrun
e8f6bd4b88 configure: Document --enable-vdpau.
The option is disabled by default, so enabling it should be documented.
2011-06-07 13:20:59 +02:00
Mans Rullgard
8477f2deef configure: simplify source_path setup
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-06 15:16:23 +01:00
Mans Rullgard
dc435c4e9d configure: remove --source-path option
This option does not work, and the implied functionality is
at best pointless.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-06 15:16:15 +01:00
Robert Swain
dcb73592f4 configure: Document --enable-vaapi
VAAPI is disabled by default so it should have a --enable-vaapi option
documented, not a --disable-vaapi.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-05 11:45:27 +01:00
Mans Rullgard
798b264678 build: remove BUILD_ROOT variable
This variable is unnecessary as absolute paths are not required.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-29 12:36:16 +01:00
Justin Ruggles
aa47c35dff ac3enc: add support for E-AC-3 encoding.
This adds basic stream format support and allows for arbitrary bit rates
rather than just those supported in AC-3.
2011-05-27 16:25:22 -04:00
Mans Rullgard
93eb8e4d7c ARM: check for VFPv3
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-27 20:33:05 +01:00
Luca Barbato
6348a96c06 configure: report yasm/nasm presence properly
If the secondary assembler is in use report the proper name
2011-05-27 09:42:14 +02:00
Diego Biurrun
e14574eb68 configure: Add -D_GNU_SOURCE to CPPFLAGS on OS/2.
The flag is required for some C99 math functions to be declared.
2011-05-26 16:26:18 +02:00
Mans Rullgard
9bbd6a4cd8 configure: enable memalign_hack automatically when needed
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-25 00:47:05 +01:00
Diego Biurrun
a7a187a1be configure: Add -U__STRICT_ANSI__ to CPPFLAGS on Cygwin and DOS.
In -std=c99 mode GCC defines __STRICT_ANSI__ to hide non-ANSI interfaces.
This causes declarations for some POSIX functions to be omitted from system
headers, which causes compilation failures.
2011-05-23 22:51:14 +02:00
Mans Rullgard
a1d0dcc713 configure: make executable again
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-20 18:11:31 +01:00
Diego Biurrun
0a6db2a25a configure: Do not unconditionally add -Wall to host CFLAGS.
Some compilers choke on -Wall, so only add the flag after checking it works.
2011-05-20 17:52:24 +02:00
Dave Yeo
9297f1ed15 configure: Set OS/2 objformat to a.out.
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-05-20 17:52:23 +02:00
Diego Biurrun
429059f866 configure: Adjust AVX assembler check.
Older nasm versions have trouble assembling certain AVX instructions, but the
current AVX check did not detect this. Update the check to use an instruction
that triggers the nasm problem.
2011-05-19 16:27:40 +02:00
Mans Rullgard
c4f5c2d6f4 Move some mpegaudio functions to new mpegaudiodsp subsystem
This separation allows these functions to be used in a cleaner
fashion from other codecs (e.g. qdm2) and simplifies creating
optimised versions of them.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-19 12:25:34 +01:00
Jindrich Makovicka
e25c67108a libx264: handle closed GOP codec flag
Also update libx264 presets to keep closed gop as default.

Signed-off-by: Jindrich Makovicka <makovick@gmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-05-17 23:01:42 +02:00
Diego Biurrun
c73b779d35 configure: Include AVX availability in summary output. 2011-05-15 13:11:01 +02:00
Reinhard Tartler
c1f5447805 configure: use same CPPFLAGS in kFreeBSD as Linux
046f081b46 reorganized the CPPFLAGS to no
longer add -D_POSIX_C_SOURCE unconditionally, but only on systems (e.g.,
glibc based ones) that require it.  As kFreeBSD uses glibc, it needs to
be treated similar.

Additionally, _BSD_SOURCE is turned on to enable some additional types
such as caddr_t, which are normally enabled on BSD but not with glibc.
2011-05-15 10:33:52 +02:00
Anton Khirnov
8fb566fdf8 ffmpeg: get rid of the 'q' key schizofrenia
SIGINT for quitting should be enough for everybody.
2011-05-13 07:38:54 +02:00
Måns Rullgård
ced9556b61 configure: Enable libpostproc automatically if GPL code is enabled.
Enabling libpostproc automatically should give it more compile coverage
and save the FATE box maintainers some configuration hassles.
2011-05-12 15:32:57 +02:00
Stefano Sabatini
92fe258756 configure: sort filter deps entries
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-05-12 13:02:37 +02:00
Diego Biurrun
046f081b46 configure: Do not unconditionally add -D_POSIX_C_SOURCE to CPPFLAGS.
Adding _POSIX_C_SOURCE to CPPFLAGS globally produces all sorts of problems
since it causes certain system functions to be hidden on some (BSD) systems.
The solution is to only add the flag on systems that really require it, i.e.
glibc-based ones.

This change makes BSD systems compile out-of-the-box without the need for
adding specific flags manually.  It also allows dropping a number of flags
set manually on a file-per-file basis, but were only present to work around
breakage introduced by the presence of _POSIX_C_SOURCE.

Also add _XOPEN_SOURCE to CPPFLAGS for glibc systems.  We use XSI extensions
in several places already, so it is preferable to define it globally instead
of littering source files with individual #defines only needed for glibc.
2011-05-12 11:41:59 +02:00
Mans Rullgard
6bb6fb05ba mpegaudio: remove CONFIG_MPEGAUDIO_HP option
The low quality mode is off by default and never tested.  The high
quality mode is also plenty fast enough.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-09 17:30:12 +01:00
Stefano Sabatini
a5b64584f3 lavfi: Port drawtext filter by Hemanth from the libavfilter soc repo
With the following additions:
* support to anti-aliased glyph rendering
* support to UTF-8 text and Unicode chars rendering
* support for RGB packed formats
* fix minor errors and typos in the filter description
* extend/clarify examples in the filter description

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-05-07 10:17:40 +02:00
Mans Rullgard
762f95e4cb configure: warn if pkg-config is missing
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-05 18:29:55 +01:00