libav.git
3 years agopixfmt: Add yuv444p12 pixel format
Luca Barbato [Sat, 24 Sep 2016 21:09:43 +0000 (23:09 +0200)]
pixfmt: Add yuv444p12 pixel format

3 years agopixfmt: Add yuv422p12 pixel format
Luca Barbato [Sat, 24 Sep 2016 18:22:56 +0000 (20:22 +0200)]
pixfmt: Add yuv422p12 pixel format

3 years agopixfmt: Add yuv420p12 pixel format
Luca Barbato [Sat, 24 Sep 2016 20:48:48 +0000 (22:48 +0200)]
pixfmt: Add yuv420p12 pixel format

3 years agoswscale: Rename is9_OR_10 to match what it does
Luca Barbato [Tue, 27 Sep 2016 16:13:37 +0000 (18:13 +0200)]
swscale: Rename is9_OR_10 to match what it does

It is used to select functions that work with 9-15bits.

3 years agoswscale: Update bitdepth range check
Luca Barbato [Sun, 25 Sep 2016 14:23:20 +0000 (16:23 +0200)]
swscale: Update bitdepth range check

Make sure the scaling functions for the 9-15bits are used for
9-15bits bit depths correctly.

3 years agoswscale: Consistently order input YUV pixel formats
Vittorio Giovara [Sun, 25 Sep 2016 21:09:57 +0000 (17:09 -0400)]
swscale: Consistently order input YUV pixel formats

Follow a 420, 422, 444 order instead of a random one.
This simplifies double-checking additions of new formats.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
3 years agonvenc: Extended rate-control support as provided by SDK 7
Yogender Gupta [Sat, 24 Sep 2016 15:55:00 +0000 (17:55 +0200)]
nvenc: Extended rate-control support as provided by SDK 7

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Signed-off-by: Diego Biurrun <diego@biurrun.de>
3 years agonvenc: Add support for high bitdepth
Yogender Gupta [Sat, 24 Sep 2016 15:54:59 +0000 (17:54 +0200)]
nvenc: Add support for high bitdepth

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Signed-off-by: Diego Biurrun <diego@biurrun.de>
3 years agonvenc: Add some easier to understand presets that match x264 terminology
Yogender Gupta [Sat, 24 Sep 2016 15:54:58 +0000 (17:54 +0200)]
nvenc: Add some easier to understand presets that match x264 terminology

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
3 years agonvenc: Make sure that enum and array index match
Luca Barbato [Sat, 24 Sep 2016 15:54:57 +0000 (17:54 +0200)]
nvenc: Make sure that enum and array index match

And use a macro to reduce the boilerplate.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
3 years agoaudiodsp/x86: yasmify vector_clipf_sse
Anton Khirnov [Tue, 9 Aug 2016 18:20:00 +0000 (20:20 +0200)]
audiodsp/x86: yasmify vector_clipf_sse

3 years agoaudiodsp: reorder arguments for vector_clipf
Anton Khirnov [Sun, 4 Sep 2016 12:45:48 +0000 (14:45 +0200)]
audiodsp: reorder arguments for vector_clipf

This will make the x86 asm simpler.

ARM conversion by Martin Storsjö <martin@martin.st> and Janne Grunau
<janne-libav@jannau.net>

3 years agoaudiodsp: fix vector_clipf documentation
Anton Khirnov [Tue, 9 Aug 2016 17:50:56 +0000 (19:50 +0200)]
audiodsp: fix vector_clipf documentation

The x86 version processes 16 floats per iteration, so len must be a
multiple of 16.

3 years agocheckasm: add tests for audiodsp
Anton Khirnov [Tue, 9 Aug 2016 16:10:26 +0000 (18:10 +0200)]
checkasm: add tests for audiodsp

3 years agocheckasm: add a test for blockdsp
Anton Khirnov [Mon, 8 Aug 2016 19:58:17 +0000 (21:58 +0200)]
checkasm: add a test for blockdsp

3 years agoblockdsp: drop the high_bit_depth parameter
Anton Khirnov [Mon, 8 Aug 2016 19:47:20 +0000 (21:47 +0200)]
blockdsp: drop the high_bit_depth parameter

It has no effect, since the code is supposed to operate the same way for
any bit depth.

3 years agohwcontext_cuda: Add P010 and YUV444P16 pixel format
Yogender Kumar Gupta [Mon, 19 Sep 2016 14:31:10 +0000 (20:01 +0530)]
hwcontext_cuda: Add P010 and YUV444P16 pixel format

Signed-off-by: Anton Khirnov <anton@khirnov.net>
3 years agoaudiodsp/x86: clear the high bits of the order parameter on 64bit
Anton Khirnov [Tue, 9 Aug 2016 12:17:15 +0000 (14:17 +0200)]
audiodsp/x86: clear the high bits of the order parameter on 64bit

Also change shl to add, since it can be faster on some CPUs.

CC: libav-stable@libav.org
3 years agoaudiodsp/x86: fix ff_vector_clip_int32_sse2
Anton Khirnov [Tue, 9 Aug 2016 12:17:15 +0000 (14:17 +0200)]
audiodsp/x86: fix ff_vector_clip_int32_sse2

This version, which is the only one doing two processing cycles per loop
iteration, computes the load/store indices incorrectly for the second
cycle.

CC: libav-stable@libav.org
3 years agox86util: Document SBUTTERFLY macro
Alexandra Hájková [Sat, 10 Sep 2016 18:41:43 +0000 (20:41 +0200)]
x86util: Document SBUTTERFLY macro

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
3 years agoavcodec: Add the extended pixel format profile for HEVC
Yogender Gupta [Sat, 17 Sep 2016 13:28:27 +0000 (15:28 +0200)]
avcodec: Add the extended pixel format profile for HEVC

It is supported by the NVIDIA video SDK 7.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
3 years agompegvideo_motion: Handle edge emulation even without unrestricted_mv
Michael Niedermayer [Tue, 12 Nov 2013 15:11:42 +0000 (16:11 +0100)]
mpegvideo_motion: Handle edge emulation even without unrestricted_mv

Fix out of bounds read.

Bug-Id: 962
Found by: F4B3CD@STARLAB and Agostino Sarubbo
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
3 years agobuild: remove hardcoded name of version header
Janne Grunau [Mon, 12 Sep 2016 19:52:01 +0000 (21:52 +0200)]
build: remove hardcoded name of version header

Fixes an oversight in 1316df7aa98c4.

CC: libav-stable@libav.org
3 years agobuild: doc: more fine-grained dependencies for generated texi files
Diego Biurrun [Mon, 12 Sep 2016 15:42:28 +0000 (17:42 +0200)]
build: doc: more fine-grained dependencies for generated texi files

3 years agolibdc1394: Distinguish between enumeration errors and no cameras found
Josh de Kock [Sun, 24 Jul 2016 19:55:42 +0000 (20:55 +0100)]
libdc1394: Distinguish between enumeration errors and no cameras found

Signed-off-by: Diego Biurrun <diego@biurrun.de>
3 years agortsp: Fix a crash with the RTSP muxer
Martin Storsjö [Thu, 15 Sep 2016 11:21:38 +0000 (14:21 +0300)]
rtsp: Fix a crash with the RTSP muxer

This was introduced in bc2a32969e.

The whole block that the statement was added to is only
relevant when used as a demuxer, but the other statements
there have had other if statements guarding them. Make
sure to only run this whole block if being used as a
demuxer.

CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
3 years agovf_scale_vaapi: Crop input surface to active region
Mark Thompson [Tue, 13 Sep 2016 19:50:57 +0000 (20:50 +0100)]
vf_scale_vaapi: Crop input surface to active region

If the input has been decoded from a stream which uses edge cropping
then the whole surface need not be valid.  This defines an input
region for the scaler so we only use the active area of the frame.

3 years agovaapi_h264: Fix HRD bit_rate/cpb_size scaling
Mark Thompson [Mon, 12 Sep 2016 23:25:07 +0000 (00:25 +0100)]
vaapi_h264: Fix HRD bit_rate/cpb_size scaling

There should be an extra offset of 6 on bit_rate_scale and of 4 on
cpb_size_scale which were not accounted for here.

3 years agohwcontext_vdpau: Fix missing subscripts
Mark Thompson [Tue, 13 Sep 2016 19:45:55 +0000 (20:45 +0100)]
hwcontext_vdpau: Fix missing subscripts

Also remove the redundant casts which were hiding the error here.

3 years agohwcontext_vdpau: Remove duplicate definition of GET_CALLBACK
Mark Thompson [Mon, 12 Sep 2016 21:37:20 +0000 (22:37 +0100)]
hwcontext_vdpau: Remove duplicate definition of GET_CALLBACK

3 years agopixblockdsp: Change type of stride parameters to ptrdiff_t
Diego Biurrun [Tue, 6 Sep 2016 14:06:12 +0000 (16:06 +0200)]
pixblockdsp: Change type of stride parameters to ptrdiff_t

This avoids SIMD-optimized functions having to sign-extend their
line size argument manually to be able to do pointer arithmetic.

Also adjust parameter names to be "stride" everywhere.

3 years agoconfigure: Drop check_lib()/require() in favor of check_lib2()/require2()
Diego Biurrun [Mon, 5 Sep 2016 08:48:37 +0000 (10:48 +0200)]
configure: Drop check_lib()/require() in favor of check_lib2()/require2()

The latter can do everything the former can do, but also handle conditions
the former cannot like multiple header #includes and checking for headers
and functions in a single test program, which is necessary for certain
library tests.

3 years agoppc: mpegvideo: Add proper runtime AltiVec detection
Diego Biurrun [Fri, 9 Sep 2016 16:30:51 +0000 (18:30 +0200)]
ppc: mpegvideo: Add proper runtime AltiVec detection

3 years agoppc: Update #endif comments
Diego Biurrun [Fri, 9 Sep 2016 16:28:20 +0000 (18:28 +0200)]
ppc: Update #endif comments

3 years agoaudiodsp: ppc: Add VSX variant
Luca Barbato [Sat, 10 Sep 2016 16:12:23 +0000 (18:12 +0200)]
audiodsp: ppc: Add VSX variant

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Signed-off-by: Diego Biurrun <diego@biurrun.de>
3 years agocheckasm: Read the unsigned value as it should
Luca Barbato [Sat, 10 Sep 2016 23:14:37 +0000 (01:14 +0200)]
checkasm: Read the unsigned value as it should

Reading a value larger than int using atoi() may give the wrong result.

3 years agovaapi_vp8: Explicitly include libva vp8 decode header
Mark Thompson [Fri, 9 Sep 2016 14:59:13 +0000 (15:59 +0100)]
vaapi_vp8: Explicitly include libva vp8 decode header

With some old libva versions <va/va.h> does not automatically include
the per-codec subsidiary headers, so we need to include the right one
explicitly ourselves.

3 years agovaapi_decode: Ignore the profile when not useful
Mark Thompson [Sun, 4 Sep 2016 12:33:15 +0000 (13:33 +0100)]
vaapi_decode: Ignore the profile when not useful

Enables VP8 decoding - the decoder places the the bitstream version
in the profile field, which we want to ignore.

3 years agolavc/vaapi: Add VP8 decode hwaccel
Mark Thompson [Sun, 4 Sep 2016 12:28:10 +0000 (13:28 +0100)]
lavc/vaapi: Add VP8 decode hwaccel

3 years agovp8: Add hwaccel hooks
Mark Thompson [Sun, 4 Sep 2016 12:26:37 +0000 (13:26 +0100)]
vp8: Add hwaccel hooks

Also adds some extra fields to the main context structure that may
be needed by a hwaccel decoder.

3 years agoutvideo: Change type of array stride parameters to ptrdiff_t
Diego Biurrun [Thu, 1 Sep 2016 19:31:22 +0000 (21:31 +0200)]
utvideo: Change type of array stride parameters to ptrdiff_t

ptrdiff_t is the correct type for array strides and similar.

3 years agoiir_filter: Change type of array stride parameters to ptrdiff_t
Diego Biurrun [Thu, 1 Sep 2016 18:48:10 +0000 (20:48 +0200)]
iir_filter: Change type of array stride parameters to ptrdiff_t

ptrdiff_t is the correct type for array strides and similar.

3 years agoerror_resilience: Change type of array stride parameters to ptrdiff_t
Diego Biurrun [Thu, 1 Sep 2016 18:45:41 +0000 (20:45 +0200)]
error_resilience: Change type of array stride parameters to ptrdiff_t

ptrdiff_t is the correct type for array strides and similar.

3 years agoconfigure: Simplify clock_gettime() test
Diego Biurrun [Mon, 5 Sep 2016 11:13:50 +0000 (13:13 +0200)]
configure: Simplify clock_gettime() test

3 years agobuild: Fix directory dependencies of tests/pixfmts.mak target
Diego Biurrun [Mon, 5 Sep 2016 11:12:24 +0000 (13:12 +0200)]
build: Fix directory dependencies of tests/pixfmts.mak target

3 years agoconfigure: Fix --disable-pod2man / --disable-texi2html
Diego Biurrun [Tue, 14 Apr 2015 11:27:32 +0000 (13:27 +0200)]
configure: Fix --disable-pod2man / --disable-texi2html

3 years agoconfigure: Simplify libopenjpeg check
Diego Biurrun [Fri, 10 Apr 2015 17:29:25 +0000 (19:29 +0200)]
configure: Simplify libopenjpeg check

3 years agoconfigure: Move initial VAAPI check to a more sensible place
Diego Biurrun [Tue, 17 Mar 2015 12:12:41 +0000 (13:12 +0100)]
configure: Move initial VAAPI check to a more sensible place

3 years agosanm: Change type of array pitch parameters to ptrdiff_t
Diego Biurrun [Fri, 26 Aug 2016 10:44:37 +0000 (12:44 +0200)]
sanm: Change type of array pitch parameters to ptrdiff_t

ptrdiff_t is the correct type for array pitches and similar.

3 years agocopy_block: Change type of array stride parameters to ptrdiff_t
Diego Biurrun [Fri, 26 Aug 2016 10:38:33 +0000 (12:38 +0200)]
copy_block: Change type of array stride parameters to ptrdiff_t

ptrdiff_t is the correct type for array strides and similar.

3 years agosvq1dec: Change type of array pitch parameters to ptrdiff_t
Diego Biurrun [Fri, 26 Aug 2016 10:44:16 +0000 (12:44 +0200)]
svq1dec: Change type of array pitch parameters to ptrdiff_t

ptrdiff_t is the correct type for array pitches and similar.

3 years agoindeo: Change type of array pitch parameters to ptrdiff_t
Diego Biurrun [Fri, 26 Aug 2016 10:26:50 +0000 (12:26 +0200)]
indeo: Change type of array pitch parameters to ptrdiff_t

ptrdiff_t is the correct type for array pitches and similar.

3 years agoDrop memalign hack
Diego Biurrun [Thu, 24 Mar 2016 19:55:19 +0000 (20:55 +0100)]
Drop memalign hack

It no longer serves a useful purpose.

3 years agohwcontext_dxva2: use the special UC copy for downloading frames
Anton Khirnov [Wed, 24 Aug 2016 07:24:49 +0000 (09:24 +0200)]
hwcontext_dxva2: use the special UC copy for downloading frames

3 years agoimgutils: add a function for copying image data from GPU mapped memory
Anton Khirnov [Tue, 23 Aug 2016 19:46:50 +0000 (21:46 +0200)]
imgutils: add a function for copying image data from GPU mapped memory

See https://software.intel.com/en-us/articles/copying-accelerated-video-decode-frame-buffers

3 years agoChangelog: mark the release 12 branch
Anton Khirnov [Thu, 25 Aug 2016 07:59:32 +0000 (09:59 +0200)]
Changelog: mark the release 12 branch

3 years agolavc: Remove old vaapi decode infrastructure
Mark Thompson [Wed, 24 Aug 2016 22:30:29 +0000 (23:30 +0100)]
lavc: Remove old vaapi decode infrastructure

Deprecates struct vaapi_context and the installed header vaapi.h,
to be removed at the next version bump.

3 years agoavconv_vaapi: Convert to use hw_frames_ctx only
Mark Thompson [Sun, 31 Jul 2016 21:51:45 +0000 (22:51 +0100)]
avconv_vaapi: Convert to use hw_frames_ctx only

Most of the functionality here has moved into lavc.

3 years agovaapi_mpeg4: Convert to use the new VAAPI hwaccel code
Mark Thompson [Sun, 7 Aug 2016 12:45:41 +0000 (13:45 +0100)]
vaapi_mpeg4: Convert to use the new VAAPI hwaccel code

3 years agovaapi_vc1: Convert to use the new VAAPI hwaccel code
Mark Thompson [Sat, 6 Aug 2016 21:12:50 +0000 (22:12 +0100)]
vaapi_vc1: Convert to use the new VAAPI hwaccel code

3 years agovaapi_mpeg2: Convert to use the new VAAPI hwaccel code
Mark Thompson [Sat, 6 Aug 2016 17:37:47 +0000 (18:37 +0100)]
vaapi_mpeg2: Convert to use the new VAAPI hwaccel code

3 years agovaapi_h264: Convert to use the new VAAPI hwaccel code
Mark Thompson [Sat, 6 Aug 2016 17:19:32 +0000 (18:19 +0100)]
vaapi_h264: Convert to use the new VAAPI hwaccel code

3 years agolavc: Rewrite VAAPI decode infrastructure
Mark Thompson [Sat, 6 Aug 2016 17:18:40 +0000 (18:18 +0100)]
lavc: Rewrite VAAPI decode infrastructure

Moves much of the setup logic for VAAPI decoding into lavc; the user
now need only provide the hw_frames_ctx.

3 years agowmavoice: Simplify GetBitContext initialization
Diego Biurrun [Fri, 26 Aug 2016 12:56:01 +0000 (14:56 +0200)]
wmavoice: Simplify GetBitContext initialization

3 years agoChangelog: Mention mov with multiple stsd
Vittorio Giovara [Thu, 25 Aug 2016 15:59:59 +0000 (11:59 -0400)]
Changelog: Mention mov with multiple stsd

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
3 years agoHigh Definition Compatible Digital (HDCD) decoder filter, using libhdcd
Burt P [Fri, 26 Aug 2016 14:12:30 +0000 (16:12 +0200)]
High Definition Compatible Digital (HDCD) decoder filter, using libhdcd

Signed-off-by: Burt P <pburt0@gmail.com>
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
3 years agoavprobe: Fix memory leak
Vittorio Giovara [Thu, 21 Jul 2016 13:47:47 +0000 (15:47 +0200)]
avprobe: Fix memory leak

After init_opts() there needs to be an uninit_opts() call
to free the swscale context and other buffers.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
3 years agomov: Remove old b-frame/video delay heuristic
Derek Buitenhuis [Fri, 26 Aug 2016 13:30:07 +0000 (14:30 +0100)]
mov: Remove old b-frame/video delay heuristic

This was added before edts support existed, and is no longer
valid.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
3 years agomov: Remove ancient heuristic hack
Derek Buitenhuis [Fri, 26 Aug 2016 13:30:06 +0000 (14:30 +0100)]
mov: Remove ancient heuristic hack

This breaks files with legitimate single-entry edit lists,
and the hack, introduced in f03a081df09f9c4798a17d7e24446ed47924b11b,
has no link to any known sample in its commit message.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
3 years agolibvpx: Cast a pointer to const to squelch a warning
Diego Biurrun [Wed, 24 Aug 2016 15:00:11 +0000 (17:00 +0200)]
libvpx: Cast a pointer to const to squelch a warning

libavcodec/libvpxdec.c:100:57: warning: passing argument 3 of 'av_image_copy' from incompatible pointer type
         av_image_copy(picture->data, picture->linesize, img->planes,
libavutil/imgutils.h:116:6: note: expected 'const uint8_t **' but argument is of type 'unsigned char **'
 void av_image_copy(uint8_t *dst_data[4], int dst_linesizes[4],

3 years agovp56: Separate VP5 and VP6 dsp initialization
Diego Biurrun [Wed, 24 Aug 2016 10:30:15 +0000 (12:30 +0200)]
vp56: Separate VP5 and VP6 dsp initialization

VP5 has no arch-specific optimizations (nor will it get some in the
future), so it makes no sense to try to share dsp init code with VP6.

3 years agoprores: Change type of stride parameters to ptrdiff_t
Diego Biurrun [Wed, 24 Aug 2016 09:52:10 +0000 (11:52 +0200)]
prores: Change type of stride parameters to ptrdiff_t

This avoids SIMD-optimized functions having to sign-extend their
line size argument manually to be able to do pointer arithmetic.

Also adjust parameter names to be "linesize" everywhere.

3 years agocavs: Change type of stride parameters to ptrdiff_t
Diego Biurrun [Tue, 23 Aug 2016 22:18:41 +0000 (00:18 +0200)]
cavs: Change type of stride parameters to ptrdiff_t

ptrdiff_t is the correct type for array strides and similar.

3 years agovp8: Update some assembly comments left unchanged in bd66f073fe7286bd3c
Diego Biurrun [Wed, 24 Aug 2016 11:50:28 +0000 (13:50 +0200)]
vp8: Update some assembly comments left unchanged in bd66f073fe7286bd3c

3 years agovp8: Change type of stride parameters to ptrdiff_t
Diego Biurrun [Tue, 23 Aug 2016 21:26:35 +0000 (23:26 +0200)]
vp8: Change type of stride parameters to ptrdiff_t

ptrdiff_t is the correct type for array strides and similar.

3 years agovp56: Change type of stride parameters to ptrdiff_t
Diego Biurrun [Tue, 23 Aug 2016 21:23:45 +0000 (23:23 +0200)]
vp56: Change type of stride parameters to ptrdiff_t

This avoids SIMD-optimized functions having to sign-extend their
line size argument manually to be able to do pointer arithmetic.

3 years agovp3: Change type of stride parameters to ptrdiff_t
Diego Biurrun [Tue, 23 Aug 2016 21:19:30 +0000 (23:19 +0200)]
vp3: Change type of stride parameters to ptrdiff_t

This avoids SIMD-optimized functions having to sign-extend their
stride argument manually to be able to do pointer arithmetic.

Also adjust parameter names to be "stride" everywhere.

3 years agodoc: Document FATE option HWACCEL
Luca Barbato [Mon, 15 Aug 2016 17:24:05 +0000 (19:24 +0200)]
doc: Document FATE option HWACCEL

3 years agoav1: Add codec_id and basic demuxing support
Luca Barbato [Sun, 24 Jul 2016 19:17:10 +0000 (21:17 +0200)]
av1: Add codec_id and basic demuxing support

Signed-off-by: Diego Biurrun <diego@biurrun.de>
3 years agortpdec_mpeg4: validate fmtp fields
Luca Barbato [Fri, 19 Aug 2016 16:35:33 +0000 (18:35 +0200)]
rtpdec_mpeg4: validate fmtp fields

3 years agoconfigure: Set __MSVCRT_VERSION__to 0x0700 for MinGW
Diego Biurrun [Thu, 4 Aug 2016 15:01:03 +0000 (17:01 +0200)]
configure: Set __MSVCRT_VERSION__to 0x0700 for MinGW

This exposes some required functionality like _aligned_malloc() in the
MinGW system headers, thus obviating the need for the memalign hack.

3 years agomss12: validate display dimensions
Anton Khirnov [Sun, 14 Aug 2016 08:18:39 +0000 (10:18 +0200)]
mss12: validate display dimensions

The code currently reads the coded dimensions from the extradata, but
expects the display dimensions to be set by the caller, and does not
check that they are compatible (i.e. that the displayed size is smaller
than the coded size).

Make sure that when the display dimensions are set, they are also valid.
Fixes possible invalid memory access.

CC: libav-stable@libav.org
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
3 years agovc1: check that slices have a positive height
Anton Khirnov [Sun, 14 Aug 2016 08:18:39 +0000 (10:18 +0200)]
vc1: check that slices have a positive height

Fixes possible invalid reads.

CC: libav-stable@libav.org
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
3 years agopcx: use the bytestream2 API for reading from input
Anton Khirnov [Sun, 14 Aug 2016 08:18:39 +0000 (10:18 +0200)]
pcx: use the bytestream2 API for reading from input

Fixes possible invalid reads.

CC: libav-stable@libav.org
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
3 years agopcx: check that the packet is large enough before reading the header
Anton Khirnov [Sun, 14 Aug 2016 08:18:39 +0000 (10:18 +0200)]
pcx: check that the packet is large enough before reading the header

Fixes possible invalid reads.

CC: libav-stable@libav.org
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
3 years agopcx: properly pad the scanline
Anton Khirnov [Sun, 14 Aug 2016 08:18:39 +0000 (10:18 +0200)]
pcx: properly pad the scanline

It is passed to the get_bits API, which requires buffers to be padded.

Fixes possible invalid reads.

CC: libav-stable@libav.org
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
3 years agocook: use the bytestream2 API for reading extradata
Anton Khirnov [Sun, 14 Aug 2016 08:18:39 +0000 (10:18 +0200)]
cook: use the bytestream2 API for reading extradata

Fixes possible invalid reads in corrupted files.

CC: libav-stable@libav.org
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
3 years agoqpeg: fix an off by 1 error in the MV check
Anton Khirnov [Sun, 14 Aug 2016 08:18:39 +0000 (10:18 +0200)]
qpeg: fix an off by 1 error in the MV check

height - me_y is the line from which we read, so it must be strictly
smaller than the frame height. Fixes possible invalid reads in corrupted
files.

Also, use a proper context for logging the error.

CC: libav-stable@libav.org
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
3 years agoalac: do not return success if nothing was decoded
Anton Khirnov [Sun, 14 Aug 2016 08:18:39 +0000 (10:18 +0200)]
alac: do not return success if nothing was decoded

If we encounter an END element before anything is decoded, we would
return success even though the output frame has not been allocated,
which is invalid.

CC: libav-stable@libav.org
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
3 years agovmnc: check that subrectangles fit into their containing rectangles
Anton Khirnov [Sun, 14 Aug 2016 08:18:39 +0000 (10:18 +0200)]
vmnc: check that subrectangles fit into their containing rectangles

Fixes possible invalid writes with corrupted files.

CC: libav-stable@libav.org
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
3 years agogolomb: Drop disabled cruft
Diego Biurrun [Sat, 30 Jul 2016 12:52:20 +0000 (14:52 +0200)]
golomb: Drop disabled cruft

3 years agosimple_idct: arm: Drop disabled code variant
Diego Biurrun [Mon, 1 Aug 2016 18:57:30 +0000 (20:57 +0200)]
simple_idct: arm: Drop disabled code variant

3 years agosimple_idct: x86: Drop disabled IDCT implementation
Diego Biurrun [Mon, 1 Aug 2016 18:50:48 +0000 (20:50 +0200)]
simple_idct: x86: Drop disabled IDCT implementation

This gem has been disabled since 2001.

3 years agodvbsubdec: Remove disabled, near-duplicate debug code
Diego Biurrun [Tue, 2 Aug 2016 09:22:11 +0000 (11:22 +0200)]
dvbsubdec: Remove disabled, near-duplicate debug code

3 years agotimefilter: test: Drop some disabled debug cruft
Diego Biurrun [Mon, 1 Aug 2016 18:53:33 +0000 (20:53 +0200)]
timefilter: test: Drop some disabled debug cruft

3 years agompegvideo: Kill some disabled code
Diego Biurrun [Mon, 1 Aug 2016 17:56:28 +0000 (19:56 +0200)]
mpegvideo: Kill some disabled code

3 years agomsmpeg4: Drop disabled debug cruft
Diego Biurrun [Sat, 30 Jul 2016 13:30:46 +0000 (15:30 +0200)]
msmpeg4: Drop disabled debug cruft

3 years agomathops: Drop disabled alternative mid_pred() implementation
Diego Biurrun [Mon, 1 Aug 2016 18:15:07 +0000 (20:15 +0200)]
mathops: Drop disabled alternative mid_pred() implementation

3 years agonsv: Drop disabled cruft
Diego Biurrun [Mon, 1 Aug 2016 18:39:25 +0000 (20:39 +0200)]
nsv: Drop disabled cruft

3 years agomjpegdec: Drop disabled code
Diego Biurrun [Mon, 1 Aug 2016 18:21:04 +0000 (20:21 +0200)]
mjpegdec: Drop disabled code