Commit Graph

11537 Commits

Author SHA1 Message Date
David Conrad
0448ef7788 Maybe fix gcc 2.95
Originally committed as revision 22203 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-04 09:25:42 +00:00
Gwenole Beauchesne
11ae0c52b9 Cope with rev 22183:
Reorder indexes in weight tables.

Originally committed as revision 22202 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-04 09:14:19 +00:00
Alex Converse
ab2a302834 AAC: Mark predictor functions av_always_inline.
This results in a 50% speedup on main profile with no increase in binary size.

Originally committed as revision 22196 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-04 04:58:43 +00:00
Alex Converse
65bec42e33 Cosmetics: Re-indent after last commit.
Originally committed as revision 22195 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-04 02:32:48 +00:00
Alex Converse
ca1fa4144f AAC parser: Don't write channels, sample rate, and frame size each frame.
Thanks to backwards compatible HE-AAC signalling these values are unreliable.

Originally committed as revision 22194 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-04 02:30:51 +00:00
Michael Niedermayer
38768cb70a Port Optimizations about *_type init from decode to filter code.
1 cpu cycle faster

Originally committed as revision 22193 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-04 02:00:05 +00:00
Michael Niedermayer
b46b5ac9f8 Optimize *_type init, 1.5 cpu cycles faster.
Originally committed as revision 22192 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-04 01:03:15 +00:00
David Conrad
c72625f299 Delay translating DCT tokens into coefficients until immediately before IDCT
This is generally around 12% faster than the prior method of creating a
linked list for each block as tokens are read, but can be anywhere from
8% to 28% faster depending on file and CPU.

Originally committed as revision 22190 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-03 23:27:43 +00:00
David Conrad
7a095ea6fb Do MC and IDCT in coding (hilbert) order
This increases the slice size to 64 pixels, due to having to decode an
entire chroma superblock row per slice.

This can be up to 6% slower depending on clip and CPU, but is necessary
for future optimizations that gain significantly more than was lost.

Originally committed as revision 22189 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-03 23:27:40 +00:00
David Conrad
35c28d23cb Explictly separate decoding whether fragments are coded by plane
Originally committed as revision 22188 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-03 23:27:37 +00:00
Aurelien Jacobs
ded2100e48 move vp6 huffman table freeing code, out of common vp56 code
Originally committed as revision 22186 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-03 22:29:06 +00:00
Michael Niedermayer
3d9137c883 Reorder indexes in weight tables.
5 cpu cycles faster.

Originally committed as revision 22183 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-03 21:10:08 +00:00
Michael Niedermayer
bd8868e092 Move all context fields that are not used in the mb and block layers
to the end of the structure.
4 cpu cycles faster in 3k cpu cycles

Originally committed as revision 22181 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-03 20:36:56 +00:00
Laurent Aimar
19a9846f3d Fixed DXVA2 H264 hwaccel compilation.
Originally committed as revision 22180 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-03 19:54:12 +00:00
Michael Niedermayer
65f3c029b9 remove unused left_border field from context.
Originally committed as revision 22179 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-03 19:44:27 +00:00
Michael Niedermayer
1a29c6a0bb cosmetic addition of {}
Originally committed as revision 22178 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-03 19:32:50 +00:00
Michael Niedermayer
af2b0df40f Note about luma/chroma_weight tables and their datatype.
Originally committed as revision 22177 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-03 19:31:58 +00:00
Laurent Aimar
a9837b58e1 Fixed overreads in TTA decoder with corrupted bistreams.
Originally committed as revision 22176 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-03 19:31:46 +00:00
Vitor Sessak
0a41faa9a7 Plug some memory leaks in the VP6 decoder
Originally committed as revision 22172 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-03 17:24:32 +00:00
Michael Niedermayer
d7f5e520bf move svq3 specific fields to the end of the context
Originally committed as revision 22171 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-03 16:47:40 +00:00
Gwenole Beauchesne
48bf1325ac Cope with rev 22169 change:
Merge weight & offset tables.

Originally committed as revision 22170 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-03 15:23:22 +00:00
Michael Niedermayer
70118abd68 Merge weight & offset tables, 15 cpu cycles faster.
Originally committed as revision 22169 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-03 14:41:43 +00:00
Michael Niedermayer
72f86ec013 Simplify implicit_weight table init.
Originally committed as revision 22168 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-03 10:57:38 +00:00
Peter Ross
54063e37c1 Perform coefficient transformations in Bink Audio DCT decoder (issue1770)
Originally committed as revision 22167 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-03 09:51:56 +00:00
Peter Ross
f087881207 use intended const syntax
Originally committed as revision 22165 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-03 09:38:09 +00:00
Michael Niedermayer
f57880d244 Another 3 useless zeroing instructions.
Originally committed as revision 22162 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-03 02:20:48 +00:00
Michael Niedermayer
16b802fe93 Load the whole left side of mv&ref only when needed.
30 cpu cycles faster

Originally committed as revision 22161 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-03 01:38:27 +00:00
Carl Eugen Hoyos
741a17e6b4 Support B-frames when decoding MPEG-4 with VDPAU hardware acceleration.
Based on a patch by NVIDIA.

Originally committed as revision 22160 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-03 00:09:57 +00:00
Carl Eugen Hoyos
bf9d70d5e4 Pass correct buffer-pointer and buffer-size to hardware accelerated
decoders when decoding packed B-frames.

Originally committed as revision 22149 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-02 17:12:41 +00:00
Måns Rullgård
b781cc1282 Make lsp a separate configurable and select it from codecs needing it
Originally committed as revision 22143 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-02 03:16:27 +00:00
Michael Niedermayer
145061a176 Fix a bunch of bugs ive introduced recently that broke threaded decoding.
might also fix issue1788

Originally committed as revision 22141 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-02 02:24:37 +00:00
Vitor Sessak
fe89ccd162 Fix spelling in comment
Originally committed as revision 22137 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-01 20:42:13 +00:00
Vitor Sessak
efb0102fef Add commented-out unoptimized code to improve readability
Originally committed as revision 22136 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-01 19:56:51 +00:00
Carl Eugen Hoyos
8ef4f92b0d Process packed bitstream also for VDPAU.
Originally committed as revision 22131 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-01 16:52:35 +00:00
Aurelien Jacobs
bc99737689 revert r22112 which broke playback of cathedral-beta2-400extra-crop-avc.mp4
Originally committed as revision 22125 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-01 00:22:43 +00:00
Michael Niedermayer
8897b247a5 Remove some unneeded fill_rectangle() for 16x16 blocks.
Originally committed as revision 22124 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-28 23:54:24 +00:00
Carl Eugen Hoyos
a882cf9c21 Make av_build_filter static (and remove av_): It is not used outside resample2.c.
Originally committed as revision 22118 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-28 19:58:26 +00:00
Carl Eugen Hoyos
406aa93fd0 Make av_get_bit_rate() static and remove av_, the function is only used
inside libavcodec/utils.c.

Originally committed as revision 22117 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-28 19:05:51 +00:00
Carl Eugen Hoyos
88f83607b6 Include libxvid_internal.h: It contains the prototype for av_tempfile().
Originally committed as revision 22116 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-28 19:03:38 +00:00
Carl Eugen Hoyos
30f7682404 Make the following functions static (and remove ff_), they are only used
inside libxvidff.c:
ff_xvid_encode_init(), ff_xvid_encode_frame(), ff_xvid_encode_close()

Originally committed as revision 22115 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-28 18:57:18 +00:00
Carl Eugen Hoyos
5dfa637cca Make function get_channel_name() static: It is only used in audioconvert.c.
Originally committed as revision 22114 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-28 18:50:56 +00:00
Janusz Krzysztofik
7c994c366c Process picture aspect ratio changes in H.264.
This fixes playback of such streams with ffplay (but does not affect
current ffmpeg).

Patch by Janusz Krzysztofik, jkrzyszt A tis D icnet D pl

Originally committed as revision 22112 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-28 18:33:33 +00:00
Carl Eugen Hoyos
4443c0e9a9 Include internal.h and imgconvert.h, they contain the prototypes for the
following functions:
ff_is_hwaccel_pix_fmt(), ff_set_systematic_pal(), ff_fill_linesize(),
ff_fill_pointer(), ff_get_plane_bytewidth()

Originally committed as revision 22106 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-28 03:52:10 +00:00
Carl Eugen Hoyos
ccd17ea13c Include msrledec.h: It contains the prototype for ff_msrle_decode().
Originally committed as revision 22105 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-28 03:41:59 +00:00
Carl Eugen Hoyos
862715d3fe Include atrac.h: It contains the prototypes for atrac_generate_tables()
and atrac_iqmf().

Originally committed as revision 22104 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-28 03:39:11 +00:00
Carl Eugen Hoyos
c6e1599b8a Include mpegaudiodecheader.h: It contains the prototype for
ff_mpegaudio_decode_header().

Originally committed as revision 22103 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-28 03:27:10 +00:00
Carl Eugen Hoyos
770128c448 Remove declaration of unused variables.
Originally committed as revision 22102 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-28 03:02:25 +00:00
Carl Eugen Hoyos
dacd7842d5 Include h263_parser.h: It contains the prototype for
ff_h263_find_frame_end().

Originally committed as revision 22101 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-28 02:44:36 +00:00
Carl Eugen Hoyos
dd6c2534ed Include mpeg4video.h: Needed for declaration of ff_mpeg4_decode_picture_header.
Originally committed as revision 22100 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-28 02:41:20 +00:00
Reimar Döffinger
eb285cfe8e Fix avcodec_align_dimensions to return values suitably aligned for FLV decoding
with SSE and add a avcodec_align_dimensions2 taht returns the stride alignment
requirements independently from doing the width/height padding.

Originally committed as revision 22095 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-27 21:13:22 +00:00
Jindřich Makovička
8590e6d529 Strides in Indeo 5 reconstruction filter should be signed,
this way it works on 64-bit archs too.

Patch by Jindřich Makovička ($lastname without last letter and háček, gmail)

Originally committed as revision 22093 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-27 14:08:06 +00:00
Kostya Shishkov
e322aacedd Encapsulate VLC information needed for decoding blocks and macroblocks in
Indeo 5 into single structure IVIHuffTab and factorize code using it.

Based on patch by Maxim (max_pole at German GMX)

Originally committed as revision 22092 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-27 12:32:31 +00:00
Kostya Shishkov
4982a77e56 Make it clear that ff_ivi_init_static_vlc() does not need arguments
Originally committed as revision 22091 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-27 12:12:56 +00:00
Michael Niedermayer
ce9c691616 Merge h->slice_table[left_xy[0/1] ] checks, 4 cpu cycles speedup
Originally committed as revision 22086 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-27 04:09:48 +00:00
Michael Niedermayer
82fb5bb2ee Split *_type setting up, 4 cpu cycles faster.
Originally committed as revision 22085 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-27 03:46:16 +00:00
Zhou Zongyi
821fe7f3e6 Optimize (amvd>2)+(amvd>32), about 1 cpu cycles faster.
patch by Zhou Zongyi @ zhouzy () os punkt pku dot edu speck cn

Originally committed as revision 22084 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-26 22:45:35 +00:00
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
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
Kostya Shishkov
bb29fee3a6 Make Bink decoder to stop decoding planes after all bits are used.
This prevents crashes during decoding grayscale Bink files like
samples from Impossible Creatures game demo.

Originally committed as revision 21961 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-22 12:35:12 +00:00
Kostya Shishkov
fb030bd046 Correct bundle lengths calculation for small Bink files.
This fixes issue 1764.

Originally committed as revision 21959 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-22 12:20:49 +00:00
Kostya Shishkov
9b3c455c50 ARM: NEON scalarproduct_int16 and scalarproduct_and_madd_int16
Patch by Kostya, minor fixes by me.

Originally committed as revision 21958 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-22 12:20:31 +00:00
Carl Eugen Hoyos
f51674ff5d Fix compilation for --enable-version3 --enable-libopencore_amrwb (only).
Originally committed as revision 21956 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-22 09:47:12 +00:00
Måns Rullgård
a87b2f6df4 ARM: add missing preserve8 directives
Originally committed as revision 21952 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-22 00:34:05 +00:00
Måns Rullgård
39261cd8d9 get/show_bits() can read up to MIN_CACHE_BITS bits
The limit for get/show_bits_long() to use get/show_bits() directly
should be MIN_CACHE_BITS, not 17.

Originally committed as revision 21951 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-21 23:28:24 +00:00
Michael Niedermayer
acbb378d1d Fix timestamp association for mpeg2 field pictures.
Fixes /MPlayer/incoming/codec_copy_fails_vob_to_mpeg-ts/codec_copy_fails_vob_to_mpeg-ts.vob

Originally committed as revision 21949 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-21 23:22:51 +00:00
Måns Rullgård
7cd7d19e86 Deobfuscate LE SHOW_[SU]BITS; these are simple sign/zero-extend
Originally committed as revision 21948 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-21 21:48:40 +00:00
Måns Rullgård
48960b8f24 Add zero_extend() function
Originally committed as revision 21947 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-21 21:48:37 +00:00
avcoder
0cb17649d8 Remove unused variable mb_xy.
Patch by avcoder, ffmpeg gmail

Originally committed as revision 21945 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-21 19:32:47 +00:00
Vitor Sessak
4fe3edaadf AMR-NB floating-point based decoder.
Code produced during SoC by Robert Swain and Colin McQuillan.

Originally committed as revision 21943 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-21 18:01:56 +00:00
Diego Biurrun
dd3475682e Remove unused variable, fixes warnings of the type:
libavcodec/h264.h:816: warning: unused variable `mb_xy'

Originally committed as revision 21941 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-21 15:29:17 +00:00
Måns Rullgård
769c497565 indent
Originally committed as revision 21940 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-21 15:11:59 +00:00
Måns Rullgård
4c4e746566 Avoid negative shifts in build_table()
A shift by a negative amount has undefined behaviour.  Even though
the result of this shift is never used, the shift itself could
cause an exception of some kind.

Originally committed as revision 21939 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-21 15:11:57 +00:00
Kostya Shishkov
342c7dfdbb Bink video decoder
Originally committed as revision 21937 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-21 13:28:46 +00:00
Måns Rullgård
d68b27a95d VC1: fix missing include h263.h
Originally committed as revision 21932 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-21 02:46:44 +00:00
David Conrad
6cb35b45e6 Simplify determing whether fragments are coded
No measurable speed difference

Originally committed as revision 21931 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-21 00:11:01 +00:00
David Conrad
a89264761f Handle Theora's continued runs in superblock coding.
This doesn't really matter yet since 4:2:0 1080p has only 3060 superblocks,
but larger resolutions or 4:4:4 1080p could hit this case.

Originally committed as revision 21930 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-21 00:10:58 +00:00
David Conrad
855c720c86 Decode fully coded superblocks in the same manner as partial superblocks and qpi
No speed difference, but it will simplify the special 4129 case.

Originally committed as revision 21929 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-21 00:10:54 +00:00
David Conrad
ecb51b25bb Make the special 4129 case for long-run bit strings a #define and explain it
Originally committed as revision 21928 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-21 00:10:51 +00:00
David Conrad
33dbc1b7ca Use memset to set the runs partially coded superblocks
Much faster for long runs (e.g. nearly uncoded frames), slightly faster
for the general case.

Originally committed as revision 21927 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-21 00:10:47 +00:00
Måns Rullgård
e4a35244fa Replace log2f(10) with a constant
Originally committed as revision 21924 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-20 20:13:48 +00:00
Vitor Sessak
c4f267ab75 Free encoder extradata in avcodec_close(). Should fix several small memory
leaks when encoding (at least for asv, wma and aac).

Fix also issue 1577.

Originally committed as revision 21923 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-20 18:28:11 +00:00
Ramiro Polla
da2a5feaea x86_fft.o depends on MMX and FFT.
Originally committed as revision 21921 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-20 15:39:27 +00:00
Stefan Gehrer
cbdcf479ce remove tables of codebook vector values which are contained in
another table

Originally committed as revision 21918 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-20 12:32:30 +00:00
Kostya Shishkov
4689ac41e9 16l trocadero: don't forget to free frame data buffer in APE decoder
Originally committed as revision 21910 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-19 22:23:55 +00:00
Daniel Verkamp
7fa78f49f0 msmpeg4v* encoders depend on h263dec
Originally committed as revision 21907 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-19 21:34:50 +00:00
Daniel Verkamp
8e25a3d637 Declare WMV1 decoder dependencies
Originally committed as revision 21906 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-19 21:21:04 +00:00
Daniel Verkamp
77ce6653d2 Declare CAF demuxer dependency on mpegaudio
Originally committed as revision 21904 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-19 21:07:46 +00:00
Daniel Verkamp
e0ae359115 Fix compilation of binkaudio_rdft when dct is disabled
Originally committed as revision 21903 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-19 20:51:12 +00:00
Stefan Gehrer
3a201bd04f remove a Huffman table from WMA which also exists in AAC
Originally committed as revision 21902 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-19 20:42:55 +00:00
Vitor Sessak
f1c8e5aa94 Add missing dependency of TwinVQ
Originally committed as revision 21898 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-19 17:23:00 +00:00
Stefan Gehrer
cc01ab903e remove ivi5_scans8x8[0], it duplicates ff_zigzag_direct
Originally committed as revision 21897 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-19 17:17:20 +00:00
Kostya Shishkov
aa170ed625 cosmetics: reindent after last commit
Originally committed as revision 21895 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-19 14:06:12 +00:00
Kostya Shishkov
965828bb66 Since WavPack chunk can contain more samples than FFmpeg is guaranteed to
hold, decode it in several iterations outputting as many samples as possible.

Originally committed as revision 21894 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-19 14:05:41 +00:00
Thilo Borgmann
245d5a48ef Add the dependency for mpeg4audio.o of the ALS decoder.
Originally committed as revision 21893 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-19 08:26:35 +00:00
Thilo Borgmann
a8c09ff2d8 Do sequential bit reading outside of []-operators.
Originally committed as revision 21892 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-19 08:07:02 +00:00
Michael Niedermayer
f4ce853125 get rid of an if() 1 cpu cycle faster.
Originally committed as revision 21889 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-19 03:10:26 +00:00
Michael Niedermayer
e69bfde6b2 Get rid of a local variable, 10 cpu cycles faster.
Originally committed as revision 21888 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-19 02:37:11 +00:00
Michael Niedermayer
a305449df6 Move abs() from decode_cabac_mb_mvd() to the code that writes mvd_cache.
4-8 cycles faster

Originally committed as revision 21887 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-18 23:37:48 +00:00
Alex Converse
8d63712486 Add some AAC buffer overread checks.
Originally committed as revision 21886 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-18 23:06:56 +00:00
Stefan Gehrer
3cc3581dc0 fix intra prediction modes with inter-MB neighbors,
the old sample clips are in violation of the 2006 spec

Originally committed as revision 21883 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-18 18:23:48 +00:00
Måns Rullgård
19769ece3b H264: use alias-safe macros
This eliminates all aliasing violation warnings in h264 code.
No measurable speed difference with gcc-4.4.3 on i7.

Originally committed as revision 21881 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-18 16:24:31 +00:00
Michael Niedermayer
024bf79fe0 Simplify deblock_left/top condition for deblocking_filter=2
Originally committed as revision 21876 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-18 12:37:43 +00:00
Michael Niedermayer
90a5849efd Speedup decode_cabac_field_decoding_flag() by 9 cpu cycles.
Originally committed as revision 21875 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-18 12:13:21 +00:00
Måns Rullgård
5e46be96f8 Move NEG_[US]SR32 macros to mathops.h
Originally committed as revision 21873 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-17 23:58:59 +00:00
Thilo Borgmann
dc9e57a878 Fix sizeof()-statement to use the actual pointer type.
Originally committed as revision 21872 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-17 23:26:48 +00:00
Thilo Borgmann
cd09284924 Fix wrong buffer allocation for MCC in ALS.
Originally committed as revision 21871 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-17 22:53:25 +00:00
Alex Converse
fd10543ef2 get_bits: Fix spelling and grammar in GET_VLC() comment.
Originally committed as revision 21868 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-17 21:20:43 +00:00
Måns Rullgård
1e2245c29b 10l: remove stray '(' I don't know where it came from
Originally committed as revision 21867 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-17 21:04:56 +00:00
Måns Rullgård
40d1122752 Use LOCAL_ALIGNED macro for local arrays
Originally committed as revision 21866 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-17 20:36:20 +00:00
Måns Rullgård
d96cd42969 Add LOCAL_ALIGNED() macro for declaring aligned local arrays
Originally committed as revision 21864 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-17 20:36:12 +00:00
Måns Rullgård
2480c390bd Simplify some declarations of aligned arrays
If DECLARE_ALIGNED_16 works on uint64_t it will work smaller types too.

Originally committed as revision 21863 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-17 20:36:10 +00:00
Michael Niedermayer
69a28f3e2b Move predict_field_decoding_flag() from h264.h to .c as its only used there and belongs
there as well.

Originally committed as revision 21861 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-17 02:25:05 +00:00
Michael Niedermayer
69cc31832f Move check for and call of predict_field_decoding_flag() from the mb code to
the row code. This function would only be needed on a MB basis for MBAFF+FMO

Originally committed as revision 21860 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-17 02:14:02 +00:00
Michael Niedermayer
59f733d1b1 2x faster ff_h264_init_cabac_states(), 4k cpu cycles less.
Sadly this is just per slice so the speedup with normal files should be negligible.

Originally committed as revision 21859 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-16 23:43:08 +00:00
Thilo Borgmann
114315994b Limit the Rice parameter used for progressive decoding in ALS.
Originally committed as revision 21849 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-16 14:48:01 +00:00
James Darnley
85207e38dc Add lsp.o as a dependency for wmavoice. This fixes a compilation error when
you disable lots of stuff (in particular other voice codecs) but leave
wmavoice enabled.

Patch by James Darnley <$firstname dot $lastname at gmail dot com>.

Originally committed as revision 21848 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-16 14:33:13 +00:00
Peter Ross
cbba8fec23 Support <8-bit ILBM uncompressed bitmaps
Originally committed as revision 21846 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-16 09:33:59 +00:00
Michael Niedermayer
37a9719a97 2 cpu cycles faster context calculation for decode_cabac_intra_mb_type()
Originally committed as revision 21845 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-16 02:51:37 +00:00
Michael Niedermayer
5806e8cd1f Drop a few redundant slice_num checks.
Originally committed as revision 21844 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-16 00:09:30 +00:00
Michael Niedermayer
053074276b Drop compute_mb_neighbors() and move fill_decode_neighbors() up to take its
role.
Should be faster as this is a strict code removial.

Originally committed as revision 21843 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-15 23:04:07 +00:00
Michael Niedermayer
c1bb66ac19 Split setting neighboring MBs from fill_decode_caches()
no speed change.

Originally committed as revision 21842 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-15 22:07:02 +00:00
Michael Niedermayer
cf55f59d5e Simplify decode_cabac_mb_intra4x4_pred_mode().
same speed

Originally committed as revision 21839 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-15 19:22:09 +00:00
Michael Niedermayer
f4060611e9 Merge decode_cabac_mb_type_b() into calling code.
This avoids a conditional branch and is about 3 cpu cyclues faster.

Originally committed as revision 21838 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-15 19:20:49 +00:00
Maxim Poliakovski
6713b6b120 Remove outdated comment.
Patch by Maxim, max_pole gmx de

Originally committed as revision 21837 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-15 17:37:38 +00:00
Stefan Gehrer
35122bd93e add heuristic to discern the old sample clips from streams encoded
with rm52j encoder, a marker_bit has been added in the I-Frame syntax

Originally committed as revision 21836 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-15 16:43:45 +00:00
Stefan Gehrer
026b9d3c5a avoid using DECLARE_ALIGNED on stack variable as suggested by Reimar
Originally committed as revision 21835 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-15 16:37:13 +00:00
Alex Converse
8958445898 AAC: Mark che_configure() as av_cold.
It is also only called when the output configuration is not locked.

Originally committed as revision 21834 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-15 16:29:46 +00:00
Alex Converse
ff98c17cba AAC: Mark functions that are only called when the output configuration is not locked as av_cold.
Originally committed as revision 21833 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-15 16:19:46 +00:00
Peter Ross
005caa3486 IFF bitmap n-bit color support
Originally committed as revision 21831 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-15 11:26:35 +00:00
Michael Niedermayer
24006f59cb 10l ;; gcc 2.95 compilation fix by mike
Originally committed as revision 21830 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-15 09:11:00 +00:00
Michael Niedermayer
cbfcde9f52 10l use pack16to32(), should fix big endian h264 failures.
Originally committed as revision 21829 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-15 01:24:50 +00:00
Michael Niedermayer
64dd1b0a1d Merge the single line function decode_cabac_mb_transform_size()
into the calling code.
8 cpu cycles faster

Originally committed as revision 21828 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-15 01:04:07 +00:00
Michael Niedermayer
8b38d10761 indent
Originally committed as revision 21827 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-14 23:10:02 +00:00
Michael Niedermayer
f4b8b82514 Merge decode_cabac_mb_dqp() with surronding code.
~20 cpu cycles faster

Originally committed as revision 21826 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-14 23:06:25 +00:00
Michael Niedermayer
94cb599443 Drop if(0) code.
Originally committed as revision 21825 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-14 22:59:19 +00:00
Michael Niedermayer
a59b9ee33d Set sub_mb_type in direct_cache instead of just the direct flag.
Simpler, cleaner and faster.

Originally committed as revision 21822 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-14 16:51:31 +00:00
Michael Niedermayer
2dc380ca8e Store sub_mb_type in direct_cache/direct_table.
This is equal complexity but could be more usefull.

Originally committed as revision 21821 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-14 14:41:27 +00:00
Michael Niedermayer
3d2c3ef4b4 Remove slice_table checks from decode_cabac_mb_cbp_luma() and set left/top_cbp so
these checks arent needed.

Originally committed as revision 21819 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-14 02:08:48 +00:00
Michael Niedermayer
056c502155 Revert r21814
Log:
	h264: Fix pointer warnings by removing redundant [0]

	Fixes:
	h264.h:1222:38: warning: initialization from incompatible pointer type
	h264.h:1299:38: warning: initialization from incompatible pointer type
	h264.h:1314:42: warning: initialization from incompatible pointer type

Reason: breaks h264 decoding & fate

Originally committed as revision 21818 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-14 02:04:41 +00:00
Michael Niedermayer
6e7c397b5c Cosmetics, vertical align.
Originally committed as revision 21817 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-14 01:14:05 +00:00
Michael Niedermayer
e916764675 Direct temporal skiped MBs dont need fill_decode_caches() at all so dont call it
for them.

Originally committed as revision 21816 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-13 22:53:44 +00:00
Alexander Strange
78998bf217 h264: Remove unused variables.
Originally committed as revision 21815 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-13 21:09:38 +00:00
Alexander Strange
677dab59cb h264: Fix pointer warnings by removing redundant [0]
Fixes:
h264.h:1222:38: warning: initialization from incompatible pointer type
h264.h:1299:38: warning: initialization from incompatible pointer type
h264.h:1314:42: warning: initialization from incompatible pointer type

Originally committed as revision 21814 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-13 21:08:17 +00:00
Alexander Strange
cd12c37729 Fix integer overflow warnings in h264.h
Fixes:
h264.h: In function 'fill_filter_caches':
h264.h:1216:73: warning: integer overflow in expression
h264.h:1307:81: warning: integer overflow in expression

Originally committed as revision 21813 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-13 20:57:13 +00:00
Michael Niedermayer
bb770c5b52 Merge (IS_SKIP(mb_type) || IS_DIRECT(mb_type)
Originally committed as revision 21812 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-13 20:13:54 +00:00
Michael Niedermayer
2e4362af14 Skiped MBs dont need the cbp stuff so skip initing that.
Originally committed as revision 21811 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-13 20:13:10 +00:00
Thilo Borgmann
65760304bc Reindent a line.
Originally committed as revision 21810 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-13 19:59:53 +00:00
Michael Niedermayer
e2b28acf89 Also skip direct/mvd_cache init for skiped blocks.
Odd thing is i thought ive tryed this already and it failed previously.

Originally committed as revision 21809 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-13 19:39:18 +00:00
Michael Niedermayer
cb9285a246 Move more code under if(!IS_DIRECT(mb_type)).
Originally committed as revision 21806 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-13 19:00:51 +00:00
David Conrad
161e8cf42c Move CODEC_FLAG_GRAY check to outer loop
Originally committed as revision 21805 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-13 18:59:25 +00:00
David Conrad
7c2e31d1f0 Move branch based on custom mode outside the loop
Originally committed as revision 21804 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-13 18:59:21 +00:00
David Conrad
eb691ef219 Directly check whether a fragment is coded for 4MV mode instead of iterating
through the entire coded fragment list.

Originally committed as revision 21803 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-13 18:55:27 +00:00
David Conrad
15675ce609 Eliminate fragment -> macroblock mapping array
Originally committed as revision 21802 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-13 18:55:24 +00:00
David Conrad
ea67614457 Eliminate macroblock -> fragment mapping array
Originally committed as revision 21801 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-13 18:55:21 +00:00
David Conrad
19cd517dbf Eliminate superblock <-> macroblock mapping array
Originally committed as revision 21800 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-13 18:55:17 +00:00
Thilo Borgmann
25608328af Support arithmetic decoding in ALS.
Originally committed as revision 21799 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-13 18:24:13 +00:00
Michael Niedermayer
f2b3763736 Skip some more code that isnt needed for direct MBs.
Originally committed as revision 21798 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-13 18:23:46 +00:00
Francesco Lavra
7df8af6385 Fix reading beyond buffer end on RA144Context.lpc_tables.
Patch by Francesco Lavra (francescolavra -at- interfree -dot- it)

Originally committed as revision 21796 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-13 17:42:58 +00:00
Michael Niedermayer
5ca43c25f6 Move setting MB_TYPE_L0L1 for direct MBs up, this is simpler.
Originally committed as revision 21794 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-13 15:57:49 +00:00
Michael Niedermayer
da452acac6 Dont calculate any surrounding MVs for temporal MBs
Originally committed as revision 21793 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-13 15:30:27 +00:00
Michael Niedermayer
5134ad53ed Simplify if()
Originally committed as revision 21791 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-13 13:28:04 +00:00
Michael Niedermayer
752cc0dcb2 Init sub_mb_type cleanly.
Originally committed as revision 21790 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-13 13:14:07 +00:00
Michael Niedermayer
923bcb4048 100l Forgoten hunk.unbreak compile before someone notices.
Originally committed as revision 21789 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-13 13:04:11 +00:00
Michael Niedermayer
af0d6581e1 Restructure spatial direct MV generation so that the zero predictior shortcut
is closer at the top.
50-130 cpu cycles faster depending on which kind of direct MBs are meassured.

Originally committed as revision 21788 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-13 13:02:25 +00:00
Michael Niedermayer
edb4df436f Split spatial and temporal direct MV generation.
A little  faster and needed for future optimizations.
This sadly leads to some code duplication (which i hope i can factor out
again after the optimizations on the direcr mv code are done)

Originally committed as revision 21787 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-13 03:46:51 +00:00
Ramiro Polla
3beb81e744 Fix compilation with --enable-libgsm on Gentoo and OpenSUSE.
Patch by Ramiro

Originally committed as revision 21786 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-13 03:43:10 +00:00
Michael Niedermayer
812bfd7b44 Special case for spatial direct MV predictor being 0.
a little less than 200 cpu cycles faster with the cathedral sample.

Originally committed as revision 21785 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-13 02:47:41 +00:00
Michael Niedermayer
828cfff63d Pack MVs together from the begin for spatial direct, this simplifies the code
and is a bit faster (5-10 cpu cycles depending on what is meassured).

Originally committed as revision 21784 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-13 02:20:56 +00:00
Michael Niedermayer
02e8c5f0a5 Dont drop B frames without last_picture.
Fixes issue1722

Originally committed as revision 21783 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-12 23:28:33 +00:00
David Conrad
b7098cc153 Special case VP5/6 chroma alignment on x86 as well
Originally committed as revision 21782 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-12 22:01:42 +00:00
David Conrad
735acf567c Don't pre-calculate first_pixel
3.6% faster on Elephants_Dream_HD-q7-aq7.ogg on my penryn

Originally committed as revision 21781 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-12 22:01:38 +00:00
David Conrad
a8de390163 Implement CODEC_CAP_DRAW_HORIZ_BAND for VP3 decoder
Originally committed as revision 21780 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-12 22:01:35 +00:00
David Conrad
621f9a40b1 Cosmetics: reindent
Originally committed as revision 21779 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-12 22:01:32 +00:00
David Conrad
256c0662ef Do loop filter per-row rather than per-frame
3% faster on Elephants_Dream_HD-q7-aq7.ogg on my penryn

Originally committed as revision 21778 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-12 22:01:29 +00:00
David Conrad
fe3135564a Move apply_loop_filter above render_slice, it'll be used by the latter soon
Originally committed as revision 21777 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-12 22:01:25 +00:00
David Conrad
ea3c2d5393 Export Theora colorspace info if present
Originally committed as revision 21776 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-12 22:01:22 +00:00
David Conrad
337f5c6e30 Theora 3.4 doesn't exist; these fields were misunderstandings of the spec
Originally committed as revision 21775 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-12 22:01:18 +00:00
David Conrad
45c3c92576 Remove unused code that's moved elsewhere
Originally committed as revision 21774 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-12 22:00:29 +00:00
Michael Niedermayer
3566042a0d Try to support truncated h264 frames mixed with mpeg pes headers in mkv.
Fixes issue1585

Originally committed as revision 21772 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-12 19:25:23 +00:00
Reimar Döffinger
9f1d760a27 Use int8_t instead of char, the signedness of char can differ between systems.
Originally committed as revision 21771 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-12 18:18:35 +00:00
Ronald S. Bultje
fa65584f12 WMAVoice decoder.
Originally committed as revision 21770 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-12 14:22:41 +00:00
Måns Rullgård
b5ab9b59e0 Fix build with --disable-mdct
Originally committed as revision 21764 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-11 23:40:45 +00:00
Kostya Shishkov
94dde5c1ec Move 'chksum' declaration to the only block where that variable is used
Originally committed as revision 21753 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-11 07:59:24 +00:00
Kostya Shishkov
f7d649185b Move band checksum verifying into preprocessor condition, so compiler won't
complain about missing function prototype.

Originally committed as revision 21752 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-11 07:54:40 +00:00
Alex Converse
1edea057dd Output the first AAC frame. This is needed for SBR conformance.
Originally committed as revision 21739 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-10 14:51:57 +00:00
David Conrad
19530266a5 Enable SSE2 (put|avg)_pixels_16_sse2
SVQ1 chroma has been special-cased aligned to 16-bytes since at least r15466
Other architectures also assume 16-byte alignment here too but set STRIDE_ALIGN
to 16.

Originally committed as revision 21736 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-10 02:02:06 +00:00
Måns Rullgård
41c2bd0a26 ARMv6 optimised pix_sum
Originally committed as revision 21705 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-09 16:13:52 +00:00
Måns Rullgård
66ec243d95 ARMv6 optimised pix_norm1
Originally committed as revision 21704 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-09 16:13:49 +00:00
Måns Rullgård
0c28474c92 ARMv6 optimised sse16
Originally committed as revision 21703 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-09 16:13:45 +00:00
Måns Rullgård
3132614305 ARMv6 optimised diff_pixels
Originally committed as revision 21702 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-09 16:13:41 +00:00
Måns Rullgård
f73a626ae4 ARMv6 optimised get_pixels
Originally committed as revision 21701 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-09 16:13:38 +00:00
Måns Rullgård
d2578ff9f1 ARMv6 optimised pix_abs8
Originally committed as revision 21700 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-09 16:13:34 +00:00
Måns Rullgård
74cc33c235 ARMv6 optimised pix_abs16_y2
Originally committed as revision 21699 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-09 16:13:31 +00:00
Måns Rullgård
39a760f678 ARMv6 optimised pix_abs16_x2
Originally committed as revision 21698 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-09 16:13:29 +00:00
Måns Rullgård
e6056a9008 ARMv6 optimised pix_abs16
Originally committed as revision 21697 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-09 16:13:26 +00:00
Måns Rullgård
38e016a7c9 ARMv6 optimised put_pixels functions except xy2 variants
Originally committed as revision 21696 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-09 16:13:21 +00:00
Kostya Shishkov
5bebe94d86 Indeo 5 decoder
Originally committed as revision 21695 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-09 07:55:07 +00:00
Michael Niedermayer
daaf6e3e9e Reorder and factorize mb_type ifs, 1 cpu cycle faster and simpler.
Originally committed as revision 21694 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-09 00:19:03 +00:00
Michael Niedermayer
1be49ce54b Set partitioning to 16x16 for spatial direct MBs with mixed interlacing.
11cylcles slower MV generation
98cycles faster MC

Originally committed as revision 21691 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-08 17:25:50 +00:00
Michael Niedermayer
3babc711d8 Detect spatial direct MBs partitioned smaller than 16x16 that can be partitioned
as 16x16 (except ones changing interlacing relative to the colocated MB).
20 cycles slower during MV generation
175 cycles faster during MC

Originally committed as revision 21690 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-08 16:23:05 +00:00
Michael Niedermayer
8b9eb2dfec Detect equal 4x4 blocks in spatial direct MBs.
19 cycles slower MV generation
575 cycles faster MC

Originally committed as revision 21689 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-08 13:05:24 +00:00
Michael Niedermayer
8a3b90686d Remove an apparently unneeded && !FRAME_MBAFF.
This should speed the affected cases (MBAFF temporal direct MBs) up.

Originally committed as revision 21686 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-08 04:24:50 +00:00
Michael Niedermayer
542d4a756a Branchless calculation of ref_offset.
7 cpu cycles faster.

Originally committed as revision 21685 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-08 03:22:17 +00:00
Michael Niedermayer
fb70c63f70 Remove incorrect fixme, i see no case that is missing.
Originally committed as revision 21684 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-08 02:10:59 +00:00
Michael Niedermayer
35c8b9c094 Replace call to pred_motion() in direct spatial mv pred by code
and simplify cases that cannot happen away.
8 cpu cycles faster

Originally committed as revision 21683 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-08 02:09:27 +00:00
Michael Niedermayer
b317567cf4 Change xvid/divx/lavc build variables to be consistent to x264_build.
Originally committed as revision 21682 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-08 00:43:15 +00:00
Michael Niedermayer
055a6aa76a Set x264_build so that checks are simpler.
Originally committed as revision 21681 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-08 00:08:05 +00:00
Michael Niedermayer
3a06e8647f Ooops, 10l forgot to commit h264.h.
Originally committed as revision 21680 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-07 23:15:53 +00:00
Michael Niedermayer
3b9e61e45f Zero a/b only in the branch where they need to be zeroed.
Originally committed as revision 21679 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-07 22:58:03 +00:00
Michael Niedermayer
f28a2656c3 Merge mv&ref related code for spatial direct MV code.
a bit more than 10 cpu cycles faster.

Originally committed as revision 21678 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-07 21:53:55 +00:00
Michael Niedermayer
0a8dca8765 Precalculate a few variables for direct mv prediction for interlaced MBs.
Originally committed as revision 21677 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-07 21:09:09 +00:00
Michael Niedermayer
464baa6650 Set direct MB partitioning for 16x8 and 8x16 colocated MBs to the respective true partitioning.
Originally committed as revision 21675 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-07 17:40:22 +00:00
Michael Niedermayer
e8d964fa52 Factorize setting sub_mb_type out.
Originally committed as revision 21674 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-07 17:15:17 +00:00
Michael Niedermayer
668fd14287 Remove FIXMEs for cases that are disallowed by the spec.
Originally committed as revision 21669 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-07 15:13:56 +00:00
Michael Niedermayer
1c3ce2cd3e Check direct_8x8_inference_flag.
Originally committed as revision 21668 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-07 15:12:37 +00:00
Michael Niedermayer
33a6c0c9fe Skip the fill_colmap() case thats for MBAFF if we dont have an MBAFF frame.
Originally committed as revision 21667 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-07 14:55:59 +00:00
Michael Niedermayer
9873ae0d44 Fix CAVLC+8x8DCT+MBAFF loopfiltering.
Fixes issue1250

Originally committed as revision 21665 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-07 02:00:00 +00:00
Michael Niedermayer
488dba7000 Fix colocated map.
Originally committed as revision 21664 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-07 01:18:00 +00:00
Michael Niedermayer
d88ea35463 Fix reference selection for colocated MBs from frames to fields.
Originally committed as revision 21663 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-07 01:17:13 +00:00
Michael Niedermayer
5aa1d7598f Add assert(sps.direct_8x8_inference_flag) to FIXME comment.
Originally committed as revision 21662 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-07 01:14:58 +00:00
Michael Niedermayer
50f8e98507 ref_offset must be added after checking references validity.
Originally committed as revision 21661 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-07 01:13:56 +00:00
Reimar Döffinger
06e03fa0ae Add include necessary for ff_set_qscale
Originally committed as revision 21657 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-06 12:53:28 +00:00
Jai Menon
f6d2916550 Avoid using an intermediate variable.
Originally committed as revision 21656 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-06 12:52:22 +00:00
Jai Menon
b53ae8b6b1 Remove redundant use of numchannels since it is 1 for mono.
Originally committed as revision 21655 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-06 12:48:37 +00:00
Jai Menon
e243eee43f alac.c : Use av_freep instead of av_free.
Originally committed as revision 21654 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-06 12:38:42 +00:00
Michael Niedermayer
8dcbf4c7aa Long term references behave different from short term in spatial direct MV calculation.
Fixes FRExt_MMCO4_Sony_B / issue1251

Originally committed as revision 21651 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-06 02:55:58 +00:00
Jai Menon
f430c7b6ac Add ALAC 24 bps decoding support.
Originally committed as revision 21637 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-04 16:21:26 +00:00
Michael Niedermayer
3102d180bb Fix large timebases.
Fixed issue1633

Originally committed as revision 21636 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-04 15:30:37 +00:00
Michael Niedermayer
ed3e91489b Implement cool new vlc code.
Fixes issue1637

Originally committed as revision 21635 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-04 14:26:57 +00:00
Peter Ross
b9e06dddb7 IFF PBM/ILBM bitmap decoder
Originally committed as revision 21622 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-03 09:56:16 +00:00
Michael Niedermayer
299fd39697 Revert
r12684 | michael | 2008-04-04 02:43:34 +0200 (Fri, 04 Apr 2008) | 2 lines
	Disable the split function. This should end the mpeg1/2 global header issues.
The split function is essential for -ss to work
Fixes issue1226
If this breaks something please tell me, also if someoen remembers what problem
this originally caused tell me too, i searched but couldnt find it.

Originally committed as revision 21621 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-03 04:40:42 +00:00
Carl Eugen Hoyos
36cbdc9539 Fix r21223: AVup samples (issue 1685) need a buf offset like AV1x (issue 1684).
Originally committed as revision 21617 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-02 22:57:56 +00:00
Thilo Borgmann
8e14fbe89b Remove unnecessary fields in ALSSpecificConfig.
Originally committed as revision 21583 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-01 09:53:37 +00:00
Michael Niedermayer
5cd3928478 Set reordered_opaque during context alloc by default to AV_NOPTS_VALUE.
This should make sure that pictures allocated prior to avcodec_decode_video()
get AV_NOPTS_VALUE assigned.

Originally committed as revision 21580 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-01 00:18:49 +00:00
Daniel Verkamp
abafc87c46 Update binkaudio to new DECLARE_ALIGNED syntax
Originally committed as revision 21573 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-31 15:07:25 +00:00
Daniel Verkamp
315c8d6c4e libavcodec version bump for Bink codec IDs (r21536)
Originally committed as revision 21572 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-31 13:34:28 +00:00
Peter Ross
c0d3f516cb Bink Audio decoder
Originally committed as revision 21570 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-31 12:51:15 +00:00
Reimar Döffinger
688621d76b Add include to fix implicit declaration of ff_mpeg4_init_direct_mv and
ff_h263_encode_mba

Originally committed as revision 21568 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-31 12:27:05 +00:00
Peter Ross
6b807c15aa Add v210x decoder long name
Originally committed as revision 21567 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-31 12:06:33 +00:00
Michael Niedermayer
37b2b0d6cd Get rid of a check in one direction that cant be true in it in that part
of the code.
No meassureable speed change.

Originally committed as revision 21566 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-31 02:05:26 +00:00
Måns Rullgård
d132d50fb8 Blackfin: use SRAM only when CONFIG_SRAM is set
Originally committed as revision 21565 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-31 00:20:30 +00:00
Michael Niedermayer
f28f146473 Flush the bitreservour.
Fixes issue1716

Originally committed as revision 21559 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-30 21:55:18 +00:00
Michael Niedermayer
2646814897 Split first reference list comparission from mv comparission.
about 0.5% faster MBAFF loop filtering

Originally committed as revision 21552 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-30 20:07:37 +00:00
Reimar Döffinger
3d05c1fbec Make the jump-table section-relative for x86_64 with PIC enabled.
This allows to get rid of the macho64 specific hack that moves them
to rodata (with worse cache behaviour) and avoids textrels which
e.g. Gentoo does not allow for x86_64 libraries.

Originally committed as revision 21551 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-30 19:26:47 +00:00
Stefano Sabatini
80a07f6e47 Implement av_get_pix_fmt(), and deprecate avcodec_get_pix_fmt().
Originally committed as revision 21545 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-30 18:50:00 +00:00
Michael Niedermayer
4e992796a9 Replace h->left_type[0] by the local variable for it we have.
No meassureable speed effect.

Originally committed as revision 21541 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-30 14:33:25 +00:00
Michael Niedermayer
012dbcce08 slightly faster bit trickery.
Originally committed as revision 21540 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-30 14:10:06 +00:00
Michael Niedermayer
77821e11b3 Replace ?: by branchless code.
about 0.5% faster loop filtering

Originally committed as revision 21539 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-30 13:40:20 +00:00
Daniel Verkamp
4e5f42dd79 Add Bink codec IDs
Originally committed as revision 21536 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-30 09:48:55 +00:00
Kostya Shishkov
1cf3168516 Indeo Video Interactive 4 and 5 common code and DSP functions.
Reviewed and corrected by myself because there were no other volunteers in the
last weeks.

Originally committed as revision 21531 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-30 08:10:17 +00:00
Reimar Döffinger
800274f871 Make VP5 and VP6 decoders output a qscale table to allow for more automatic
post-processing, and add a new FF_QSCALE_TYPE_VP56 for this.

Originally committed as revision 21529 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-29 19:11:47 +00:00
Ronald S. Bultje
5e4e9042c4 Add no_repeat_mask option, so that single-pulse vectors can also be
expressed in a AMRFixed structure and handled by ff_set_fixed_vector().

Originally committed as revision 21528 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-29 16:49:06 +00:00
Robert Swain
4a27f326c5 Add support for vorbis 6.1 and 7.1 channel configurations as per the new spec
http://xiph.org/vorbis/doc/Vorbis_I_spec.html#x1-800004.3.9

Originally committed as revision 21527 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-29 13:51:25 +00:00
Laurent Aimar
68a4d3498f vp56: check buffer size to fix a potential segfault
patch by Laurent Aimar  fenrir _at_ videolan _dot_ org

Originally committed as revision 21521 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-28 23:49:46 +00:00
Justin Ruggles
2c2cdc0bfb Simplify error handling by processing header errors separate from CRC and
buffer size vs. frame size errors.

Originally committed as revision 21519 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-28 23:19:33 +00:00
Reimar Döffinger
836fc77785 Move variable declaration to block where it is used and simplify code.
Avoids a (incorrect) "possibly used uninitialized" warning, no measurable
speed difference.

Originally committed as revision 21518 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-28 21:01:50 +00:00
Rafaël Carré
dd0cd3d273 Export H264 profile and level in AVCodecContext.
Patch by Rafaël Carré, rafael D carre A gmail

Originally committed as revision 21517 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-28 20:57:29 +00:00
Reimar Döffinger
88517e9f9d Extract duplicated code into a separate function.
5% faster on Intel Atom with gcc 4.4.1 (performance is unchanged
if using av_always_inline).

Originally committed as revision 21516 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-28 20:15:19 +00:00
Michael Niedermayer
34032e26ab factorize first filter call out, this makes the code somewhat
smaller without any speed loss.

Originally committed as revision 21514 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-28 19:44:13 +00:00
Ronald S. Bultje
52ed8d0efe Simplify. See "[PATCH] simplify ff_set_fixed_vector()" thread on mailinglist.
Originally committed as revision 21510 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-28 14:29:53 +00:00
Rafaël Carré
e9ca315dd1 Initialize thread_context[0] with h264 parser context.
This allows freeing the parser memory in the thread_context freeing loop.

Patch by Rafaël Carré gmailify(rafael, carre)

Originally committed as revision 21508 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-28 13:04:25 +00:00
Michael Niedermayer
592e03a8da Change wraper functions to always inline, they are faster now that way.
1% faster MBAFF decoding overall, maybe ~0.1% faster for the cathedral sample.

Originally committed as revision 21507 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-28 11:37:35 +00:00
Michael Niedermayer
5364db2893 indent
Originally committed as revision 21506 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-28 11:18:06 +00:00
Michael Niedermayer
2cf0d46d4c Restructure check_mv()
~20 cpu cycles faster loopfilter

Originally committed as revision 21505 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-28 11:12:46 +00:00
Michael Niedermayer
fabd704b37 Restructure if() in check_mv()
quite a bit faster

Originally committed as revision 21504 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-28 10:38:43 +00:00
Michael Niedermayer
ca7c784fdf Unroll loops in check_mv()
~6% faster (slow path) loopfilter (should be ~2% overall)

Originally committed as revision 21503 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-28 10:34:06 +00:00
Michael Niedermayer
e814817b74 Factor mv/ref compare code out.
This is a hair slower (0.15% maybe) but i really dont want to have the
identical code duplicated 3 times because gcc adds odd threaded jumps with
register reshuffling and register safe/restore.

Originally committed as revision 21502 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-28 10:10:02 +00:00
Michael Niedermayer
3b84924516 Simplify first edge filter condition.
Originally committed as revision 21497 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-28 02:41:52 +00:00
Michael Niedermayer
b6302d0c55 Cosmetics, mostly indention, 2 or so new fixme comments that i was to lazy
to split out

Originally committed as revision 21496 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-28 02:20:31 +00:00
Michael Niedermayer
0a32508d90 Make the fast loop filter path work with unavailable left MBs.
This prevents the issue with having to switch between slow and
fast code paths in each row.
0.5% faster loopfilter for cathedral

Originally committed as revision 21495 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-28 02:15:25 +00:00
Michael Niedermayer
b304767301 get rid of the start variable.
a few cycles faster

Originally committed as revision 21494 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-28 01:31:06 +00:00
Michael Niedermayer
980bcc554d Unroll main loop so the edge==0 case is seperate.
This allows many things to be simplified away.
h264 decoder is overall 1% faster with a mbaff sample and
0.1% slower with the cathedral sample, probably because the slow loop
filter code must be loaded into the code cache for each first MB of each
row but isnt used for the following MBs.

Originally committed as revision 21493 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-28 01:24:25 +00:00
Rafaël Carré
881b5b80da Fix svq3_* function declarations.
Patch by Rafaël Carré, rafael D carre A gmail

Originally committed as revision 21489 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-27 22:22:01 +00:00
Måns Rullgård
e3d8807315 SVQ1: 4-byte-align codebook tables
These tables are accessed as uint32 so they must be suitably aligned.

Originally committed as revision 21488 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-27 21:31:19 +00:00
Reimar Döffinger
7e2ef1b9e1 Fix possible crashes in mlp parser, it tries to go back 7 bytes after
finding the 4-byte signature.
Add a check that ignores the signature if we do not have enough previous
data to go back at least 7 bytes.

Originally committed as revision 21487 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-27 20:04:19 +00:00
Reimar Döffinger
d780511b94 Reduce log level of "Extracting .. channel downmix" to AV_LOG_DEBUG, the
message is pointless to ordinary users and is printed once per frame.

Originally committed as revision 21486 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-27 20:02:18 +00:00
Michael Niedermayer
9f72b23c5c Revert Revision: 21362
Log:
	Set CODEC_CAP_SUBFRAMES for adpcm decoders

	This makes ffmpeg stop printing millions of
	  Multiple frames in a packet from stream 0
	when decoding adpcm.
Reason: adpcm has no subframes, the flag does not belong there

Originally committed as revision 21481 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-27 13:30:05 +00:00
Michael Niedermayer
8670f84cf9 Update comment.
Originally committed as revision 21479 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-27 13:18:08 +00:00
Michael Niedermayer
e470ef7641 Use table to speedup access to non_zero_count in MBAFF with differing interlacing.
~4 cpu cycles speedup

Originally committed as revision 21474 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-27 11:14:29 +00:00
Stefano Sabatini
e8a9d01846 Fix misc typos, patch by
Fabian Greffrath base64_decode(PGZhYmlhbkBncmVmZnJhdGguY29tPg==).

Originally committed as revision 21473 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-27 00:31:52 +00:00
Michael Niedermayer
8652e44acd Simplify left_xy init
Originally committed as revision 21470 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-27 00:15:55 +00:00
Michael Niedermayer
599fe45b8d Split fill_caches() between loopfilter & decode, the 2 no longer where common
enough to justify the messy interleaving.

Originally committed as revision 21469 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-26 23:54:11 +00:00
Michael Niedermayer
16e5e39ab4 Optimize loop filtering of the left edge in MBAFF.
60 cpu cycles speedup

Originally committed as revision 21467 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-26 22:59:19 +00:00
Michael Niedermayer
dfe4dc154b use left_xy[1] in mbaff QP loop filter check, this improves the amount that can
be skiped.

Originally committed as revision 21465 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-26 20:28:58 +00:00
Michael Niedermayer
aebf31236e Optimize mv/ref cache init for left MB.
Originally committed as revision 21464 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-26 20:25:14 +00:00
Måns Rullgård
f2c694af28 Add UMULH()
This function/macro returns the high half of the unsigned 64-bit
product of two unsigned 32-bit operands.

Originally committed as revision 21463 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-26 18:05:55 +00:00
Loren Merritt
900479bb74 optimize h264_loop_filter_strength_mmx2
244->160 cycles on core2

Originally committed as revision 21462 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-26 17:17:48 +00:00
Michael Niedermayer
6548c939ec remove unneeded check
Originally committed as revision 21460 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-26 15:34:21 +00:00
Michael Niedermayer
18ea2f933c Use left_mb_xy from fill_caches instead of recalculating it.
Originally committed as revision 21459 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-26 14:57:53 +00:00
Michael Niedermayer
a715af8ff4 Simplify left_xy content for the loop filter, this also makes it closer to
what is needed and its faster too.

Originally committed as revision 21458 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-26 14:55:19 +00:00
Michael Niedermayer
d5c30c86d0 Simplify loop filter a little by using top/left_type.
Originally committed as revision 21457 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-26 13:39:26 +00:00
Michael Niedermayer
99344d4372 Set top & left types for deblock in fill_caches().
Originally committed as revision 21456 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-26 13:38:18 +00:00
Michael Niedermayer
aaa995d7f2 100l typo fix, mixed up +-1 forcing the loop filter skip to never skip.
Originally committed as revision 21455 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-26 13:30:33 +00:00