Måns Rullgård
588d28ac08
Remove vestiges of radix-2 FFT
...
Patch (mostly) by Loren Merritt
Originally committed as revision 23957 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-01 23:21:42 +00:00
Måns Rullgård
bf7ba15372
PPC: Altivec split-radix FFT
...
1.8x faster than altivec radix-2 on a G4
8% faster vorbis decoding
Patch (mostly) by Loren Merritt
Originally committed as revision 23956 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-01 23:21:39 +00:00
Måns Rullgård
2f0c136e1f
Check whether IBM or Apple PPC assembler syntax is used
...
This checks which assembler syntax is supported and defines macros
for register names accordingly.
Originally committed as revision 23952 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-01 23:21:27 +00:00
Måns Rullgård
59bebb11e0
mpegaudio: move compute_antialias_float() to mpegaudiodec_float.c
...
Also put compute_antialias_integer() under !CONFIG_FLOAT and change
forward declarations to declare only the relevant one of these.
Fixes warnings about unused functions and pointer type mismatches.
Originally committed as revision 23950 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-01 23:21:20 +00:00
Måns Rullgård
35d597d556
mpegaudio: call ff_mpegaudiodec_init_mmx() only from float decoder
...
The mmx code is floating-point only, and this function does not know
from which decoder it is called. Without this change, the integer
decoder only "works" because the size of the context struct is smaller
in this case, and the mmx init function writes the function pointer
outside the allocated context.
Fixes issue 2054.
Originally committed as revision 23949 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-01 23:21:17 +00:00
Jason Garrett-Glaser
8434fc26eb
Fix 100L in vp8dsp asm init
...
Originally committed as revision 23946 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-01 22:09:22 +00:00
Aurelien Jacobs
956dae9e77
adu and mp3on4 functions are also needed by their respective float decoders
...
Originally committed as revision 23944 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-01 21:08:20 +00:00
Vitor Sessak
060dd93000
Altivec-optimized mp{1,2,3} windowing
...
Originally committed as revision 23943 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-01 21:04:12 +00:00
Stefano Sabatini
2b4abbd6f5
Move colorspace.h from libavcodec to libavutil.
...
Avoid a compile-time dependency of the pad filter on libavcodec.
Originally committed as revision 23940 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-01 18:49:44 +00:00
Aurelien Jacobs
6eabaef4b8
cosmetic: improve comment breaking at 80 cols
...
Originally committed as revision 23938 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-01 16:28:38 +00:00
Aurelien Jacobs
7bcef8483f
fix dependencies of vp5 and vp6 decoders after r23915
...
they now also depends on cabac.o for ff_h264_norm_shift
Originally committed as revision 23937 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-01 16:09:38 +00:00
Måns Rullgård
2cbd734a38
Maybe fix threaded mpeg*video encoding
...
This allocates per-thread copies of some MpegEncContext.ac_val which
is used concurrently from the encoding threads.
Originally committed as revision 23933 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-01 11:51:01 +00:00
Jason Garrett-Glaser
17dc7c7a60
Fix h264/vp8 intra pred on Athlon XP
...
Whose idea was it to have a CPU that didn't SIGILL on an invalid instruction?
Originally committed as revision 23927 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-01 10:29:47 +00:00
Rafaël Carré
b47a52dc86
mpegaudioenc: Remove write-only variables from the context.
...
Patch by Rafaël Carré (rafael <dot> carre <at> gmail).
Originally committed as revision 23926 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-01 05:17:02 +00:00
Jason Garrett-Glaser
4148855ee4
Eliminate another redundant instruction in vp56/8 arithcoder
...
Necessary because of this GCC bug:
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44474
To do this, convert some, but not all (!) of the variables in VP56RangeCoder
into local variables.
If we convert c->high into a local variable, gcc gets the stupids and refuses
to use a conditional move for the unpredictable main branch.
TODO: dispense with this bullshit and write an asm version.
Originally committed as revision 23924 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-30 23:59:27 +00:00
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