Laurent Aimar
4e06acbde4
Fixed a segfault in the DCA decoder with corrupted streams.
...
It happens when the number of channels defined by DCAContext:acmod is lower
than DCAContext:prim_channels. In this case, dca_subsubframe() will call
qmf_32_subbands() using s->channel_order_tab[] entries equal to -1.
Originally committed as revision 22083 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-26 18:50:01 +00:00
Vitor Sessak
4784b0922f
Do not read beyond end of input in EA-TGV. This should avoid FATE test #362
...
result depending on uninitialized data.
FATE result may change for this test.
Originally committed as revision 22082 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-26 18:12:27 +00:00
Michael Niedermayer
cf41a02b1b
Only load the topleft mv/ref when the topright is unavailable.
...
8 cpu cycles faster.
Originally committed as revision 22079 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-26 15:26:11 +00:00
Michael Niedermayer
cf7b67bc40
Remove some useless operations from the code setting left_cbp.
...
maybe 0.5 cpu cycles faster
Originally committed as revision 22078 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-26 15:03:00 +00:00
Michael Niedermayer
59b5370f02
Simplify code to set cbp_*
...
this seems 1 cpu cycle slower even though we practically just remove code.
Speed loss seems caused by the merge of if(left_type), iam commiting this
anyway as i cant imagine this to be anything but compiler messup.
Originally committed as revision 22073 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-26 09:13:40 +00:00
Benoit Fouet
5818418758
Fix typos in ref_index documentation.
...
Originally committed as revision 22072 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-26 08:55:43 +00:00
Michael Niedermayer
747db4e31a
Move init of right side of ref_cache from fill_caches() to init_the_darn_decoder().
...
Originally committed as revision 22071 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-26 03:27:52 +00:00
Michael Niedermayer
77c6edb846
Remove 3 mv_cache zeroing instructions that zeroed the right side.
...
This seems unneeded as nothing seems to ever set it to non zero values.
Originally committed as revision 22070 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-26 02:54:03 +00:00
Michael Niedermayer
8f8497ae78
Remove useless check of the 2 left MBs of a pair being in the same slice.
...
Originally committed as revision 22069 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-26 01:38:12 +00:00
Michael Niedermayer
f57a5dcd4e
Clarify ref_index.
...
Originally committed as revision 22068 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-26 00:51:26 +00:00
Michael Niedermayer
6e2fe0f20a
Remove unneeded line of code from the neighbor setting code in h264.
...
Originally committed as revision 22067 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-26 00:10:35 +00:00
Michael Niedermayer
aa5ee59eee
Simplify code in mv_pred.
...
Not benchmarked as this is petty much just code removial.
Originally committed as revision 22066 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-26 00:08:27 +00:00
Michael Niedermayer
358b5b1a59
Get rid of mb2b8_xy and b8_stride, change arrays organized based on b8_stride to
...
ones based on mb_stride in h264.
about 20 cpu cycles faster overall per MB
Originally committed as revision 22065 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-25 23:44:42 +00:00
Michael Niedermayer
3b606e71c4
svq3 now in working condition, at least vissually, ill let fate tell us
...
if the checksums match
Originally committed as revision 22061 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-25 18:41:48 +00:00
Michael Niedermayer
fc7f7f171f
fix compilation, sorry ive not checked cvslog for a while :(((
...
svq3 decoder does not work yet though but i didnt want to keep compilation
broken longer
Originally committed as revision 22060 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-25 18:39:01 +00:00
Michael Niedermayer
36b54927fd
Dont allocate direct_table 8 times too large.
...
Originally committed as revision 22056 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-25 15:29:12 +00:00
Michael Niedermayer
5e350863cc
Store data in direct_table interleaved.
...
seems 20cpu cycles faster
Originally committed as revision 22055 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-25 15:27:55 +00:00
Michael Niedermayer
013202d720
Simplify intra4x4_pred_mode_cache init.
...
Originally committed as revision 22054 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-25 14:54:31 +00:00
Michael Niedermayer
662a5b2370
Reorder intra4x4_pred_mode so that we can read/write 4 values at once.
...
3-7 cpu cycles faster
Originally committed as revision 22053 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-25 14:26:12 +00:00
Michael Niedermayer
5b0fb5244d
Store intra4x4_pred_mode per row only.
...
about 5 cpu cycles slower in the local code but should be overall faster
due to reduced cache use. (my sample though has too few intra4x4 blocks
for this to be meassureable easily either way)
Originally committed as revision 22052 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-25 14:02:39 +00:00
Michael Niedermayer
c2186cbddc
unroll tiny and trivial loop. Same speed but clearer.
...
Originally committed as revision 22051 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-25 12:51:32 +00:00
Michael Niedermayer
e1c88a2138
Cut the size of mvd_table by yet another factor of 2.
...
The code read/write code itself was 1 cycle faster, overall its
likely more due to cache effects
Originally committed as revision 22048 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-25 04:11:33 +00:00
Michael Niedermayer
d43c192236
Keep mvd_table values of only 2 mb rows.
...
Originally committed as revision 22047 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-25 02:42:25 +00:00
Alex Converse
c4a90caae2
aac: Keep decode_band_types() from eating all padding at the end of a buffer.
...
Due to a shortcoming in the AAC specification, if an all zero buffer is
fed to section data decoding it will never terminate. That means without
a buffer exhaustion check decode_band_types() will consume all input
buffer padding. Worse if a get_bits() implementation that returns zeros
when padding is exhausted is used, the function will never terminate.
The fixes that by added a buffer exhaustion check in the sectioning
decoding loop.
Originally committed as revision 22044 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-24 23:56:52 +00:00
Michael Niedermayer
09ef1ace4b
3rd and hopefully last 100l fix.
...
Originally committed as revision 22041 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-24 22:13:20 +00:00
Michael Niedermayer
3393bff10d
Fix doxy and assert().
...
Originally committed as revision 22040 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-24 22:05:51 +00:00
Michael Niedermayer
377fc38d5d
Try to fix 100l compilation failure on some systems.
...
Originally committed as revision 22039 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-24 21:55:55 +00:00
Michael Niedermayer
b5bd070029
Change mvd_cache & mvd_table to 8bit, this is overall a bit faster
...
for high resolution videos.
about 20cycles faster per MB for cathederal.
Originally committed as revision 22038 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-24 20:43:06 +00:00
Michael Niedermayer
f3ea29bfa3
Extend fill_rectangle() support for 16bit
...
Originally committed as revision 22036 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-24 20:37:58 +00:00
Michael Niedermayer
81b5e4ee92
Calculate mvd without abs()
...
same speed (ask gcc why, i dont know)
Originally committed as revision 22035 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-24 18:50:02 +00:00
Michael Niedermayer
855a1ba5e8
switch back to (amvd>2)+(amvd>32), its 5 cpu cycles faster now.
...
Originally committed as revision 22032 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-24 18:16:48 +00:00
Michael Niedermayer
01b35be14a
Factorize common code from the top of decode_cabac_mb_mvd()
...
10-15 cpu cycles faster.
Originally committed as revision 22029 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-24 18:06:02 +00:00
Michael Niedermayer
6d0155c79c
Replace mvd>2 + mvd>32 by MIN((mvd+28)*17>>9, 2)
...
same speed as far as i can meassure but it might have fewer branches on some
archs.
Idea from x264 / jason
Originally committed as revision 22027 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-24 16:16:08 +00:00
Michael Niedermayer
90332debfe
Replace ad-hoc fill rectangle by fill_rectangle().
...
Originally committed as revision 22025 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-24 13:12:09 +00:00
Kostya Shishkov
d2df291f73
ff_msmpeg4_decode_init() calls ff_h263_decode_init() which calls
...
MPV_common_init(), so calling both is redundant and leads to memory
leaks in WMV3/VC-1 decoder. Thus use only the first function in
WMV3/VC-1 decoder initialization.
Originally committed as revision 22024 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-24 13:11:38 +00:00
Peter Ross
601e74d366
it is not necessary to display the decoder name, as av_log() automatically prints the context
...
Originally committed as revision 22023 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-24 11:51:42 +00:00
Michael Niedermayer
9127a369ad
Replace /2 by faster >>1 as the mvd values are now all positive.
...
Originally committed as revision 22013 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-24 01:57:31 +00:00
Michael Niedermayer
5c34e36a23
Remove unused variable. Seems i forgot to commit this.
...
Originally committed as revision 22012 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-24 01:56:27 +00:00
Jai Menon
8790961d7e
mlp_parser: Fix memleak.
...
ff_combine_frame() is called, which allocates ParseContext->buffer if needed,
so ff_parse_close() must be called to free it.
Patch by jai.
Originally committed as revision 22005 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-23 16:54:05 +00:00
Daniel Verkamp
d962706f96
Cosmetics: break all Makefile lines at 80 columns or less
...
Originally committed as revision 22000 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-23 16:12:30 +00:00
Peter Ross
c8c77d8d97
Use reported_size to truncate final Bink Audio frame
...
Originally committed as revision 21993 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-23 10:28:11 +00:00
Daniel Verkamp
589760c68b
Fix iff demuxer dependencies
...
Originally committed as revision 21992 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-23 08:40:46 +00:00
Daniel Verkamp
3dfd81e64e
Fix vc1 parser dependencies
...
Originally committed as revision 21991 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-23 08:37:04 +00:00
Daniel Verkamp
0802cb85d0
Fix h264 parser dependencies
...
Originally committed as revision 21990 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-23 08:32:29 +00:00
Daniel Verkamp
401903dc69
Fix mpeg4video parser dependencies
...
Originally committed as revision 21989 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-23 08:23:59 +00:00
Daniel Verkamp
5c9b9c990a
Fix wmv2 encoder dependencies
...
Originally committed as revision 21988 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-23 08:16:56 +00:00
Daniel Verkamp
818a4a6465
Fix gif encoder dependencies
...
Originally committed as revision 21986 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-23 08:12:26 +00:00
Daniel Verkamp
fa7252494c
Fix snow encoder dependencies
...
Originally committed as revision 21985 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-23 08:10:01 +00:00
Daniel Verkamp
19ecfb8aeb
Fix svq1 encoder dependencies
...
Originally committed as revision 21984 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-23 08:04:55 +00:00
Kostya Shishkov
60819e694e
10l trocadero: Indeo 5 decoder did not free custom VLCs for macroblock and
...
block decoding at exit, so prevent that memory leak now.
Originally committed as revision 21983 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-23 07:41:29 +00:00