Commit Graph

31013 Commits

Author SHA1 Message Date
Ronald S. Bultje
91f4732913 prores: implement multithreading.
60% speedup (overall decoding time) at 2 threads, and another 60%
speedup at 4 threads.
2011-10-11 07:50:49 -07:00
Ronald S. Bultje
e3f530feca prores: idct sse2/sse4 optimizations.
~3.0-3.5x as fast as original C version, 1.6x as fast overall.
2011-10-11 07:50:48 -07:00
Ronald S. Bultje
6aa3cac6bf swscale: use aligned move for storage into temporary buffer.
The intermediate buffer is always aligned.
2011-10-11 07:50:48 -07:00
Ronald S. Bultje
92fb52d906 prores: extract idct into its own dspcontext and merge with put_pixels. 2011-10-11 07:50:48 -07:00
Mans Rullgard
8babfc033e h264: fix invalid shifts in init_cavlc_level_tab()
The level_code expression includes a shift which is invalid in
those cases where the value is not used.  Moving the calculation
to the branch where the result is used avoids these.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-10-11 15:00:56 +01:00
Mans Rullgard
88d1e2b2b0 intfloat_readwrite: fix signed addition overflows
These additions might overflow the signed range for large
input values.  Converting to unsigned before the addition
rather than after avoids such undefined behaviour.  The
result under normal two's complement wraparound remains
unchanged.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-10-11 14:42:28 +01:00
Luca Barbato
30c3d976f1 mov: do not misreport empty stts
Return -1 instead of ENOMEM if entries is 0.
Fixes a av_malloc(0) crash in macosx.
2011-10-11 15:06:50 +02:00
Luca Barbato
5a7ba58657 mov: cosmetics, fix for and if spacing 2011-10-11 15:06:11 +02:00
Anton Khirnov
c780b543e7 id3v2: fix NULL pointer dereference
Bug found by Laurent Aimar fenrir at videolan org
2011-10-11 14:56:41 +02:00
Raivo Hool
2804d32075 mov: read album_artist atom
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-10-11 14:56:41 +02:00
Raivo Hool
dff4177546 mov: fix disc/track numbers and totals
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-10-11 14:56:41 +02:00
Diego Biurrun
25c27f379f doc: fix references to obsolete presets directories for avconv/ffmpeg 2011-10-11 14:31:19 +02:00
Diego Biurrun
4b7f49082f flashsv: return more meaningful error value 2011-10-11 14:28:23 +02:00
Diego Biurrun
f9a9c8f9bc flashsv: fix typo in av_log() message 2011-10-11 14:28:23 +02:00
Justin Ruggles
ff1f89de2d smacker: validate channels and sample format. 2011-10-11 07:48:16 -04:00
Justin Ruggles
cf044f8bff smacker: check buffer size before reading output size 2011-10-11 07:48:16 -04:00
Justin Ruggles
e190e453bd smacker: validate number of channels 2011-10-11 07:48:16 -04:00
Justin Ruggles
a7984a6a6d smacker: Separate audio flags from sample rates in smacker demuxer.
Makes the code easier to understand.
2011-10-11 07:48:16 -04:00
Mans Rullgard
be1242a3f2 h264: fix detection of optional trailing PPS elements
The PPS may contain a few trailing elements whose presence is
only signalled by data remaining after the the mandatory part
has been parsed.  The current code fails to take into account
the rbsp_trailing_bits() when deciding whether to parse these
optional elements.  Assuming no unnecessary padding bytes are
passed to this function, the optional elements are present if
either more than 8 extra bits remain or the remaining bits do
not form a valid rbsp_trailing_bits() after the mandatory PPS
elements have been parsed.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-10-11 12:05:51 +01:00
Mans Rullgard
c79d2a20ba sipr: fix get_bits(0) calls
Zero-length get_bits() is undefined, must check before calling.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-10-11 12:05:51 +01:00
Mans Rullgard
cb668476ab motion_est: make MotionExtContext.map_generation unsigned
The way this value is used, it should be an unsigned type.
While the numerical value has no meaning, unsigned wraparound
is relied upon.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-10-11 12:05:50 +01:00
Laurent Aimar
4c7a232fc8 h264: reset h->ref_count in case of errors in ff_h264_decode_ref_pic_list_reordering()
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-10 21:37:36 +02:00
Laurent Aimar
e8ac80fb2c error_resilience: fix the check for missing references in ff_er_frame_end() for H264
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-10 21:37:36 +02:00
Laurent Aimar
1b1182ce97 4xm: prevent NULL dereference with invalid huffman table
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-10 21:37:36 +02:00
Laurent Aimar
79964745b3 4xmdemux: prevent use of uninitialized memory
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-10 21:37:35 +02:00
Laurent Aimar
8d518a9c4f 4xm: clear FF_INPUT_BUFFER_PADDING_SIZE bytes in temporary buffers
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-10 21:37:35 +02:00
Laurent Aimar
dc64f203a6 ptx: check for out of bound reads
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-10 21:37:15 +02:00
Laurent Aimar
04a845caa7 tiffdec: fix out of bound reads/writes
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-10 21:36:13 +02:00
Laurent Aimar
46cb2f6a29 eacmv: check for out of bound reads
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-10 21:36:13 +02:00
Laurent Aimar
8df8a87e3f eacmv: fix potential pointer arithmetic overflows
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-10 21:36:12 +02:00
Laurent Aimar
c7f89064e2 adpcm: fix out of bound reads due to integer overflow
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-10 21:36:12 +02:00
Laurent Aimar
2475f1a83c anm: prevent infinite loop
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-10 21:36:12 +02:00
Laurent Aimar
6de33611c9 avsdemux: check for out of bound writes
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-10 21:36:12 +02:00
Laurent Aimar
de049a95f4 avs: check for out of bound reads
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-10 21:36:12 +02:00
Laurent Aimar
76c6971a64 avsdemux: check for corrupted data
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-10 21:27:04 +02:00
Anton Khirnov
7bb1807c2d AVOptions: refactor set_number/write_number
write_number() does the actual writing of the supplied
number to destination. Move finding the option and choosing destination
address out of it.
2011-10-10 20:27:31 +02:00
Anton Khirnov
cf10095f0b AVOptions: cosmetics, rename static av_set_number2() to write_number(). 2011-10-10 20:27:31 +02:00
Anton Khirnov
b003d0be5b AVOptions: cosmetics, move and rename static av_set_number(). 2011-10-10 20:27:31 +02:00
Anton Khirnov
c8d787d2ef AVOptions: split av_set_string3 into opt type-specific functions
Also stop attempting to honor the alloc parameter, as things break
horribly in that case.
It will be removed in upcoming successor to av_set_string3.
2011-10-10 20:27:30 +02:00
Mans Rullgard
1703013cb7 avidec: fix signed overflow in avi_sync()
Keeping byte values read from the file as unsigned is consistent
with how they are subsequently used and avoids an undefined left
shift by 24 when bit 7 is set.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-10-10 17:49:13 +01:00
Alex Converse
0c46e958d1 mxfdec: Fix some buffer overreads caused by the misuse of AVPacket related functions. 2011-10-10 09:40:26 -07:00
Baptiste Coudurier
11a32d53ca dnxhddec: handle cid change in bitstream. 2011-10-10 09:40:26 -07:00
Kostya Shishkov
109d8aa1e6 vc1: K&R reformatting cosmetics
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-10-10 18:35:35 +02:00
Justin Ruggles
8f8f5ae991 ra288: log an error message when output buffer is too small.
also return AVERROR(EINVAL) instead of -1.
2011-10-10 11:38:58 -04:00
Justin Ruggles
fa6be04bf7 ra288: use a more descriptive calculation for output data size 2011-10-10 11:38:58 -04:00
Justin Ruggles
f10524d51c ra144: use macro constants to make the code more understandable. 2011-10-10 11:38:58 -04:00
Justin Ruggles
cadd4d332a ra144dec: log an error message when output buffer is too small.
also return AVERROR(EINVAL) instead of -1.
2011-10-10 11:38:58 -04:00
Justin Ruggles
80bdf7e0b7 ra144dec: use a more descriptive calculation for output data size 2011-10-10 11:38:57 -04:00
Mashiat Sarker Shakkhar
51757ac789 lavc: Micro version bump for VC1 interlaced decoding support
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-10-10 15:26:37 +02:00
Mashiat Sarker Shakkhar
cad16562c8 vc1dec: interlaced stream decoding support 3/3
Cosmetics: break some lines and reformat TODOs

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-10-10 15:26:37 +02:00