ffmpeg.git
6 years agolavfi doxy: improve/extend AVFilter doxy.
Anton Khirnov [Sun, 12 May 2013 12:02:59 +0000 (14:02 +0200)]
lavfi doxy: improve/extend AVFilter doxy.

6 years agonetwork: uniform ff_listen_bind and ff_listen_connect
Luca Barbato [Sat, 1 Jun 2013 17:38:57 +0000 (19:38 +0200)]
network: uniform ff_listen_bind and ff_listen_connect

Document the functions and have both use a millisecond timeout and
check for interrupt.

6 years agomovenc: Grow the frag_info array in chunks
Andrey Semashev [Sun, 2 Jun 2013 20:26:18 +0000 (23:26 +0300)]
movenc: Grow the frag_info array in chunks

Previously it was grown one element at a time, which leads to
excessive reallocations.

Bug-Id: 525
Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agomovenc: Increase the cluster array allocation by doubling
Andrey Semashev [Mon, 3 Jun 2013 10:32:48 +0000 (13:32 +0300)]
movenc: Increase the cluster array allocation by doubling

The previous allocation increment of 16384 meant that the cluster
array was allocated for 0.6 MB initially, which is a bit excessive
for cases with fragmentation where only a fraction of that ever
actually is used.

Therefore, start off at a much smaller value, and increase by
doubling (to avoid reallocating too often when writing long
non-fragmented mp4 files).

Bug-Id: 525
Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agomovenc: Keep track of the allocated size for the cluster array
Andrey Semashev [Sun, 2 Jun 2013 19:57:31 +0000 (22:57 +0300)]
movenc: Keep track of the allocated size for the cluster array

When writing fragmented mp4, the cluster array is reset when a
fragment is written. Instead of starting off reallocating the
array only based on the number of current elements in it, keep
track of how many elements there were allocated earlier.

This avoids reallocating this array needlessly when writing
fragmented mp4 files.

Bug-Id: 525
Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agomem: Add av_realloc_array and av_reallocp_array
Martin Storsjö [Mon, 3 Jun 2013 09:31:46 +0000 (12:31 +0300)]
mem: Add av_realloc_array and av_reallocp_array

These help avoiding overflows and simplify error handling.

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agomovenc: Change the track struct name to match the typedef
Martin Storsjö [Sun, 2 Jun 2013 20:29:04 +0000 (23:29 +0300)]
movenc: Change the track struct name to match the typedef

This makes the struct name (which isn't used anywhere) match the
name of the typedef, as for all the other structs declared in this
header.

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agoGo2Webinar decoder
Kostya Shishkov [Mon, 25 Feb 2013 20:38:25 +0000 (21:38 +0100)]
Go2Webinar decoder

6 years agovmd: decode videos with no LZ buffer size provided - they might not need it
Kostya Shishkov [Sat, 1 Jun 2013 17:24:26 +0000 (19:24 +0200)]
vmd: decode videos with no LZ buffer size provided - they might not need it

The buffer is used for an additional pass of frame compression, so videos
can be coded without ever using it (and some are coded so indeed, e.g. in
Woodruff and the Schnibble of Azimuth game).

6 years agovmd: fix mode 3 decoding
Kostya Shishkov [Sat, 1 Jun 2013 17:19:28 +0000 (19:19 +0200)]
vmd: fix mode 3 decoding

6 years agoswscale: ppc: Remove commented-out define cruft
Diego Biurrun [Wed, 15 May 2013 22:28:17 +0000 (00:28 +0200)]
swscale: ppc: Remove commented-out define cruft

6 years agonsvdec: Remove commented-out debug cruft
Diego Biurrun [Wed, 15 May 2013 22:28:03 +0000 (00:28 +0200)]
nsvdec: Remove commented-out debug cruft

6 years agocpu: Restructure code to avoid pointless ret variable indirection
Diego Biurrun [Sat, 1 Jun 2013 13:38:51 +0000 (15:38 +0200)]
cpu: Restructure code to avoid pointless ret variable indirection

libavutil/cpu.c:133:9: warning: unused variable ‘ret’ [-Wunused-variable]

6 years agotiff: K&R formatting cosmetics
Diego Biurrun [Sat, 1 Jun 2013 13:35:11 +0000 (15:35 +0200)]
tiff: K&R formatting cosmetics

6 years agonetwork: factor out connect-listening code
Luca Barbato [Fri, 31 May 2013 01:05:13 +0000 (03:05 +0200)]
network: factor out connect-listening code

Introduce ff_listen_connect, to be shared with the other
non-tcp network protocols.

6 years agonetwork: factor out bind-listening code
Luca Barbato [Wed, 29 May 2013 23:08:51 +0000 (01:08 +0200)]
network: factor out bind-listening code

Introduce ff_listen_bind, to be shared with the other non-tcp
network protocols.

6 years agouse my full first name instead of short one in copyrights
Kostya Shishkov [Sat, 1 Jun 2013 08:38:56 +0000 (10:38 +0200)]
use my full first name instead of short one in copyrights

6 years agoindeo4: expand allowed quantiser range
Kostya Shishkov [Fri, 31 May 2013 19:09:27 +0000 (21:09 +0200)]
indeo4: expand allowed quantiser range

Indeo 4 has quantiser range 0-31 instead of 0-23 for Indeo 5, and clipping
quantiser leads to incorrect quantisation and DC prediction on low-quality
videos.

This fixes bug 259.

6 years agoconfigure: icl: Merge -Qdiag-error parameters
Alex Smith [Thu, 30 May 2013 20:11:21 +0000 (20:11 +0000)]
configure: icl: Merge -Qdiag-error parameters

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
6 years agoconfigure: Separate commonalities in msvc and icl flags
Alex Smith [Thu, 30 May 2013 20:11:20 +0000 (20:11 +0000)]
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>
6 years agoproresenc: alpha coding support
Kostya Shishkov [Sat, 18 May 2013 10:07:30 +0000 (12:07 +0200)]
proresenc: alpha coding support

6 years agoarm: Include hpeldsp_neon.o if h264qpel is enabled
Martin Storsjö [Wed, 29 May 2013 18:41:37 +0000 (21:41 +0300)]
arm: Include hpeldsp_neon.o if h264qpel is enabled

A few of the h264qpel neon functions are shared with other
hpeldsp functions in this file.

This fixes standalone compilation of the h264 decoder on arm.

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agoarm: Don't unconditionally build dsputil files
Martin Storsjö [Wed, 29 May 2013 18:31:46 +0000 (21:31 +0300)]
arm: Don't unconditionally build dsputil files

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agoarm: Only build the FFT init files if FFT is enabled
Martin Storsjö [Wed, 29 May 2013 18:08:10 +0000 (21:08 +0300)]
arm: Only build the FFT init files if FFT is enabled

This fixes build errors in cases where FFT is disabled.

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agobuild: cosmetics: Place unconditional before conditional OBJS lines
Diego Biurrun [Wed, 29 May 2013 21:15:17 +0000 (23:15 +0200)]
build: cosmetics: Place unconditional before conditional OBJS lines

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agobuild: arm: cosmetics: Place all OBJS declarations in alphabetical order
Diego Biurrun [Wed, 29 May 2013 21:15:16 +0000 (23:15 +0200)]
build: arm: cosmetics: Place all OBJS declarations in alphabetical order

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agovmd: drop incomplete chunks and spurious samples
Luca Barbato [Wed, 29 May 2013 14:59:13 +0000 (16:59 +0200)]
vmd: drop incomplete chunks and spurious samples

Odd chunk size makes no sense for stereo and incomplete chunks are
not supported.

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
6 years agovmd: refactor the inner decode loop
Luca Barbato [Tue, 28 May 2013 20:09:59 +0000 (22:09 +0200)]
vmd: refactor the inner decode loop

Simplify a little, assume empty frames are acceptable and
do not pointlessly reinit the bytestream2 contexts using
possibly wrong size values.

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
6 years agovmd: return meaningful errors
Luca Barbato [Tue, 28 May 2013 20:00:12 +0000 (22:00 +0200)]
vmd: return meaningful errors

CC: libav-stable@libav.org
6 years agovmd: use the PALETTE_COUNT constant uniformly
Luca Barbato [Tue, 28 May 2013 21:49:43 +0000 (23:49 +0200)]
vmd: use the PALETTE_COUNT constant uniformly

While at it drop useless parentheses.

6 years agodoc: Mention the target_samples and ld variables for fate configs
Martin Storsjö [Tue, 28 May 2013 20:03:25 +0000 (23:03 +0300)]
doc: Mention the target_samples and ld variables for fate configs

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agofate.sh: Allow specifying --as via a specific variable
Martin Storsjö [Tue, 28 May 2013 20:00:54 +0000 (23:00 +0300)]
fate.sh: Allow specifying --as via a specific variable

This simplifies specifying a value containing spaces for this
parameter.

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agoconfigure: Don't pass -mthumb or -march= to MSVC
Martin Storsjö [Tue, 28 May 2013 20:39:21 +0000 (23:39 +0300)]
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>
6 years agompeg12: skip frames consistently
Janne Grunau [Tue, 21 May 2013 08:40:01 +0000 (10:40 +0200)]
mpeg12: skip frames consistently

The decoder did not start predicted frames with missing references but
called the end of frame handling on them anyway. This caused an
assertion in the VA API HW accelorator since it tried to render a
picture with uninitialized buffers.

6 years agolavf: add a raw WavPack muxer.
Anton Khirnov [Tue, 28 May 2013 15:44:18 +0000 (17:44 +0200)]
lavf: add a raw WavPack muxer.

6 years agoapetag: add support for writing APE tags
Anton Khirnov [Tue, 28 May 2013 15:43:22 +0000 (17:43 +0200)]
apetag: add support for writing APE tags

This will be useful in the WavPack muxer.

6 years agomatroskaenc: support muxing WavPack
Anton Khirnov [Tue, 28 May 2013 08:09:21 +0000 (10:09 +0200)]
matroskaenc: support muxing WavPack

6 years agowvdec: split block header parsing into a separate file
Anton Khirnov [Tue, 28 May 2013 07:33:43 +0000 (09:33 +0200)]
wvdec: split block header parsing into a separate file

It will be reused by other muxers and demuxers.

6 years agolavf: rename wv.c to wvdec.c
Anton Khirnov [Tue, 28 May 2013 06:55:52 +0000 (08:55 +0200)]
lavf: rename wv.c to wvdec.c

wv.c will be used for shared wavpack functions.

6 years agowavpack: check that all the channels were coded.
Anton Khirnov [Mon, 27 May 2013 17:13:14 +0000 (19:13 +0200)]
wavpack: check that all the channels were coded.

6 years agowavpack: check that there aren't too many blocks per packet
Anton Khirnov [Mon, 27 May 2013 17:11:09 +0000 (19:11 +0200)]
wavpack: check that there aren't too many blocks per packet

6 years agowavpack: extract channel information from the bitstream
Anton Khirnov [Mon, 27 May 2013 15:23:15 +0000 (17:23 +0200)]
wavpack: extract channel information from the bitstream

This way we don't require the caller to parse the block header. It also
allows the channel configuration to change mid-stream.

6 years agowavpack: extract sample rate from the bitstream
Anton Khirnov [Mon, 27 May 2013 15:23:15 +0000 (17:23 +0200)]
wavpack: extract sample rate from the bitstream

This way we don't require the caller to parse the block header. It also
allows the sample rate to change mid-stream.

6 years agoconfigure: support gcc-4.8 instrumentation
Luca Barbato [Tue, 14 May 2013 20:41:14 +0000 (22:41 +0200)]
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>
6 years agofate: Add a --target-samples path parameter
Martin Storsjö [Sun, 19 May 2013 22:55:32 +0000 (01:55 +0300)]
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>
6 years agofate: Don't use files from SRC_PATH in the actual tests
Martin Storsjö [Sun, 19 May 2013 22:46:21 +0000 (01:46 +0300)]
fate: Don't use files from SRC_PATH in the actual tests

If building out of tree, make sure the filter scripts are copied
into the build tree before running tests. This makes sure that
SRC_PATH doesn't need to exist on the remote system (or doesn't
need to exist at the same path).

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agoindeo4: reuse context block VLC for band instead of defaulting
Kostya Shishkov [Sat, 25 May 2013 10:35:12 +0000 (12:35 +0200)]
indeo4: reuse context block VLC for band instead of defaulting

Currently if no custom block VLC is specified for band, a default block VLC
will be used, while the global block VLC stored in the context should be used
instead.

This fixes decoding of one sample I have.

6 years agoindeo4: add missing Haar and slanted transforms
Kostya Shishkov [Sat, 25 May 2013 10:15:37 +0000 (12:15 +0200)]
indeo4: add missing Haar and slanted transforms

That involves fixing INV_HAAR4() macro and changing it to work with different
input and output like INV_HAAR8() instead of in-place transform.

6 years agodxtory v2 support
Kostya Shishkov [Mon, 27 May 2013 19:58:52 +0000 (21:58 +0200)]
dxtory v2 support

6 years agovc1dec: Remove interlaced warning
Michael Niedermayer [Fri, 26 Apr 2013 01:44:05 +0000 (03:44 +0200)]
vc1dec: Remove interlaced warning

Also add a note about the feature in the changelog.

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agovc1dec: Fix mixed field/frame intensity compensation
Michael Niedermayer [Fri, 3 May 2013 15:44:30 +0000 (17:44 +0200)]
vc1dec: Fix mixed field/frame intensity compensation

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agovc1dec: Match addressing between compensation and MC in vc1_mc_4mv_chroma4
Michael Niedermayer [Wed, 24 Apr 2013 18:42:07 +0000 (20:42 +0200)]
vc1dec: Match addressing between compensation and MC in vc1_mc_4mv_chroma4

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agovc1dec: Handle top and bottom blocks in vc1_mc_4mv_chroma4() differently if needed
Michael Niedermayer [Thu, 25 Apr 2013 19:30:41 +0000 (21:30 +0200)]
vc1dec: Handle top and bottom blocks in vc1_mc_4mv_chroma4() differently if needed

Now it can use different references for those blocks and even use
averaging.

This fixes several chroma artifacts in several videos.

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agovc1dec: Fix doxy for vc1_mc_4mv_chroma4()
Michael Niedermayer [Thu, 25 Apr 2013 18:35:35 +0000 (20:35 +0200)]
vc1dec: Fix doxy for vc1_mc_4mv_chroma4()

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agovc1dec: Drop old use_ic code from vc1_b_mc
Michael Niedermayer [Wed, 24 Apr 2013 19:56:34 +0000 (21:56 +0200)]
vc1dec: Drop old use_ic code from vc1_b_mc

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agovc1: Use shuffled use_ic instead of equally shuffled mv_mode
Michael Niedermayer [Wed, 24 Apr 2013 18:27:34 +0000 (20:27 +0200)]
vc1: Use shuffled use_ic instead of equally shuffled mv_mode

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agovc1dec: Implement intensity compensation for vc1_interp_mc()
Michael Niedermayer [Wed, 24 Apr 2013 18:41:31 +0000 (20:41 +0200)]
vc1dec: Implement intensity compensation for vc1_interp_mc()

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agovc1dec: Redesign the intensity compensation
Michael Niedermayer [Wed, 24 Apr 2013 18:40:12 +0000 (20:40 +0200)]
vc1dec: Redesign the intensity compensation

Use the intensity-compensated reference frame for subsequent
fields/B-frames.

Since we currently don't change the reference frame we have to
maintain lookup tables for intensity compensation in the following
dependent frames.

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agovc1dec: Shuffle field MVs after decoding, not before
Michael Niedermayer [Wed, 24 Apr 2013 11:16:27 +0000 (13:16 +0200)]
vc1dec: Shuffle field MVs after decoding, not before

This simplifies the code since copying MVs to the reference is not needed
anymore (and maybe something about fixing artifacts).

Also remove the unused mv_f_last.

Fixes a small number of artifacts in black_screen_VC-1.mkv
and several more artifacts in other videos.

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agosmacker: assign video frame PTS
Kostya Shishkov [Mon, 27 May 2013 03:45:29 +0000 (05:45 +0200)]
smacker: assign video frame PTS

6 years agomatroskadec: export full wavpack blocks.
Anton Khirnov [Mon, 27 May 2013 07:44:27 +0000 (09:44 +0200)]
matroskadec: export full wavpack blocks.

This allows us to get rid of demuxer-specific hacks in the decoder and
will allow streamcopy from matroska once we have a wavpack muxer.

6 years agowavpack demuxer: export full wavpack blocks.
Anton Khirnov [Sun, 26 May 2013 19:09:22 +0000 (21:09 +0200)]
wavpack demuxer: export full wavpack blocks.

Currently the demuxer shaves the blocks and exports only the
information that is useful to the decoder.

Exporting the blocks just as they are stored is simpler to understand
and will make remuxing wavpack easier.

6 years agowavpack: don't set sample format in init.
Anton Khirnov [Sun, 26 May 2013 09:02:51 +0000 (11:02 +0200)]
wavpack: don't set sample format in init.

We don't know whether it will be float until we look at the data.

6 years agowavpack: remove a useless parameter from wavpack_decode_block().
Anton Khirnov [Sun, 26 May 2013 08:47:22 +0000 (10:47 +0200)]
wavpack: remove a useless parameter from wavpack_decode_block().

The decoder always returns output if an error does not occur.

6 years agowavpack: return an error on 0-sized blocks
Anton Khirnov [Sun, 26 May 2013 08:44:11 +0000 (10:44 +0200)]
wavpack: return an error on 0-sized blocks

Such blocks are not valid.

6 years agowavpack: remove a useless check.
Anton Khirnov [Sun, 26 May 2013 08:39:55 +0000 (10:39 +0200)]
wavpack: remove a useless check.

Number of samples in the first block is checked to be strictly positive
earlier in wavpack_decode_frame() and number of samples in all the other
blocks is checked to be equal to the first one.

6 years agowavpack: add an error message to a failure.
Anton Khirnov [Sun, 26 May 2013 08:38:54 +0000 (10:38 +0200)]
wavpack: add an error message to a failure.

6 years agowavpack: return 0 instead of samples count from decoding functions
Anton Khirnov [Sun, 26 May 2013 08:32:56 +0000 (10:32 +0200)]
wavpack: return 0 instead of samples count from decoding functions

The caller never cares about the number of decoded samples, so this only
confuses the reader.

6 years agowavpack: switch to planar output
Anton Khirnov [Sat, 25 May 2013 13:31:18 +0000 (15:31 +0200)]
wavpack: switch to planar output

This simplifies the code and makes it faster.

6 years agowavpack: drop redundant if/else blocks
Anton Khirnov [Sat, 25 May 2013 05:49:25 +0000 (07:49 +0200)]
wavpack: drop redundant if/else blocks

6 years agowavpack: remove the subframes codec cap
Anton Khirnov [Sat, 25 May 2013 04:44:14 +0000 (06:44 +0200)]
wavpack: remove the subframes codec cap

The decoder always consumes full packets.

6 years agolavf: preserve side data when parsing packets.
Anton Khirnov [Fri, 17 May 2013 05:39:34 +0000 (07:39 +0200)]
lavf: preserve side data when parsing packets.

6 years agosmacker: add a clarification notice about audio decoding
Kostya Shishkov [Mon, 27 May 2013 16:21:04 +0000 (18:21 +0200)]
smacker: add a clarification notice about audio decoding

6 years agoconfigure: make jack depend on pthreads
Anton Khirnov [Fri, 17 May 2013 06:13:58 +0000 (08:13 +0200)]
configure: make jack depend on pthreads

6 years agoavconv: make -aspect work with streamcopy
Anton Khirnov [Sun, 26 May 2013 13:31:09 +0000 (15:31 +0200)]
avconv: make -aspect work with streamcopy

6 years agomatroskadec: silently skip CodecState element.
Anton Khirnov [Wed, 15 May 2013 13:48:15 +0000 (15:48 +0200)]
matroskadec: silently skip CodecState element.

mkvmerge apparrently uses it for mpeg1/2 video, but it contains the same
information as CodecPrivate, so it can be ignored.

6 years agosmacker: fix off-by-one error in palette expanding code
Kostya Shishkov [Mon, 27 May 2013 04:26:28 +0000 (06:26 +0200)]
smacker: fix off-by-one error in palette expanding code

6 years agoRevert "smackaud: clip output samples"
Kostya Shishkov [Mon, 27 May 2013 03:40:44 +0000 (05:40 +0200)]
Revert "smackaud: clip output samples"

Smacker audio uses overflows instead of clipping.

This reverts commit 375ca0aca81be2951d9ba4731196e70e490d3cdf.

6 years agoarm: Only output eabi attributes if building for ELF
Martin Storsjö [Sun, 26 May 2013 09:47:33 +0000 (12:47 +0300)]
arm: Only output eabi attributes if building for ELF

This matches the other eabi attribute in the same file. This is
required in order to build for arm/hardfloat with other object
file formats than ELF.

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agofix scalarproduct_and_madd_int16_altivec() for orders > 16
Kostya Shishkov [Fri, 24 May 2013 17:44:29 +0000 (19:44 +0200)]
fix scalarproduct_and_madd_int16_altivec() for orders > 16

the second and third sources were incremented only by half of the needed size

6 years agomsvc/icl: Intel Compiler support on Windows
Alex Smith [Sat, 25 May 2013 10:07:42 +0000 (06:07 -0400)]
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>
6 years agoconfigure: Fix check_exec_crash for ICL support
Laurent [Sat, 25 May 2013 10:01:29 +0000 (06:01 -0400)]
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>
6 years agocpu: Include common.h for av_popcount64
Martin Storsjö [Fri, 24 May 2013 09:24:27 +0000 (12:24 +0300)]
cpu: Include common.h for av_popcount64

This fixes build failures on windows since 2a6eaeaa8.

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agovf_fade: support slice threading
Anton Khirnov [Sat, 11 May 2013 19:40:28 +0000 (21:40 +0200)]
vf_fade: support slice threading

6 years agovf_yadif: support slice threading
Anton Khirnov [Sat, 11 May 2013 19:40:28 +0000 (21:40 +0200)]
vf_yadif: support slice threading

6 years agolavfi: add a slice threading infrastructure
Anton Khirnov [Sat, 11 May 2013 18:41:46 +0000 (20:41 +0200)]
lavfi: add a slice threading infrastructure

Mostly based on libavcodec's

6 years agoMove get_logical_cpus() from lavc/pthread to lavu/cpu.
Anton Khirnov [Thu, 23 May 2013 06:59:07 +0000 (08:59 +0200)]
Move get_logical_cpus() from lavc/pthread to lavu/cpu.

It will be useful in lavfi, and could conceivably be useful to the user
applications as well.

6 years agow32pthreads: move from lavc to compat/
Anton Khirnov [Sun, 12 May 2013 06:11:42 +0000 (08:11 +0200)]
w32pthreads: move from lavc to compat/

It will be used in other places than lavc.

6 years agodoxy: enable TYPEDEF_HIDES_STRUCT
Anton Khirnov [Sun, 12 May 2013 12:58:14 +0000 (14:58 +0200)]
doxy: enable TYPEDEF_HIDES_STRUCT

This means that typedef struct SomeStruct {...} SomeStruct will only be
documented as SomeStruct in the doxy, without a pointless entry in the
typedefs list.

6 years agoMonkey's Audio old versions FATE tests
Kostya Shishkov [Fri, 3 May 2013 08:13:00 +0000 (10:13 +0200)]
Monkey's Audio old versions FATE tests

6 years agoh264_parser: Set field_order and picture_structure.
Yusuke Nakamura [Tue, 14 May 2013 22:37:36 +0000 (07:37 +0900)]
h264_parser: Set field_order and picture_structure.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
6 years agoavcodec: Add picture structure information to AVCodecParserContext.
Yusuke Nakamura [Tue, 14 May 2013 22:36:15 +0000 (07:36 +0900)]
avcodec: Add picture structure information to AVCodecParserContext.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
6 years agowavpack: check packet size early
Luca Barbato [Wed, 22 May 2013 10:51:42 +0000 (12:51 +0200)]
wavpack: check packet size early

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
6 years agowavpack: use bytestream2 in wavpack_decode_block
Luca Barbato [Wed, 22 May 2013 10:27:04 +0000 (12:27 +0200)]
wavpack: use bytestream2 in wavpack_decode_block

Prevent most out of buffer reads.

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
6 years agopixdesc: mark gray8 as pseudopal
Anton Khirnov [Sat, 4 May 2013 11:57:32 +0000 (13:57 +0200)]
pixdesc: mark gray8 as pseudopal

Many functions treat it as such already.
Fixes Bug 499.

CC:libav-stable@libav.org

6 years agompegvideo: unref buffers in ff_mpeg_unref_picture on frame size changes
Janne Grunau [Tue, 21 May 2013 15:39:27 +0000 (17:39 +0200)]
mpegvideo: unref buffers in ff_mpeg_unref_picture on frame size changes

ff_mpeg_unref_picture clears the flag indicating that the frame needs to
be reallocated after a frame size change. Since we have now reference
counted buffers we can unref the buffers immediately.

6 years agoconfigure: Enable the strtod workaround when building for bionic
Martin Storsjö [Tue, 21 May 2013 08:43:00 +0000 (11:43 +0300)]
configure: Enable the strtod workaround when building for bionic

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agoproresdec: simplify slice component offsets handling
Kostya Shishkov [Sat, 18 May 2013 05:06:19 +0000 (07:06 +0200)]
proresdec: simplify slice component offsets handling

6 years agomjpegdec: validate parameters in mjpeg_decode_scan_progressive_ac
Luca Barbato [Wed, 15 May 2013 16:41:41 +0000 (18:41 +0200)]
mjpegdec: validate parameters in mjpeg_decode_scan_progressive_ac

Prevent out of buffer write when decoding broken samples.

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
6 years agofate.sh: add support for build-only FATE instances
Diego Biurrun [Sat, 6 Oct 2012 15:22:05 +0000 (15:22 +0000)]
fate.sh: add support for build-only FATE instances

If the "build_only" variable is set in the configuration file, the
FATE client will skip running tests and just compile all targets.

Signed-off-by: Martin Storsjö <martin@martin.st>