Commit Graph

11172 Commits

Author SHA1 Message Date
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
Kostya Shishkov
4f974de6f6 Decode alpha plane in Bink video
Originally committed as revision 21982 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-23 07:07:54 +00:00
Kostya Shishkov
bf0d54a381 cosmetics: reindent after last commit
Originally committed as revision 21981 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-23 07:01:13 +00:00
Kostya Shishkov
54d4c0de7c Move plane decoding code into separate function in Bink decoder
Originally committed as revision 21980 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-23 07:00:46 +00:00
Kostya Shishkov
ba3e821414 Bink video decoder now can use extradata to detect alpha plane presence
Originally committed as revision 21979 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-23 06:39:23 +00:00
Måns Rullgård
2fc492d842 Declare indeo VLC table storage with correct type
Originally committed as revision 21977 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-23 03:45:51 +00:00
Michael Niedermayer
db8cb47d15 Try to set has_b_frames in codec init if we know everything alraedy.
This fixes some issues with the first few timestamps.

Originally committed as revision 21976 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-23 01:08:54 +00:00
Michael Niedermayer
9855b2e3c8 Move extradata reading code into codec init instead of doing it
in read frame.

Originally committed as revision 21975 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-23 01:07:39 +00:00
Kostya Shishkov
1d6065ad08 Make Bink decoder able to skip alpha plane
Originally committed as revision 21963 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-22 14:59:51 +00:00
Kostya Shishkov
9068f36dcc Macroblock and block Huffman code sets are to be used by both Indeo 4 and
Indeo 5, so make them global and move their initialization to the common place
as well. And fix static VLC initialization, as ff_ivi_create_huff_from_desc()
used old way to do so.

Originally committed as revision 21962 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-22 13:51:32 +00:00