Commit Graph

86 Commits

Author SHA1 Message Date
Kostya Shishkov
6de226a2b8 indeo3: validate new frame size before resetting decoder 2012-05-15 19:05:39 +02:00
Kostya Shishkov
bc00da2701 indeo3: when freeing buffers, set pointers referencing them to NULL as well 2012-05-15 19:05:39 +02:00
Kostya Shishkov
81064a8045 indeo3: initialise pixel planes on allocation
This prevents decoder from reading garbage from it in case of errors later.
2012-05-15 19:05:39 +02:00
Kostya Shishkov
fc417db3f1 indeo3: ensure that decoded cell data is in 7-bit range as presumed by decoder 2012-05-15 19:05:39 +02:00
Hendrik Leppkes
4b7fa553a9 indeo3: fix motion vector validation
The index of the motion vector has to be checked before being
multiplied by 2 for the array index.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2012-05-01 21:14:18 -04:00
Ronald S. Bultje
fc9bc08dca Indeo3: fix crashes on corrupt bitstreams.
Splits at borders of cells are invalid, since it leaves one of the
cells with a width/height of zero. Also, propagate errors on buffer
allocation failures, so we don't continue decoding (which crashes).

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2012-02-28 10:34:35 -08:00
Martin Storsjö
9cf0841ef3 dsputil: Add ff_ prefix to the dsputil*_init* functions
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-02-15 22:06:34 +02:00
Janne Grunau
be540e0cb3 indeo3: check motion vectors for validity
Fixes null pointer dereferences in fuzzed files found by Oana Stratulat.

Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2012-01-07 09:41:11 +01:00
Aneesh Dogra
464ccb0144 indeo3: check per-plane data buffer against input buffer bounds.
Fixes : http://bugzilla.libav.org/show_bug.cgi?id=102

Signed-off-by: Alex Converse <alex.converse@gmail.com>
2011-11-29 09:58:05 -08:00
Kostya Shishkov
1469f943ad indeo3: cosmetics
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-11-28 10:01:49 +01:00
Aneesh Dogra
97980db487 indeo3: error out if no motion vector is set.
This fixes a crash on a corrupt bitstream (bugzilla #93).

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-11-27 13:30:00 -08:00
Alex Converse
1149fbc763 indeo3: Fix a fencepost error.
Found with asan and the venerable 1-dog.avi sample.
2011-11-08 10:59:52 -08:00
Maxim Poliakovski
594b54b51e replacement Indeo 3 decoder
The new decoder is much smaller and has better code quality.
Cleanup and fixes courtesy of Kostya Shishkov.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-11-03 00:59:12 +01:00
Diego Biurrun
124e28847b Remove some stray unnecessary ffmpeg references. 2011-11-02 10:42:54 +01:00
Anton Khirnov
ec6402b7c5 lavc: use designated initialisers for all codecs.
It's more readable and less prone to breakage.
2011-07-29 08:42:34 +02:00
Alex Converse
aab6374bbe indeo3: Eliminate use of long. 2011-05-03 21:20:05 -07:00
Mans Rullgard
2912e87a6c Replace FFmpeg with Libav in licence headers
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-03-19 13:33:20 +00:00
Reinhard Tartler
737eb5976f Merge libavcore into libavutil
It is pretty hopeless that other considerable projects will adopt
libavutil alone in other projects. Projects that need small footprint
are better off with more specialized libraries such as gnulib or rather
just copy the necessary parts that they need. With this in mind, nobody
is helped by having libavutil and libavcore split. In order to ease
maintenance inside and around FFmpeg and to reduce confusion where to
put common code, avcore's functionality is merged (back) to avutil.

Signed-off-by: Reinhard Tartler <siretart@tauware.de>
2011-02-15 16:18:21 +01:00
Diego Elio Pettenò
d36beb3f69 Add ff_ prefix to data symbols of encoders, decoders, hwaccel, parsers, bsf.
None of these symbols should be accessed directly, so declare them as
hidden.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-01-26 16:08:45 +00:00
Stefano Sabatini
e16f217ceb Use new imgutils.h API names, fix deprecation warnings.
Originally committed as revision 25058 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-09-07 19:15:29 +00:00
Stefano Sabatini
6ce9b4310c Remove use of the deprecated function avcodec_check_dimensions(), use
av_check_image_size() instead.

Originally committed as revision 24711 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-06 09:37:04 +00:00
Måns Rullgård
8fc0162ac4 Add av_ prefix to bswap macros
Originally committed as revision 24170 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-10 22:12:30 +00:00
Måns Rullgård
e6b22522c9 bswap: change ME to NE in macro names
Other parts of FFmpeg use NE (native endian) rather than ME (machine).
This makes it consistent.

Originally committed as revision 24169 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-10 22:09:01 +00:00
Stefano Sabatini
72415b2adb Define AVMediaType enum, and use it instead of enum CodecType, which
is deprecated and will be dropped at the next major bump.

Originally committed as revision 22735 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-30 23:30:55 +00:00
Måns Rullgård
63613fe615 Replace WORDS_BIGENDIAN with HAVE_BIGENDIAN
Originally committed as revision 19508 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-26 12:20:04 +00:00
Måns Rullgård
3aab27b459 Remove useless #include <unistd.h> from many files
Originally committed as revision 19499 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-22 23:37:53 +00:00
Reimar Döffinger
4f76697b3e Change av_free to av_freep
Originally committed as revision 19360 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-06 16:49:36 +00:00
Reimar Döffinger
16c8318513 Reallocate internal buffer when coded frame size changes.
Fixes out-of-bounds reads and writes with i32/smclocki32.avi.1.0 from issue 1240.

Originally committed as revision 19359 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-06 16:48:23 +00:00
Reimar Döffinger
28bcc76ab7 Change iv_decode_frame to get AVCodecContext as argument, so that
avcodec_check_dimensions can be called with a proper context instead of NULL.

Originally committed as revision 19358 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-06 16:45:12 +00:00
Baptiste Coudurier
7bbf3f2ca4 indeo3 decoder uses get_buffer, set CODEC_CAP_DR1
Originally committed as revision 19090 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-06-05 08:08:49 +00:00
Thilo Borgmann
7a00bbad21 Implement avcodec_decode_video2(), _audio3() and _subtitle2() which takes an
AVPacket argument rather than a const uint8_t *buf + int buf_size. This allows
passing of packet-specific flags from demuxer to decoder, such as the keyframe
flag, which appears necessary to playback corePNG P-frames.

Patch by Thilo Borgmann thilo.borgmann googlemail com, see also the thread
"Google Summer of Code participation" on the mailinglist.

Originally committed as revision 18351 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-07 15:59:50 +00:00
Alex Converse
d42e44a0ef Reindent after last commit
Originally committed as revision 17464 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-19 23:08:23 +00:00
Alex Converse
274aa1d02f Some buffer checks for indeo3
Originally committed as revision 17462 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-19 22:56:35 +00:00
Benoit Fouet
a6cef9651d Remove unneeded check.
Originally committed as revision 16803 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-26 09:42:48 +00:00
Benoit Fouet
a44cb89b0f Fix an exploit in indeo by checking we are not writing out of the strip array.
Fixes issue 655

Originally committed as revision 16802 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-26 09:41:23 +00:00
Aurelien Jacobs
1238fa9fb8 indeo3: replace sizeof(struct ...) by sizeof(*var)
Originally committed as revision 16128 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-14 16:41:51 +00:00
Diego Biurrun
bda4e3940a Replace 'typedef struct ustr_t' by 'struct ustr', _t is POSIX namespace.
Originally committed as revision 16099 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-13 13:34:59 +00:00
Benoit Fouet
2c4b482931 Rename some variables and add some comments to try to be a bit more clear.
Originally committed as revision 15510 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-10-02 15:27:13 +00:00
Benoit Fouet
b07e52a955 Fix indentation.
Originally committed as revision 15498 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-10-01 12:48:26 +00:00
Benoit Fouet
5fbec79197 Remove useless context variable.
Originally committed as revision 15495 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-10-01 08:29:19 +00:00
Benoit Fouet
963203361c Merge declaration and assignment.
Originally committed as revision 15494 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-10-01 08:27:37 +00:00
Benoit Fouet
21899717a3 Move iv_decode_frame function to remove a forward declaration.
Originally committed as revision 15488 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-30 14:43:55 +00:00
Benoit Fouet
950c0373fd Remove useless lines.
Originally committed as revision 15487 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-30 14:41:11 +00:00
Benoit Fouet
6f427ccbeb Reindent whole file.
Originally committed as revision 15486 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-30 14:22:10 +00:00
Benoit Fouet
e1a96237df Indent.
Originally committed as revision 15480 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-30 11:55:40 +00:00
Benoit Fouet
f8be1206a6 Simplify iv_free_func().
Originally committed as revision 15479 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-30 11:55:20 +00:00
Benoit Fouet
ffc64ac061 Move allocated buffer out of YUV buffer structure.
Originally committed as revision 15478 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-30 11:51:44 +00:00
Benoit Fouet
c2db8a99a6 Remove useless initializations.
Originally committed as revision 15477 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-30 11:46:37 +00:00
Benoit Fouet
8b27f76bf8 Check allocations on init.
Originally committed as revision 15476 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-30 09:54:13 +00:00
Benoit Fouet
809a23a543 Remove useless test.
Originally committed as revision 15475 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-30 09:41:04 +00:00