Ronald S. Bultje
af0a61cc40
Fix buffer overrun if idx is negative (it can be down to -23>>4), by prepending
...
two padding zeroes before it. Should fix fate failures on openBSD and crashes
on MacOSX (that I cannot reproduce).
Originally committed as revision 24750 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-09 13:54:59 +00:00
Vitor Sessak
46a76dec93
Fix handling of truncated files. Should fix random FATE breakages.
...
Originally committed as revision 24745 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-09 07:17:01 +00:00
Jason Garrett-Glaser
4a384de5b8
Split h264dsp and h264pred in configure.
...
Many H.264 derivatives, like RV40 and VP8, use the H.264 prediction functions
but not the weight/loopfilter functions.
This should reduce the size of builds with one of these derivatives but without
H.264 decoding itself.
Originally committed as revision 24741 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-07 23:10:25 +00:00
Reinhard Tartler
2901cc9a95
Fix spelling in comment(s)
...
Originally committed as revision 24737 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-07 14:11:43 +00:00
Jason Garrett-Glaser
b70c95e05a
H.264: 8% faster CAVLC zero-run decoding
...
Originally committed as revision 24736 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-07 12:30:44 +00:00
Stefano Sabatini
a63dbf3970
Fix the compilation of some libavcodec/lib* files which were not
...
including libavcore/imgutils.h, which was required since the recent
avcodec_check_dimensions() -> av_check_image_size() transition.
Originally committed as revision 24734 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-07 01:36:35 +00:00
Alex Converse
18b95d85f2
libvpxdec: Fix "error: implicit declaration of function ‘av_check_image_size’".
...
av_check_image_size() is declared in libavcore/imgutils.h.
Originally committed as revision 24717 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-06 18:57:14 +00:00
Alex Converse
51aaf51143
vorbis_dec: Change partition_class[] to uint8_t.
...
When sizeof(uint_fast8_t) >= sizeof(int) there are unintended size effects.
Originally committed as revision 24716 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-06 16:10:42 +00:00
Diego Biurrun
3447f12d66
Add a CONFIG_ variable for generic Huffman routines.
...
Originally committed as revision 24715 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-06 10:29:14 +00:00
Stefano Sabatini
6ce9b4310c
Remove use of the deprecated function avcodec_check_dimensions(), use
...
av_check_image_size() instead.
Originally committed as revision 24711 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-06 09:37:04 +00:00
Stefano Sabatini
bf176f58b7
Deprecate avcodec_check_dimensions() in favor of the new function
...
av_check_image_size() declared in libavcore/imgutils.h.
Originally committed as revision 24709 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-06 09:36:45 +00:00
Måns Rullgård
85fbad4555
fft-test: free buffers before exiting
...
Originally committed as revision 24708 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-06 07:09:12 +00:00
Jason Garrett-Glaser
7e13022a4d
VP8: fix bug in prefetch
...
Motion vectors in VP8 are qpel, not fullpel.
Originally committed as revision 24707 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-05 20:03:54 +00:00
Måns Rullgård
fa2d5d54b9
ARM: NEON H264 8x8 IDCT
...
Parts by David Conrad.
Originally committed as revision 24706 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-05 19:45:57 +00:00
Jason Garrett-Glaser
98fe09df7b
Add file missing in r24702
...
Originally committed as revision 24703 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-05 00:49:48 +00:00
Eli Friedman
c12d6955e2
H.264: SSE2/SSSE3 weighted prediction asm
...
Patch by Eli Friedman <eli.friedman at gmail dot com>
Originally committed as revision 24702 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-05 00:13:38 +00:00
Jason Garrett-Glaser
905ef0d064
VP5/6/8: eliminate CABAC dependency
...
Create a custom table for VP5/6/8's renorm to avoid depending on H.264's.
Saves one instruction in the arithmetic decoder as well.
Originally committed as revision 24701 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-04 23:04:05 +00:00
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