Commit Graph

12241 Commits

Author SHA1 Message Date
Måns Rullgård a79e921ee6 fft-test: exit with non-zero status if test failed
Originally committed as revision 24693 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-04 06:56:55 +00:00
Martin Storsjö 8d370d88e5 Fix VP8 decoder dependencies
This reverts rev 24674 - the VP8 decoder actually depends on cabac.o.
vp8.c includes vp56.h, which includes cabac.h, which has inline functions
that reference tables from cabac.c.

This fixes compilation with --disable-everything --enable-decoder=vp8.

Originally committed as revision 24692 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-04 05:20:49 +00:00
Jason Garrett-Glaser 1e73967950 VP8: partially inline decode_block_coeffs
Avoids a function call in the case of empty DCT blocks (most of the time).

Originally committed as revision 24691 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-04 02:23:25 +00:00
Jason Garrett-Glaser ffbf0794f9 Fix 100L in r24689
Accidentally committed some timing code.

Originally committed as revision 24690 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-04 01:40:58 +00:00
Jason Garrett-Glaser afb54a85c3 VP8: simplify decode_block_coeffs to avoid having to track nonzero coeffs
Slightly faster.

Originally committed as revision 24689 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-04 01:38:08 +00:00
Jason Garrett-Glaser d0c38ea0aa Cosmetics: add missing space to options.c
Originally committed as revision 24688 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-04 00:08:16 +00:00
Jason Garrett-Glaser b0d5879513 VP8: slightly faster DCT coefficient probability update
Originally committed as revision 24687 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-03 23:21:47 +00:00
Måns Rullgård 2eef529195 ARM: update struct offsets
Originally committed as revision 24686 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-03 22:29:38 +00:00
Måns Rullgård f079a64aea Move cavs dsp functions to their own struct
Originally committed as revision 24685 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-03 20:59:00 +00:00
Jason Garrett-Glaser 61ee75bbf8 Silence unused function warnings in vp56.h
Originally committed as revision 24684 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-03 11:35:41 +00:00
Jason Garrett-Glaser 476be414a4 VP8: make another RAC call branchy
1-2 clocks faster.

Originally committed as revision 24683 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-03 11:34:24 +00:00
Jason Garrett-Glaser 8b9b5e085f VP5/6/8: add one inline missed in r24677
Originally committed as revision 24682 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-03 11:21:22 +00:00
Jason Garrett-Glaser 0908f1b945 VP8: unroll partition type decoding tree
~34% faster partition type decoding.

Originally committed as revision 24681 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-03 11:10:58 +00:00
Jason Garrett-Glaser c5dec7f137 VP8: unroll splitmv decoding tree
Much faster splitmv mode decoding.

Originally committed as revision 24680 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-03 10:37:14 +00:00
Jason Garrett-Glaser 23117d69c1 VP8: unroll MB mode decoding tree
~50% faster MB mode decoding, plus eliminate a costly switch.

Originally committed as revision 24679 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-03 10:24:28 +00:00
Jason Garrett-Glaser cd2769c142 VP5/6/8: tweak some arithcoder inlining
Always inline the arithmetic coder, except in the case of header-parsing stuff,
in which case don't inline it at all to save code size.

Originally committed as revision 24677 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-03 08:06:08 +00:00
Alex Converse 55aa55f2e1 vorbisdec: Return AVERROR(ENOMEM) on malloc() failure.
This is especially important because classifs can be very large.

Originally committed as revision 24676 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-03 00:27:54 +00:00
Alex Converse 366d919016 vorbisdec: Prevent a potential integer overflow.
If sizeof uint_fast8_t > 1 and sizeof size_t <= 4, the expression that mallocs
classifs  is susceptible to integer overflow.

Originally committed as revision 24675 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-03 00:25:06 +00:00
Diego Biurrun 83abdf5ff0 The VP8 decoder does not depend on cabac.o.
Originally committed as revision 24674 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-02 23:49:49 +00:00
Diego Biurrun efbc455915 The VP8 decoder does not depend on vp56.o and vp56data.o.
Originally committed as revision 24673 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-02 23:23:27 +00:00
Diego Biurrun 2e2ca50655 Remove redundant h264pred.o from VP8 objects list.
It is already selected through the H264DSP dependency of VP8.

Originally committed as revision 24672 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-02 23:16:52 +00:00
Jason Garrett-Glaser 370b622a45 VP8: eliminate a dereference in coefficient decoding
Originally committed as revision 24671 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-02 22:48:38 +00:00
Jason Garrett-Glaser f311208cf1 VP8: much faster DC transform handling
A lot of the time the DC block is empty: don't do the WHT in this case.
A lot of the rest of the time, there's only one coefficient: make a special
DC-only transform for that case.
When the block is empty, don't incorrectly mark luma DCT blocks as having DC
coefficients.

Originally committed as revision 24670 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-02 20:57:03 +00:00
Måns Rullgård c934562c12 vorbisdec: change a uint_fast32_t to 'unsigned', fix llvm-gcc build
Originally committed as revision 24669 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-02 20:35:50 +00:00
Jason Garrett-Glaser 827d43bb9d VP8: move zeroing of luma DC block into the WHT
Lets us do the zeroing in asm instead of C.
Also makes it consistent with the way the regular iDCT code does it.

Originally committed as revision 24668 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-02 20:18:09 +00:00
Pascal Massimino d2840fa49c only store intra prediction modes on the boundary for keyframes, not as a plane.
inter-frame behaviour unchanged.

Originally committed as revision 24664 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-02 09:44:53 +00:00
Benoit Fouet 497d7991b5 Change a doxy comment to a normal one.
Originally committed as revision 24662 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-02 07:26:27 +00:00
Benoit Fouet 1aa15491f2 Fix doxygen comments.
/**\u2264 => /**<

Originally committed as revision 24661 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-02 07:25:25 +00:00
Jason Garrett-Glaser 10bf2eebbe VP8: simplify token_prob handling
~1.5% faster decode_block_coeffs

Originally committed as revision 24659 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-02 05:20:38 +00:00
Pascal Massimino c22b4468a6 prevent access to vp8_coeff_band[16]
Originally committed as revision 24656 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-01 23:20:06 +00:00
Ronald S. Bultje 6341838f3c Use word-writing instead of dword-writing (with two cached but otherwise
unchanged bytes) in the horizontal simple loopfilter. This makes the filter
quite a bit faster in itself (~30 cycles less on Core1), probably mostly
because we don't need a complex 4x4 transpose, but only a simple byte
interleave. Also allows using pextrw on SSE4, which speeds up even more
(e.g. 25% faster on Core i7).

Originally committed as revision 24638 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-31 23:13:15 +00:00
Nick Brereton ace7f813cd dca: fix dynrange coefficient in xch
Patch by Nick Brereton

Originally committed as revision 24637 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-31 22:15:59 +00:00
Justin Ruggles 6768beb4a8 cosmetics: rename output_* to write_*
Originally committed as revision 24634 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-31 21:14:03 +00:00
Justin Ruggles 3d2cd42f8a Simplify verbatim mode fallback by checking the frame size before writing.
Originally committed as revision 24632 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-31 21:08:53 +00:00
Justin Ruggles 2249a7f312 Change max_framesize for small final frame.
Originally committed as revision 24631 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-31 20:52:33 +00:00
Justin Ruggles 7c29a5de25 Calculate an exact frame size before writing. Now the buffer size requirements
can be known exactly, so larger frame sizes can be safely encoded without buffer
overwrite.

Originally committed as revision 24630 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-31 20:32:12 +00:00
Justin Ruggles 675eb677c5 cosmetics: rename find_subblock_rice_params() to find_subframe_rice_params()
Originally committed as revision 24629 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-31 20:19:07 +00:00
Justin Ruggles 089c18f315 Reduce number of input parameters to find_subblock_rice_params().
Originally committed as revision 24628 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-31 20:17:59 +00:00
Justin Ruggles d309f01950 10l: fix bit count for frame header
Originally committed as revision 24627 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-31 18:48:48 +00:00
Justin Ruggles b22f9d6535 Simplify fallback to verbatim mode encoding.
Originally committed as revision 24626 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-31 17:23:29 +00:00
Justin Ruggles 45e2908757 cosmetics: line wrap and vertical alignment
Originally committed as revision 24625 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-31 17:07:24 +00:00
Justin Ruggles 8fbb8d31d8 Combine calc_rice_params_fixed() and calc_rice_params_lpc() into a single
function.

Originally committed as revision 24624 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-31 17:06:10 +00:00
Justin Ruggles 43b3273e5b Remove unneeded wrapper function.
Originally committed as revision 24622 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-31 16:50:27 +00:00
Justin Ruggles 0f5cc12c4f Remove duplicate code by adding a flag for encoding in verbatim mode.
Originally committed as revision 24621 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-31 16:46:32 +00:00
Stefano Sabatini 05236ed735 Use av_fill_image_pointers/linesizes in place of ff_fill_pointer/linesize,
and drop the the ff_ variants at the next major bump.

Originally committed as revision 24620 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-31 16:46:20 +00:00
Justin Ruggles 93d65e3d92 Estimate frame size during encoding.
Originally committed as revision 24619 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-31 16:37:23 +00:00
Vitor Sessak fa738b3ad1 Remove x86/mmx.h. It is not used anymore and has been deprecated for years.
Originally committed as revision 24618 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-31 16:20:45 +00:00
Vitor Sessak 0913a92a59 Fix compilation with --disable-yasm. 10l to me.
Originally committed as revision 24617 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-31 16:17:54 +00:00
Vitor Sessak de4bc44abb Convert deinterlacing MMX code to YASM
Originally committed as revision 24615 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-31 14:50:51 +00:00
Justin Ruggles eb96f1698a cosmetics: indentation
Originally committed as revision 24612 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-30 21:33:51 +00:00