vdpau: deprecate VDPAU codec capability

Signed-off-by: Anton Khirnov <anton@khirnov.net>
vdpau: store picture data in picture's rather than codec's context

Signed-off-by: Anton Khirnov <anton@khirnov.net>
vdpau: deprecate bitstream buffers within the hardware context

The bitstream buffers are now private and freed by libavcodec. For
backward compatibility, the hold bitstream buffer pointer is left NULL
(applications were supposed to av_freep() it).

Signed-off-by: Anton Khirnov <anton@khirnov.net>
ismindex: Replace mkdir ifdeffery by os_support.h #include

os_support.h contains more precise workarounds for non-POSIX mkdir().
build: Add missing img2.o dependency to apetag.o
avio: Add an internal function for reading without copying

As long as there is enough contiguous data in the avio buffer,
just return a pointer to it instead of copying it to the caller
provided buffer.

Signed-off-by: Martin Storsjö <martin@martin.st>
mpegts: Remove one memcpy per packet

This was being performed to ensure that a complete packet was held in
contiguous memory, prior to parsing the packet. However, the source buffer
is typically large enough that the packet was already contiguous, so it is
beneficial to return the packet by reference in most cases.

         Before          After
         Mean   StdDev   Mean   StdDev  Change
memcpy    720.7  32.7     649.8  25.1   +10.9%
Overall  2372.7  46.1    2291.7  21.8    +3.5%

Signed-off-by: Martin Storsjö <martin@martin.st>
mpegts: Make discard_pid() faster for single-program streams

When a stream contains a single program, there's no point in doing a
PID -> program lookup. Normally the one and only program isn't disabled,
so no packets should be discarded.

              Before          After
              Mean   StdDev   Mean   StdDev  Change
discard_pid()   73.8  9.4       20.2  1.5    +264.8%
Overall       2300.8 28.0     2253.1 20.6      +2.1%

Signed-off-by: Martin Storsjö <martin@martin.st>
libx264: add shortcut for the bluray compatibility option

As for intra-refresh it is just a commodity.
lavf: Support unix sockets
network: Use SOCK_CLOEXEC when available
bink: Bound check the quantization matrix.

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
vc1: check the source buffer in vc1_mc functions

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
vc1: check mb_height validity.

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
mpegts: Remove one 64-bit integer modulus operation per packet

The common case of the pointer having increased by one packet (which results
in no change to the modulus) can be detected with a 64-bit subtraction,
which is far cheaper than a division on many platforms.

           Before          After
           Mean   StdDev   Mean   StdDev  Change
Divisions   248.3  8.8      51.5   7.4    +381.7%
Overall    2773.2 25.6     2372.5 43.1     +16.9%

Signed-off-by: Martin Storsjö <martin@martin.st>
twinvq: move all bitstream reading into single place

This is required for the future addition of VoxWare MetaSound decoder, for its
functions are mostly the same but bitstream reader is completely different
and bitstream format is slightly different too.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
twinvq: Prefix enums and defines shared with VoxWare MetaSound
twinvq: Split VQF-specific part from common TwinVQ decoder core

Signed-off-by: Diego Biurrun <diego@biurrun.de>
riff.h: Remove stray extern declaration for non-existing symbol
avcodec/options: Drop deprecation warning suppression macros

The options table is used in tools built by the host compiler and the
deprecation macros pull in bits that are not safe to use if host and
target compiler differ.