Dirk Ausserhaus
5ec6d152e2
indeo4: B-frames decoding
...
Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
2014-06-26 19:17:33 +02:00
Dirk Ausserhaus
e121ac634b
indeo45: use is_indeo4 context flag instead of checking codec ID
...
Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
2014-06-23 09:29:39 +02:00
Dirk Ausserhaus
f76e3669bb
Decode both parts of Indeo4 IP frames
...
Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
2014-06-01 08:53:27 +02:00
Dirk Ausserhaus
3df0d20028
Move Indeo4 frametypes into common header.
...
Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
2014-06-01 08:53:27 +02:00
Diego Biurrun
cc8163e1a3
avcodec: more correct printf specifiers
2014-03-22 14:08:20 +01:00
Janne Grunau
fb0c9d41d6
avutil: remove timer.h include from internal.h
...
Added libavutil/timer.h include to all files with {START,STOP}_TIMER.
2014-01-25 21:50:20 +01:00
Anton Khirnov
d184cd1dac
ivi_common: stop using deprecated avcodec_set_dimensions
2013-10-31 20:14:15 +01: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
Diego Biurrun
060ce0c697
ivi_common: Make some tables only used within the file static
2013-08-15 14:38:03 +02:00
Luca Barbato
5b2a29552c
indeo: Reject impossible FRAMETYPE_NULL
...
A frame marked FRAMETYPE_NULL cannot be scalable and requires a
previous frame successfully decoded.
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-07-15 11:46:50 +02:00
Luca Barbato
f9e5261cab
indeo: Do not reference mismatched tiles
...
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-07-15 11:46:30 +02:00
Luca Barbato
28dda8a691
indeo: Sanitize ff_ivi_init_planes fail paths
...
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-07-15 11:29:59 +02:00
Luca Barbato
25a6666f6c
indeo: Bound-check before applying motion compensation
...
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-07-15 11:29:59 +02:00
Luca Barbato
dc79685195
indeo: Bound-check before applying transform
...
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-07-13 19:11:18 +02:00
Luca Barbato
6a10142faa
indeo: reject negative array indexes
...
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-07-04 16:06:11 +02:00
Luca Barbato
6dfacd7ab1
indeo: Cosmetic formatting
...
Trim some overly long lines.
2013-07-04 16:06:10 +02:00
Luca Barbato
62256010e9
indeo: Refactor ff_ivi_init_tiles and ivi_decode_blocks
...
Spin large and mostly self contained blocks into stand alone
functions.
2013-07-04 16:06:10 +02:00
Luca Barbato
f6f36ca8ca
indeo: Refactor ff_ivi_dec_huff_desc
...
Spare an indentation level.
2013-07-04 16:06:10 +02:00
Luca Barbato
e6d8acf6a8
indeo: use a typedef for the mc function pointer
2013-07-04 16:06:10 +02:00
Luca Barbato
b36e1893ef
indeo: check for reference when inheriting mvs
...
The same is done already for qdelta.
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-07-01 04:20:58 +02:00
Luca Barbato
dd3754a488
indeo: use proper error code
2013-07-01 04:17:46 +02:00
Luca Barbato
7388c0c586
indeo: Properly forward the error codes
...
If the tile data size does not match the buffer size it did not
return an AVERROR_INVALIDDATA causing futher corruption later.
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-07-01 04:17:46 +02:00
Kostya Shishkov
33f64fd5d5
indeo4: expand allowed quantiser range
...
Indeo 4 has quantiser range 0-31 instead of 0-23 for Indeo 5, and clipping
quantiser leads to incorrect quantisation and DC prediction on low-quality
videos.
This fixes bug 259.
2013-06-01 06:36:47 +02:00
Diego Biurrun
6fee1b90ce
avcodec: Add av_cold attributes to init functions missing them
2013-05-04 21:09:45 +02:00
Anton Khirnov
3ba40ebb6c
ivi_common: do not call MC for intra frames when dc_transform is unset
...
CC:libav-stable@libav.org
2013-03-08 08:11:46 +01:00
Anton Khirnov
759001c534
lavc decoders: work with refcounted frames.
2013-03-08 07:38:30 +01:00
Anton Khirnov
deabb52ab4
ivi_common: check that scan pattern is set before using it.
...
Fixes CVE-2012-2791.
CC: libav-stable@libav.org
2012-12-14 07:10:53 +01:00
Anton Khirnov
07acdd651d
ivi_common: use proper logging context in ivi_decode_blocks().
2012-12-14 07:10:48 +01:00
Anton Khirnov
8ab42021f2
ivi_common: make some functions and tables static.
2012-12-14 07:08:38 +01:00
Anton Khirnov
df9b956751
lavc: fix decode_frame() third parameter semantics for video decoders
...
It's got_frame, not data size
2012-12-04 21:45:36 +01:00
Anton Khirnov
594d4d5df3
lavc: add a wrapper for AVCodecContext.get_buffer().
...
It will be useful in the upcoming transition to refcounted AVFrames.
2012-12-04 21:41:59 +01:00
Diego Biurrun
87cdd7c694
ivi_common: Drop unused function parameter from decode_band()
2012-10-26 18:28:38 +02:00
Diego Biurrun
d5c62122a7
Move av_reverse table to libavcodec
...
It is only used in that library.
2012-10-12 20:39:18 +02:00
Janne Grunau
6d556e8327
indeo4/5: remove constant parameter num_bands from wavelet recomposition
...
Fixes bogus uninitialized value compiler and coverity warnings.
2012-10-10 21:24:32 +02:00
Anton Khirnov
ae3da0ae55
indeo4/5: check empty tile size in decode_mb_info().
...
This prevents writing into a too small array if some parameters changed
without the tile being reallocated.
Based on a patch by Michael Niedermayer <michaelni@gmx.at>
Fixes CVE-2012-2800
CC:libav-stable@libav.org
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
2012-09-29 19:13:45 +02:00
Anton Khirnov
5d2170c53b
ivi_common: make ff_ivi_process_empty_tile() static.
...
It's not used outside of ivi_common.c
2012-09-29 19:12:57 +02:00
Michael Niedermayer
b146d74730
indeo4: update AVCodecContext width/height on size change
...
Fixes CVE-2012-2787
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2012-09-29 09:27:32 +02:00
Michael Niedermayer
891918431d
indeo5dec: Make sure we have had a valid gop header.
...
This prevents decoding happening on a half initialized context.
Fixes CVE-2012-2779
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2012-09-29 09:26:30 +02:00
Anton Khirnov
36ef5369ee
Replace all CODEC_ID_* with AV_CODEC_ID_*
2012-08-07 16:00:24 +02:00
Diego Biurrun
4f04f5cc8b
indeo: Make ivi_calc_band_checksum() static, it is only used in one file.
2012-05-20 15:59:30 +02:00
Diego Biurrun
9ccbdc0aca
indeo: Drop unused debug function ivi_check_band().
2012-05-20 15:56:25 +02:00
Kostya Shishkov
cf61aaaca1
indeo: check for invalid motion vectors
2012-05-20 11:19:48 +02:00
Kostya Shishkov
9603738221
indeo: check that band output buffer exists
2012-05-20 11:19:48 +02:00
Kostya Shishkov
23ba1503f2
indeo: clear allocated band buffers
2012-05-20 11:19:48 +02:00
Kostya Shishkov
a6e4ac40a6
indeo: track tile macroblock size
2012-05-20 11:19:48 +02:00
Kostya Shishkov
fe7a37c36f
indeo: check custom Huffman tables for errors
2012-05-20 11:19:47 +02:00
Kostya Shishkov
aa372cf470
factor out common decoding code for Indeo 4 and Indeo 5
2012-05-20 11:19:30 +02:00
Diego Biurrun
b1563d0cf9
ivi_common: Initialize a variable at declaration in ff_ivi_decode_blocks().
...
This simplifies the code a bit and avoids an uninitialized variable warning.
2012-04-20 21:08:34 +02:00
Diego Biurrun
3dde147ff9
cosmetics: Consistently place static, inline and av_cold attributes/keywords.
2012-04-04 14:54:13 +02:00
Martin Storsjö
e96b4a53df
vlc/rl: Add ff_ prefix to the nonstatic symbols
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-02-15 22:06:26 +02:00