lavc: schedule AVCodecContext.lowres for removal on next bump.

It has been deprecated some time ago, but was forgotten during the last
bump.
lavf-regression: use -frames instead of -t for image tests

-t 0.5 is 12.5 frames at 25 fps, which may round to either 12 or 13 on
different platforms.
x86: float dsp: butterflies_float SSE

97c -> 49c
Some codecs could benefit from more unrolling, but AAC doesn't.
avcodec: Add field order information to AVCodecParserContext.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
mpegvideo_parser: Set field_order.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
vc1_parser: Set field_order.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
matroskaenc: cosmetics, reorder the #includes
matroskaenc: add an option to put the index at the start of the file
avconv: improve -re implementation

Integrate the code in the packet reading function, instead of inserting
sleeps in many places.
This is simpler to follow and should work better.
avconv: do not send non-monotonous DTS to the muxers.

Hack partially based on a commit by Michael Niedermayer <michaelni@gmx.at>
Should fix (or work around) bug 458.
id3v2: check for end of file while unescaping tags

Prevent a serious out of buffer bound write.

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
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>
x86: sbrdsp: Implement SSE2 qmf_deint_bfly

Sandybridge: 47 cycles

Having a loop counter is a 7 cycle gain.
Unrolling is another 7 cycle gain.
Working in reverse scan is another 6 cycles.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
sbrdsp: Unroll sbr_autocorrelate_c

1410 cycles to 1148 on Arrandale/Win64

Signed-off-by: Diego Biurrun <diego@biurrun.de>
sbrdsp: Unroll and use integer operations

This patch can be controversial, by assuming floats are IEEE-754 and
particular behaviour of the FPU will get in the way.
Timing on Arrandale and Win32 (thus, x87 FPU is used in the reference).

sbr_qmf_pre_shuffle_c: 115 to 76
sbr_neg_odd_64_c: 84 to 55
sbr_qmf_post_shuffle_c: 112 to 83

Signed-off-by: Diego Biurrun <diego@biurrun.de>
silly typo fixes
wav: return meaningful errors
build: tune down the output of lcov/gcov

In the default settings, both tools produce a lot of unhelpful noise.
build: normalize coverage.info

Without this, lcov sometimes misses to normalize paths that contain "/./".
Also, ignore uninteresting hits in system headers.
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.