avformat/segment: Use av_freep() avoid leaving stale pointers in memory

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
avformat/wtvdec: Use av_freep() avoid leaving stale pointers in memory

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
avformat/smoothstreamingenc: Use av_freep() avoid leaving stale pointers in memory

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
avcodec/nvenc: Remove special cases for cygwin

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
avformat/cache: support non continuous caching

This allows using the cache protocol on top of seekable but slow protocols to
speed them up

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
h264: factor hwaccel pixel formats list

This is to avoid proliferation of similar tables in following changes.

Signed-off-by: Rémi Denis-Courmont <remi@remlab.net>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
avcodec: add AVCodecContext.sw_pix_fmt

This carries the pixel format that would be used if it were not for
hardware acceleration. This is equal to AVCodecContext.pix_fmt if
hardware acceleration is not in use.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
libavcodec: add AV_HWACCEL_ALLOW_HIGH_DEPTH flag

This can be used by the application to signal its ability to cope with
video surface of types other than 8-bits YUV 4:2:0.

Signed-off-by: Rémi Denis-Courmont <remi@remlab.net>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
vdpau: add helper for surface chroma type and size

Since the VDPAU pixel format does not distinguish between different
VDPAU video surface chroma types, we need another way to pass this
data to the application.

Originally VDPAU in libavcodec only supported decoding to 8-bits YUV
with 4:2:0 chroma sampling. Correspondingly, applications assumed that
libavcodec expected VDP_CHROMA_TYPE_420 video surfaces for output.
However some of the new HEVC profiles proposed for addition to VDPAU
would require different depth and/or sampling:
http://lists.freedesktop.org/archives/vdpau/2014-July/000167.html
...as would lossless AVC profiles:
http://lists.freedesktop.org/archives/vdpau/2014-November/000241.html

To preserve backward binary compatibility with existing applications,
a new av_vdpau_bind_context() flag is introduced in a further change.

Signed-off-by: Rémi Denis-Courmont <remi@remlab.net>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
vdpau: add support for 4:2:2 and 4:4:4 chroma sampling

Signed-off-by: Rémi Denis-Courmont <remi@remlab.net>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
avconv_vdpau: allocate video surface of VDPAU-specified size

Signed-off-by: Rémi Denis-Courmont <remi@remlab.net>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
vdpau: add support for the H.264 High 4:4:4 Predictive profile

Signed-off-by: Rémi Denis-Courmont <remi@remlab.net>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
avformat/cache: remember EOF point if hit and use it to handle SEEK_END

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
avformat/cache: more informative error message

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
avformat/cache: Use the correct io handle in seeking

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
avformat/cache: Support user specified read-ahead for non seekable media

Fixes Ticket2406

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
avfilter/xbr: refactor alpha blending macros
avfilter/xbr: remove unused mask
avfilter/xbr: move alpha blend assignment out of the macros
avfilter/xbr: refactor px calculation in FILT[234]