Commit Graph

25559 Commits

Author SHA1 Message Date
Michael Niedermayer
65bf9a44d7 avcodec/pngdec: check for stream end in png_decode_idat()
Fix infinite loop
Fix Ticket2978

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-25 02:17:36 +02:00
Michael Niedermayer
bb4b041df3 avcodec/mpegvideo_enc: check qmin/qmax
Fixes Ticket2990

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-25 00:44:17 +02:00
Michael Niedermayer
c88ac1e023 avcodec/g2meet: fix regression with rgb cursors
Fixes Ticket2972

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-25 00:25:23 +02:00
Anton Khirnov
5f4b1b1cbd lavc doxy: document that avcodec_flush_buffers() invalidates decoded frames 2013-09-24 17:34:00 +02:00
Michael Niedermayer
dcc7686ae7 avcodec/mpegvideo: drop emu edge check from chroma_4mv_motion_lowres()
This is in line with the other functions

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-24 17:15:24 +02:00
Anton Khirnov
cab8c5f8e1 h264: do not reinitialize the global cabac tables at each slice header 2013-09-24 17:13:52 +02:00
Anton Khirnov
e880418660 cabac: remove write-only h264_mps_state[] 2013-09-24 17:13:17 +02:00
Michael Niedermayer
1fb0d96114 Merge commit 'a454dec19aa6666b555deec431bc42eda391d7b6'
* commit 'a454dec19aa6666b555deec431bc42eda391d7b6':
  pixdesc: fix NV20* descriptors
  h264_sei: check SEI size

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-24 15:51:08 +02:00
Michael Niedermayer
d195e6e410 Merge commit '71cabb521ac397db3903011d2de7afd3e0fc7ab6'
* commit '71cabb521ac397db3903011d2de7afd3e0fc7ab6':
  h264: do not discard NAL_SEI when skipping frames

Conflicts:
	libavcodec/h264.c

See: 7d75fb381b
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-24 15:38:34 +02:00
Michael Niedermayer
af2bb83dff Merge commit 'edaba18021e4793116f0f266e65077578a5e742e'
* commit 'edaba18021e4793116f0f266e65077578a5e742e':
  h264: log extradata skip only for non-ignored NALs

Conflicts:
	libavcodec/h264.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-24 15:30:21 +02:00
Michael Niedermayer
9c2e31c3b3 Merge commit '26179964ff3fa1173e6f512c5735ba8223e2395d'
* commit '26179964ff3fa1173e6f512c5735ba8223e2395d':
  h264_sei: log unknown sei messages

Conflicts:
	libavcodec/h264_sei.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-24 15:03:32 +02:00
Michael Niedermayer
0ebc372856 Merge commit '5f24fe82e5fcf227abb5ebf62aa9bc246fda8c0d'
* commit '5f24fe82e5fcf227abb5ebf62aa9bc246fda8c0d':
  mpegvideo: Initialize chroma_*_shift and codec_tag even if the size is 0

Conflicts:
	libavcodec/mpegvideo.c

The chroma_*_shift and codec_tag code was not under a size!=0 check in ffmpeg

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-24 14:55:14 +02:00
Kieran Kunhya
58894ab3f9 lavc: add support for interleaved chroma formats to libx264.
Interleaved chroma is x264's native format

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2013-09-24 14:15:04 +02:00
Rainer Hochecker
71cabb521a h264: do not discard NAL_SEI when skipping frames
Setting AVDISCARD_NONREF (e.g. after flushing) resulted in 100% dropped frames.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2013-09-24 13:24:29 +02:00
Michael Niedermayer
84df6d6a85 h264_sei: check SEI size
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2013-09-24 13:24:29 +02:00
Vittorio Giovara
edaba18021 h264: log extradata skip only for non-ignored NALs
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2013-09-24 13:24:28 +02:00
Vittorio Giovara
26179964ff h264_sei: log unknown sei messages
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2013-09-24 13:24:28 +02:00
Martin Storsjö
5f24fe82e5 mpegvideo: Initialize chroma_*_shift and codec_tag even if the size is 0
This fixes breakage in a few fate tests on certain setups
(that for some reason didn't break on OS X) after the previous
commit (8812a8057). Currently, some video streams are initialized
in ff_MPV_common_init with width/height set at 0 and only changed
to a proper video size with ff_MPV_common_frame_size_change later.

The breakage was diagnosed by Anton Khirnov.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-09-24 14:02:23 +03:00
Michael Niedermayer
17513f4fb3 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  h263dec: Remove a hack that can cause infinite loops

Conflicts:
	libavcodec/h263dec.c

See: d2981b8ef1
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-24 10:59:22 +02:00
Michael Niedermayer
15d4965239 avcodec/mjpegenc: dont store DQT for LJPEG
This may improve compatibility of lgpegs generated by libavcodec
also encoded ljpegs become slightly smaller

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-24 01:21:03 +02:00
Martin Storsjö
8812a8057f h263dec: Remove a hack that can cause infinite loops
The actual usefulness of the hack is not known, and it does cause
infinite loops with some broken input files.

CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-09-23 23:14:49 +03:00
Ronald S. Bultje
34b429d5ba vp8: fix PPC assembly and bilinear C code to work if src_stride != dst_stride.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-23 15:23:53 +02:00
Michael Niedermayer
356031348c avcodec/vc1dec: fix propagating error codes from various functions
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-23 14:57:30 +02:00
Michael Niedermayer
a51f3b53fe avcodec/vc1dec: Fix return code on malloc() failure from ff_vc1_decode_init_alloc_tables()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-23 14:54:57 +02:00
Michael Niedermayer
50138a9235 Merge commit '23d6ba2c44540eb39c6880e4cbd527d297d264a9'
* commit '23d6ba2c44540eb39c6880e4cbd527d297d264a9':
  vc1dec: Check the error handling flags on slice/field header decode errors

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-23 14:34:36 +02:00
Michael Niedermayer
c74fa39b93 Merge commit 'bb7bf175951475235ee7d0504198c4a30cf5d5dd'
* commit 'bb7bf175951475235ee7d0504198c4a30cf5d5dd':
  vc1dec: Don't decode slices when the latest slice header failed to decode

Conflicts:
	libavcodec/vc1dec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-23 14:03:53 +02:00
Michael Niedermayer
79fbd7a5c1 Merge commit '5e25fdbfe01635cfc650ac4adc27d434b2df0d64'
* commit '5e25fdbfe01635cfc650ac4adc27d434b2df0d64':
  vc1dec: Make sure last_picture is initialized in vc1_decode_skip_blocks

See: 09de0ffeab
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-23 13:57:15 +02:00
Michael Niedermayer
8b85d9bfb6 Merge commit 'b772b0e28eba6abf76d86ee8c6e459a86642db5a'
* commit 'b772b0e28eba6abf76d86ee8c6e459a86642db5a':
  vc1dec: Undo mpegvideo initialization if unable to allocate tables

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-23 13:44:37 +02:00
Michael Niedermayer
eed40b2957 Merge commit 'ede508443e4bf57dc1e019fac81bf6244b88fbd3'
* commit 'ede508443e4bf57dc1e019fac81bf6244b88fbd3':
  vc1dec: Fix leaks in ff_vc1_decode_init_alloc_tables on errors

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-23 13:29:58 +02:00
Michael Niedermayer
621845fecc Merge commit '91be1103fd1f79d381edf268c32f4166b6c3b6d8'
* commit '91be1103fd1f79d381edf268c32f4166b6c3b6d8':
  wnv1: Make sure the input packet is large enough

Conflicts:
	libavcodec/wnv1.c

See: f23a2418fb
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-23 13:20:42 +02:00
Michael Bradshaw
3cfd4df8e7 libopenjpeg: init and close properly; don't config during encode
Signed-off-by: Michael Bradshaw <mjbshaw@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-23 02:35:50 +02:00
Paul B Mahol
e494f44c05 avcodec/escape124: fix infinite loop
Remove can_safely_read() as its not really needed with
checked bitstream reader.

Fixes #2984.
Reported-by: Piotr Bandurski <ami_stuff@o2.pl>
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-09-23 00:19:05 +00:00
Michael Niedermayer
b5b762b714 avcodec/avcodec.h: skip_alpha should not be accessed directly (would cause ABI issues)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-22 20:57:34 +02:00
Martin Storsjö
23d6ba2c44 vc1dec: Check the error handling flags on slice/field header decode errors
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-09-22 21:02:52 +03:00
Michael Niedermayer
bb7bf17595 vc1dec: Don't decode slices when the latest slice header failed to decode
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-09-22 21:02:52 +03:00
Martin Storsjö
5e25fdbfe0 vc1dec: Make sure last_picture is initialized in vc1_decode_skip_blocks
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-09-22 21:02:52 +03:00
Martin Storsjö
b772b0e28e vc1dec: Undo mpegvideo initialization if unable to allocate tables
Previously, s->context_initialized was left set to 1
if ff_vc1_decode_init_alloc_tables failed, skipping the
initialization completely on the next decode call.

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-09-22 21:02:47 +03:00
Kieran Kunhya
283fb76d3d lavc: Add support for interleaved chroma formats to libx264. Interleaved chroma is x264's native format
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-22 19:55:57 +02:00
Paul B Mahol
b00fb157ba avcodec/sgirledec: fix infinite loop in decode_sgirle8()
Fixes #2985.
Reported-by: Piotr Bandurski <ami_stuff@o2.pl>
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-09-22 17:30:51 +00:00
Reimar Döffinger
547c2f002a Make decoding alpha optional for some codecs.
For codecs where decoding of a whole plane can simply
be skipped, we should offer applications to not decode
alpha for better performance (ca. 30% less CPU usage
and 40% reduced memory bandwidth).
It also means applications do not need to implement support
(even if it is rather simple) for YUVA formats in order to be
able to play these files.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2013-09-22 16:20:54 +02:00
Reimar Döffinger
2aa8e33d7d Fix nonsense MPEG-4 hwaccel code.
Issues with the code:
1) The skip_bits_long breaks packed B-frames since we skip
of the packed frame, even for VDPAU.
2) Calling ff_h263_find_resync_marker_reverse is nonsense for MPEG-4,
and for H.263 the only code using this (vaapi_mpeg4) explicitly reverts
this change!
3) mb_x/mb_y are always 0 when vaapi_mpeg4_decode_slice, so doing
computations with them is just obfuscation
4) due to not updating mb_y the code would always go into the error
resilience case, causing nonsense error messages and maybe further
issues.

While tested to fix the data provided to the decoder in case of
VDPAU so it is the same as for the non-hwaccel code, the VA-API code
was not tested to still work, and adding regression testing even
as a quick hack is much more complicated for it.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2013-09-22 16:08:35 +02:00
Martin Storsjö
ede508443e vc1dec: Fix leaks in ff_vc1_decode_init_alloc_tables on errors
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-09-22 16:10:22 +03:00
Martin Storsjö
91be1103fd wnv1: Make sure the input packet is large enough
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-09-22 16:10:21 +03:00
Michael Niedermayer
e07ac727c1 avcodec/g2meet: Fix framebuf size
Currently the code can in some cases draw tiles that hang outside the
allocated buffer. This patch increases the buffer size to avoid out
of array accesses. An alternative would be to fail if such tiles are
encountered.
I do not know if any valid files use such hanging tiles.

Fixes Ticket2971
Found-by: ami_stuff
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-22 00:04:39 +02:00
Michael Niedermayer
a072acb108 avcodec: fix duplicate includes
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-21 16:59:13 +02:00
Hendrik Leppkes
1c4fa2aaf2 avcodec/fraps: use BT.709 colorspace for YUV Fraps versions
Based both on comparison to the reference decoder, and comments from
the fraps developers upon inquiry how to handle the yuv fraps variants.
2013-09-21 13:09:13 +00:00
Michael Niedermayer
8ad2465987 Merge remote-tracking branch 'cehoyos/master'
* cehoyos/master:
  Allow encoding YUVJ422P and YUVJ444P with libx264.

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-21 14:07:41 +02:00
Carl Eugen Hoyos
79209f5d6c Allow encoding YUVJ422P and YUVJ444P with libx264.
Reviewed-by: Reimar
2013-09-21 09:54:06 +02:00
Reimar Döffinger
f76b633a94 mpeg4dec: Ensure data is not clobbered too early.
Avoid overwriting the bitstream buffer data before we
have ended processing the frame.
This is necessary to fix hwaccels which might try to use
the buffer during the end_frame call.
I am not sure but it is possible this could even trigger
a use-after-free if the av_fast_malloc allocated a new buffer.
This would require that decode_slice did not wind the bitstream
forward all the way to the end, which does not currently happen in
normal streams.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2013-09-21 09:40:28 +02:00
Reimar Döffinger
29f244e08e dvbsubdec: Check for invalid clut selector.
Fail decoding if strict compliance is requested.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2013-09-21 09:51:10 +02:00
JULIAN GARDNER
97ff584af4 Apply clut changes only to one table.
The specification does not allow multiple bits to be set,
but some encoders do it anyway.
Applying it only to the first seems to give better results.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2013-09-21 09:51:09 +02:00
Michael Niedermayer
8c320b3c08 Merge commit 'a9d50bb578ec04c085a25f1e023f75e0e4499d5e'
* commit 'a9d50bb578ec04c085a25f1e023f75e0e4499d5e':
  dcadec: Validate the lfe parameter

Conflicts:
	libavcodec/dcadec.c

See: 3b2cd83a82
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-20 15:37:55 +02:00
Michael Niedermayer
9bb86faca7 Merge commit '3185a80259ce1f8f8111073dbd14a69a396e03a3'
* commit '3185a80259ce1f8f8111073dbd14a69a396e03a3':
  fraps: Make the input buffer size checks more strict

Conflicts:
	libavcodec/fraps.c

The added checks are mostly to handle duplicate frames, which
we discard, thus there are also no P frames for example.

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-20 14:21:34 +02:00
Vittorio Giovara
1cad7171dd h264: remove an unused static constant
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-09-20 14:40:10 +03:00
Michael Niedermayer
c092af3008 Merge commit '601c2015bc16f0b281160292a6a760cbbbb0eacb'
* commit '601c2015bc16f0b281160292a6a760cbbbb0eacb':
  svq3: Avoid a division by zero

Conflicts:
	libavcodec/svq3.c

See: 4fa706a4a6
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-20 13:29:39 +02:00
Michael Niedermayer
61a8eaf711 Merge commit '7a5a55722749a3ab77941914707277b147322cbe'
* commit '7a5a55722749a3ab77941914707277b147322cbe':
  qpeg: Add checks for running out of rows in qpeg_decode_inter

Conflicts:
	libavcodec/qpeg.c

See: 4299dfa5de
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-20 13:20:06 +02:00
Martin Storsjö
a9d50bb578 dcadec: Validate the lfe parameter
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-09-20 14:14:45 +03:00
Michael Niedermayer
3f4cf77abd Merge commit 'e9d61de96c113ee0ef8082833c7e682df0e23eec'
* commit 'e9d61de96c113ee0ef8082833c7e682df0e23eec':
  mpegaudiodec: Validate that the number of channels fits at the given offset

Conflicts:
	libavcodec/mpegaudiodec.c

See: 51fcf276f8
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-20 13:06:12 +02:00
Michael Niedermayer
13b353a7cb avcodec/asvdec: dont fail without extradata
extradata is not mandatory to decode asv

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-20 12:51:22 +02:00
Michael Niedermayer
1e9a850df9 Merge commit 'f50803354c6acb4575379d7c54ca48ec5d36dd61'
* commit 'f50803354c6acb4575379d7c54ca48ec5d36dd61':
  asvdec: Verify the amount of extradata

See: 605f2b6b00
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-20 12:49:15 +02:00
Michael Niedermayer
9c8aeacf82 avutil: add av_get_colorspace_name()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-19 22:14:13 +02:00
Martin Storsjö
3185a80259 fraps: Make the input buffer size checks more strict
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-09-19 22:45:59 +03:00
Martin Storsjö
601c2015bc svq3: Avoid a division by zero
If the height is zero, the decompression will probably end up
failing due to not fitting into the allocated buffer later
anyway, so this doesn't need any more elaborate check.

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-09-19 22:45:16 +03:00
Martin Storsjö
7a5a557227 qpeg: Add checks for running out of rows in qpeg_decode_inter
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-09-19 22:44:39 +03:00
Martin Storsjö
e9d61de96c mpegaudiodec: Validate that the number of channels fits at the given offset
This is similar to the fix in 35cbc98b.

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-09-19 22:44:18 +03:00
Martin Storsjö
f50803354c asvdec: Verify the amount of extradata
The init function reads one byte of extradata.

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-09-19 22:43:55 +03:00
Michael Niedermayer
93648ee47b Merge remote-tracking branch 'qatar/master'
* qatar/master:
  rv34: Fix a memory leak on errors

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-19 13:49:17 +02:00
Michael Niedermayer
b4c88a4c4c Merge commit '5372cda67109848d22146289e401669266217e80'
* commit '5372cda67109848d22146289e401669266217e80':
  rv10: Validate the dimensions set from the container

This check could be replaced by a width==0||height==0

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-19 13:28:32 +02:00
Michael Niedermayer
32ea39f56d Merge commit '1914e6f010b3320025c7b692aaea51d9b9a992a8'
* commit '1914e6f010b3320025c7b692aaea51d9b9a992a8':
  aacdec: Add support for LD (Low Delay) AAC

Conflicts:
	Changelog
	libavcodec/aacdec.c
	libavcodec/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-19 12:55:26 +02:00
Michael Niedermayer
257f11820b Merge commit '5cdefc02079a5b899bdec09e15e2bb099cb01734'
* commit '5cdefc02079a5b899bdec09e15e2bb099cb01734':
  aacdec: Add support for Error Resilience syntax.

Conflicts:
	Changelog
	libavcodec/aacdec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-19 12:44:06 +02:00
Michael Niedermayer
b26ccf218d Merge commit 'c4bfa098072ba338d83555d6e2199f7e1e64ffff'
* commit 'c4bfa098072ba338d83555d6e2199f7e1e64ffff':
  Add a WebP decoder

Conflicts:
	Changelog
	doc/general.texi
	libavcodec/Makefile
	libavcodec/avcodec.h
	libavcodec/version.h
	libavformat/img2.c

The previously existing webp decoder is disabled as the new
one supports lossless mode and alpha while the previous does not.

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-19 12:36:11 +02:00
Michael Niedermayer
ac2fc63ac6 Merge commit '9ae53c5860e17d087642d27b00dade071970a2e7'
* commit '9ae53c5860e17d087642d27b00dade071970a2e7':
  lavc: add ff_u8_to_s8() for safe type punning of uint8_t to int8_t

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-19 11:47:40 +02:00
Martin Storsjö
fdbd924b84 rv34: Fix a memory leak on errors
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-09-19 11:09:18 +03:00
Martin Storsjö
5372cda671 rv10: Validate the dimensions set from the container
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-09-19 11:08:54 +03:00
Alex Converse
1914e6f010 aacdec: Add support for LD (Low Delay) AAC 2013-09-18 12:01:53 -07:00
Alex Converse
5cdefc0207 aacdec: Add support for Error Resilience syntax.
This does not add support for any error resilience tools.
2013-09-18 12:01:49 -07:00
Justin Ruggles
c4bfa09807 Add a WebP decoder
Container and lossy decoding by Aneesh Dogra <aneesh@sugarlabs.org>
Lossless decoding by Justin Ruggles <justin.ruggles@gmail.com>
2013-09-18 14:10:05 -04:00
Justin Ruggles
9ae53c5860 lavc: add ff_u8_to_s8() for safe type punning of uint8_t to int8_t 2013-09-18 14:10:05 -04:00
Michael Niedermayer
015f7ce7d7 Merge commit 'c77d409bf95954aceb762dd800d1ee2868c4b0d4'
* commit 'c77d409bf95954aceb762dd800d1ee2868c4b0d4':
  twinvqdec: Check the ibps parameter separately

See: b8dc5f8bb3
See: 98b377004d
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-18 12:42:19 +02:00
Michael Niedermayer
f9ccdcb6ce Merge commit '8411baf6f0a42bdd61f00f34aa9efec7e138b5f2'
* commit '8411baf6f0a42bdd61f00f34aa9efec7e138b5f2':
  dca_parser: Handle changes in DCA frame size

Conflicts:
	libavcodec/dca_parser.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-18 10:39:34 +02:00
Michael Niedermayer
2dd38a1d48 avcodec/jpeg2000dec: move "missing SIZ" check up
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-18 10:04:43 +02:00
Michael Niedermayer
8ae14bf5ce Merge commit '18a245a2aea31b92bc435f2962a71e060d83b5f7'
* commit '18a245a2aea31b92bc435f2962a71e060d83b5f7':
  jpeg2000dec: Add more checks when parsing headers

The check cannot be true in FFmpeg, but does no harm.
I will move it in a subsequent commit so it can detect missing SIZ

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-18 10:03:35 +02:00
Martin Storsjö
c77d409bf9 twinvqdec: Check the ibps parameter separately
This is required, since invalid parameters actually could
pass the switch check below.

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-09-17 23:22:46 +03:00
John Stebbins
8411baf6f0 dca_parser: Handle changes in DCA frame size
A change in framesize caused a perpetual loss of synchronization.
So read (and use) the frame size from the frame header instead of
setting it only once.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
2013-09-17 18:16:47 +02:00
Derek Buitenhuis
fcb069af8f lavc: Don't export ff_vdpau_vc1_decode_picture
It's not our responsibility to account for other projects'
terrible hacky usage.

Also, it is no longer needed by XMBC, since 78b71d4.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2013-09-17 12:12:21 -04:00
Michael Niedermayer
1976976674 Merge commit 'ea78a348d86a3a733f6c1e0a65cfdd8283d924b9'
* commit 'ea78a348d86a3a733f6c1e0a65cfdd8283d924b9':
  eacmv: Make sure a reference frame exists before referencing it

Conflicts:
	libavcodec/eacmv.c

See: 113d7be624
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-17 16:47:18 +02:00
Michael Niedermayer
028f8c3ecb Merge commit 'f875a732e36786d49f3650e3235272891a820600'
* commit 'f875a732e36786d49f3650e3235272891a820600':
  mpeg4videodec: Check the width/height in mpeg4_decode_sprite_trajectory

Conflicts:
	libavcodec/mpeg4videodec.c

See: fc5c49ab32
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-17 16:26:59 +02:00
Michael Niedermayer
8d0b899e38 Merge commit 'a92538b7c0defc86c55fb91f55dfa36aad192673'
* commit 'a92538b7c0defc86c55fb91f55dfa36aad192673':
  ivi_common: Make sure color planes have been initialized

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-17 16:22:47 +02:00
Michael Niedermayer
b3dfda8a41 Merge commit '711c970168297683860422e95d6b7e37ee3c8367'
* commit '711c970168297683860422e95d6b7e37ee3c8367':
  rv34: Check the return value from ff_rv34_decode_init

Conflicts:
	libavcodec/rv30.c
	libavcodec/rv40.c

See: b86651a208
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-17 15:38:09 +02:00
Michael Niedermayer
7163bbefa2 Merge commit 'e1f3847f860a1094a46be4c5f10db8df616c3135'
* commit 'e1f3847f860a1094a46be4c5f10db8df616c3135':
  mace: Make sure that the channel count is set to a valid value

Conflicts:
	libavcodec/mace.c

See: 6df1cfa7e4
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-17 15:16:01 +02:00
Michael Niedermayer
a64b99503b Merge commit '1115689d54ea95a084421f5a182b8dc56cbff978'
* commit '1115689d54ea95a084421f5a182b8dc56cbff978':
  svq3: Check for any negative return value from ff_h264_check_intra_pred_mode

Conflicts:
	libavcodec/svq3.c

See: 019eb2c77b
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-17 15:07:09 +02:00
Martin Storsjö
18a245a2ae jpeg2000dec: Add more checks when parsing headers
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-09-17 15:57:27 +03:00
Martin Storsjö
ede42109e7 x86: Add an xmm clobbering wrapper for avcodec_encode_video2
This is required since 187105ff8 when we started trying to
wrap this function as well.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-09-17 10:53:23 +02:00
Michael Niedermayer
ff4548f223 Merge commit '187105ff8a02bafc9c58d9d8363bb3f55a415635'
* commit '187105ff8a02bafc9c58d9d8363bb3f55a415635':
  Fix references to deleted avcodec_encode_video() function

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-17 10:53:14 +02:00
Martin Storsjö
ea78a348d8 eacmv: Make sure a reference frame exists before referencing it
This is similar to an existing check for the second-last frame
from 062421e3.

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-09-17 11:33:38 +03:00
Martin Storsjö
f875a732e3 mpeg4videodec: Check the width/height in mpeg4_decode_sprite_trajectory
This avoids a potential division by zero.

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-09-17 11:33:38 +03:00
Martin Storsjö
a92538b7c0 ivi_common: Make sure color planes have been initialized
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-09-17 11:33:38 +03:00
Martin Storsjö
b1db33159f ffv1: Make sure at least one slice context is initialized
This avoids crashes when initializing the range coder for
the first slice context.

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-09-17 11:33:38 +03:00
Martin Storsjö
c39f7eba01 truemotion2: Use av_freep properly in an error path
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-09-17 11:33:38 +03:00
Martin Storsjö
711c970168 rv34: Check the return value from ff_rv34_decode_init
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-09-17 11:33:37 +03:00