Commit Graph

11909 Commits

Author SHA1 Message Date
Jason Garrett-Glaser 36d6b545a1 CMOV-ify vp56 arithcoder
This incantation causes gcc 4.3 to generate cmov on x86, a vastly better option
than a completely unpredictable branch.
Hopefully this carries over to newer versions and other CPUs with conditionals.
~5 cycles saved per call on a Core i7.

Originally committed as revision 23921 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-30 23:18:47 +00:00
Jason Garrett-Glaser 2e6ed48d6e Optimize vp56 arithmetic decoder
Negate "bits" to eliminate a negate in cache refilling.

Originally committed as revision 23920 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-30 23:15:25 +00:00
Måns Rullgård cf60d669a6 Add more int packing macros, name them consistently
Originally committed as revision 23916 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-30 22:33:38 +00:00
Stefan Gehrer bce3bd1ced renormalize VP5/6/7/8 range coder without loop
Originally committed as revision 23915 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-30 22:05:29 +00:00
Daniel Kristjansson 0db2d3cf1d Do not skip one of three bits zero padding.
Patch by Daniel Kristjansson, danielk cuymedia net

Originally committed as revision 23914 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-30 21:46:03 +00:00
Måns Rullgård 809b7a99b2 Add missed file dct32.c
Originally committed as revision 23913 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-30 21:45:51 +00:00
Vitor Sessak 06d01188e9 More mp{1,2,3} 32-point DCT transform to our common DCT framework.
Should allow for future SIMD optimizations.

Originally committed as revision 23912 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-30 20:11:27 +00:00
Måns Rullgård 1782460b38 Improve av_resample() documentation
Originally committed as revision 23906 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-30 20:09:37 +00:00
Måns Rullgård 49bd8e4b84 Fix grammar errors in documentation
Originally committed as revision 23904 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-30 15:38:06 +00:00
Måns Rullgård df92772c55 apedec: add flush function
Originally committed as revision 23900 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-30 09:33:59 +00:00
Eli Friedman 85b76ce990 Fix "initialization from incompatible pointer type" warning in rv34.
Patch by Eli Friedman (at gmail).

Originally committed as revision 23897 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-30 06:50:44 +00:00
Eli Friedman 25fe863062 Silense one warning:
"passing argument 1 of ‘av_memcpy_backptr’ from incompatible pointer type"

Patch by Eli Friedman, eli D friedman A gmail

Originally committed as revision 23895 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-30 01:57:05 +00:00
Eli Friedman 99267eb702 Fix strict-aliasing violations in MPV_motion_internal.
Patch by Eli Friedman, eli D friedman A gmail

Originally committed as revision 23894 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-30 01:47:42 +00:00
Måns Rullgård dd8e127a4d rv40: make rv40_adaptive_loop_filter() always_inline
This function is called from the rv40_[hv]_loop_filter() wrappers
with some arguments constant, so it really needs to be inlined.

3% faster overall on Cortex-A8.

Originally committed as revision 23893 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-29 22:41:22 +00:00
Jason Garrett-Glaser 82a8d0f114 Use add instead of lshift in mmxext vp8 idct
Originally committed as revision 23891 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-29 17:23:17 +00:00
Ronald S. Bultje 565344e7e4 Remove unused macros (duplicates from the now-LGPL x86util.asm).
Originally committed as revision 23890 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-29 17:04:29 +00:00
Thilo Borgmann cbb39648c1 Add CRC check to the ALS decoder.
Originally committed as revision 23889 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-29 16:56:28 +00:00
Måns Rullgård a4edc5a9df ARM: add mov32 macro
Originally committed as revision 23888 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-29 14:48:45 +00:00
Måns Rullgård 480cb7edd3 ARM: (mostly) whitespace cosmetics
Originally committed as revision 23887 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-29 14:48:41 +00:00
Ronald S. Bultje 2dd2f71692 MMX idct_add for VP8.
Originally committed as revision 23886 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-29 14:43:11 +00:00
Jason Garrett-Glaser 29e719377f Add missing mm_support call toff_h264_pred_init_x86.
I'm not sure if this is supposed to be here, but it can't hurt.

Originally committed as revision 23885 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-29 12:28:06 +00:00
David Conrad 982fac7357 Altivec VP8 MC functions
Originally committed as revision 23884 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-29 06:42:17 +00:00
David Conrad 7bf4e9d7f7 Altivec: Add helper function to load from a constant misalignment
Originally committed as revision 23883 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-29 06:42:12 +00:00
David Conrad a3ef994cea vorbis: cosmetics, remove trailing comma for values that will never have
anything added

Originally committed as revision 23882 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-29 06:42:08 +00:00
Jason Garrett-Glaser 95275094a5 Faster C VP8 normal inner loop filter
Originally committed as revision 23881 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-29 04:34:04 +00:00
Jason Garrett-Glaser 9942b6a1b0 Use crop table in C implementations of VP8 DSP functions.
Much faster VP8 C DSP functions; ~5-10% faster overall with asm off.

Originally committed as revision 23880 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-29 03:34:24 +00:00
Jason Garrett-Glaser 004cda8e79 Add mmxext version of VP8 DC Hadamard transform
Originally committed as revision 23878 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-29 01:41:59 +00:00
Jason Garrett-Glaser 37355fe823 Make x86util.asm LGPL so we can use it in LGPL asm
Strip out most x264-specific stuff (not used anywhere in ffmpeg).

Originally committed as revision 23877 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-29 00:40:12 +00:00
Jason Garrett-Glaser bc14f04b2f MMXEXT version of vp8 4x4 vertical pred
Originally committed as revision 23876 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-29 00:23:52 +00:00
Jason Garrett-Glaser fb9927ad7d Add mmx/mmxext/ssse3 4x4 TM intra pred functions for vp8
Originally committed as revision 23875 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-28 23:53:07 +00:00
Jason Garrett-Glaser 8b746bb473 Add missing comment header for predict_4x4_dc_mmxext
Originally committed as revision 23874 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-28 23:37:24 +00:00
Jason Garrett-Glaser 270a85d259 Fix some intra pred MMX functions that used MMXEXT instructions
Also add predict_4x4_dc MMXEXT function for vp8/h264.

Originally committed as revision 23873 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-28 23:35:17 +00:00
Jason Garrett-Glaser a912da761d Fix VP8 bilinear mc on x86_64
Originally committed as revision 23872 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-28 22:13:14 +00:00
Alex Converse 4e42debc8d aacenc: Start the lookahead pointer 1/4 of the way into the first short window.
Short windows are of length 256 and begin at sample 448.

Originally committed as revision 23871 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-28 21:50:57 +00:00
Alex Converse 75ef689884 aacenc: Fix window decision logic.
This keeps the encoder from switching away from an wight short sequence
prematurely when attacks are detected two frames in a row. It also allows for
the legal and useful LONG_STOP_SEQUENCE to LONG_START_SEQUENCE transition.

Originally committed as revision 23870 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-28 21:49:26 +00:00
Alex Converse 804d489c4a aacenc: Fill in the estimated codebook for the final computed scalefactor in the TLS.
Originally committed as revision 23869 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-28 21:42:57 +00:00
Alex Converse 7ca4a72f47 10l: Revert r23867. It didn't make any sense.
Originally committed as revision 23868 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-28 21:40:38 +00:00
Alex Converse 9a3fe1ae6e Make ff_psy_preprocess_end() act like av_freep().
Originally committed as revision 23867 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-28 21:36:19 +00:00
Alex Converse 072c0d605f aacenc: Properly pad extradata.
This fixes a valgrind error when encoding to ADTS.

Originally committed as revision 23866 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-28 21:34:57 +00:00
Baptiste Coudurier 50f70541d3 Change MMXEXT to MMX2, MMXEXT is deprecated
Originally committed as revision 23865 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-28 21:12:00 +00:00
Jason Garrett-Glaser 0fecad09fe Add x86 asm functions for VP8 put_pixels
Originally committed as revision 23858 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-28 19:14:40 +00:00
Jason Garrett-Glaser a173aa8940 Add MMX, SSE2, SSSE3 asm for VP8 bilinear MC
Originally committed as revision 23857 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-28 18:56:24 +00:00
Ronald S. Bultje 7ed06b2be8 Simplify MV parsing, removes laying out 2 or 4 (16x8/8x8/8x16) MVs over all
16 subblocks (since we no longer need that), which should also lead to a
minor speedup.

Originally committed as revision 23854 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-28 16:04:14 +00:00
Ronald S. Bultje 7c4dcf8165 Optimize split MC, so we don't always do 4x4 blocks of 4x4pixels each, but
we apply them as 16x8/8x16/8x8 subblocks where possible. Since this allows
us to use width=8/16 instead of width=4 MC functions, we can now take more
advantage of SSE2/SSSE3 optimizations, leading to a total speedup for splitMV
filter of about 10%.

Originally committed as revision 23853 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-28 13:50:55 +00:00
Måns Rullgård eca9e4035a Set rv34 (0,0) subpel mc functions to the optimised h264 ones
Originally committed as revision 23845 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-28 10:56:16 +00:00
Måns Rullgård 1f65b67c46 Fix x86 build with h264dsp disabled
Originally committed as revision 23844 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-28 10:02:15 +00:00
Vitor Sessak 186d02150e Use lookup table to avoid division in mp2 decoder
Originally committed as revision 23840 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-28 04:55:36 +00:00
Stefano Sabatini a64fadf62b Fix linking if MMX is disabled.
Originally committed as revision 23839 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-27 23:25:04 +00:00
Måns Rullgård 7447204d2d vaapi: add missing #include "h263.h"
Originally committed as revision 23833 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-27 20:18:28 +00:00
Måns Rullgård 0b37cccaab ra288: convert VLAs to fixed size
Originally committed as revision 23832 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-27 19:30:31 +00:00