Commit Graph

166 Commits

Author SHA1 Message Date
Michael Niedermayer
3e0f7126b5 update mmx code to latest snow changes
note, the code likely can overflow and thus needs some more changes
sse2 updated too but disabled as it is untested

Originally committed as revision 10223 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-25 15:20:56 +00:00
Michael Niedermayer
d593e32983 use 16bit IDWT (a SIMD implementation of it should be >2x faster then with
the old 32bit code)
disable mmx/sse2 optimizations as they need a rewrite now

Originally committed as revision 10218 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-25 03:00:51 +00:00
Aurelien Jacobs
73f51a4d3e help some gcc version to optimize out those functions
Originally committed as revision 9785 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-24 08:54:56 +00:00
Aurelien Jacobs
674eeb5f57 cosmetics: indentation
Originally committed as revision 9582 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-10 20:27:50 +00:00
Aurelien Jacobs
eb75a69818 Avoid linking with h263.c functions when the relevant codecs
are not compiled in.

Originally committed as revision 9581 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-10 20:23:08 +00:00
Måns Rullgård
a00177a952 make arguments to ssd_int8_vs_int16() const
Originally committed as revision 9548 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-08 23:15:00 +00:00
Zuxy Meng
663deb54af Remove incorrect comment; MMX2 is preferred over 3DNow! on Athlon
Originally committed as revision 9079 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-05-20 05:07:44 +00:00
Zuxy Meng
038bfcf9d6 3DNow! and SSSE3 optimization to QNS DSP functions; use pmulhrw/pmulhrsw instead of pmulhw
Originally committed as revision 9053 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-05-18 08:18:56 +00:00
Aurelien Jacobs
5b0b7054b4 better separation of vp3dsp functions from dsputil_mmx.c
Originally committed as revision 9039 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-05-16 23:23:45 +00:00
Ronald S. Bultje
b550bfaa61 Add libavcodec to compiler include flags in order to simplify header
include paths in the source files.
mostly from a patch by Ronald S. Bultje, rbultje ronald.bitfreak net

Originally committed as revision 9034 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-05-16 09:51:45 +00:00
Panagiotis Issaris
9b5dc86746 Make vp3dsp*.c compilation optional.
Originally committed as revision 9025 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-05-14 14:28:13 +00:00
Loren Merritt
1edbfe1994 factor sum_abs_dctelem out of dct_sad, and simd it.
sum_abs_dctelem_* alone:
core2: c=186 mmx2=39 sse2=21 ssse3=13 (cycles)
k8: c=163 mmx2=33 sse2=31
p4: c=370 mmx2=60 sse2=60
 dct_sad including sum_abs_dctelem_*:
core2: c=405 mmx2=258 sse2=240 ssse3=232
k8: c=624 mmx2=394 sse2=392
p4: c=849 mmx2=556 sse2=556

Originally committed as revision 9001 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-05-12 02:41:25 +00:00
Loren Merritt
561f940c03 sse2 & ssse3 versions of hadamard. unroll and inline diff_pixels.
core2: before mmx2=193 cycles. after mmx2=174 sse2=122 ssse3=115 (cycles).
k8: before mmx2=205. after mmx2=184 sse2=180.
p4: before mmx2=342. after mmx2=314 sse2=309.

Originally committed as revision 9000 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-05-12 01:16:06 +00:00
Loren Merritt
5adf43e47e cosmetics: remove code duplication in hadamard8_diff_mmx
Originally committed as revision 8946 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-05-09 01:46:33 +00:00
Loren Merritt
bba5293bb7 cosmetics: remove duplicate transpose macro
Originally committed as revision 8939 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-05-08 17:55:56 +00:00
Diego Biurrun
fe0372296a typos
Originally committed as revision 8642 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-04-07 14:10:02 +00:00
Loren Merritt
5900637219 mmx 16-bit ssd. 2.3x faster svq1 encoding.
Originally committed as revision 8559 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-03-30 19:15:31 +00:00
Diego Biurrun
d42f88025a Fix wrong conditional, Snow decoding, not encoding, was SIMD-accelerated.
Originally committed as revision 8116 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-02-24 11:58:52 +00:00
Panagiotis Issaris
9dd6c80453 Add the const specifier as needed to reduce the number of warnings.
Originally committed as revision 7764 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-01-30 10:31:34 +00:00
Måns Rullgård
486497e07b revert bad checkin
Originally committed as revision 7044 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-11-14 03:18:09 +00:00
Måns Rullgård
be6ed6fff4 move some CFLAGS settings away from config.* writing section
Originally committed as revision 7043 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-11-14 03:12:29 +00:00
Måns Rullgård
bb54f6ab62 adding more static keywords
Originally committed as revision 6976 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-11-12 03:34:12 +00:00
Michael Niedermayer
e9f1885c21 optimize H264_DEBLOCK_P0_Q0
2.5% faster filter_mb_fast() on P3

Originally committed as revision 6877 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-11-03 02:03:56 +00:00
Diego Biurrun
7c428ea681 Put libmpeg2 IDCT functions under CONFIG_GPL, fixes link failure
with --disable-opts.

Originally committed as revision 6691 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-10-14 17:04:50 +00:00
Diego Biurrun
c26abfa541 Rename ABS macro to FFABS.
Originally committed as revision 6666 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-10-11 23:17:58 +00:00
Diego Biurrun
b78e7197a8 Change license headers to say 'FFmpeg' instead of 'this program/this library'
and fix GPL/LGPL version mismatches.

Originally committed as revision 6577 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-10-07 15:30:46 +00:00
Diego Biurrun
0eb59ddba4 Switch idct_mmx_xvid.c from GPL to LGPL as permitted by the
author, Peter Ross (pross xvid org).

Originally committed as revision 6557 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-10-05 00:23:24 +00:00
Loren Merritt
2833fc4646 approximate qpel functions: sacrifice some quality for some decoding speed. enabled on B-frames with -lavdopts fast.
Originally committed as revision 6412 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-10-01 21:25:17 +00:00
Måns Rullgård
62bb489b13 add some #ifdef CONFIG_ENCODERS/DECODERS
Originally committed as revision 6356 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-09-27 19:54:07 +00:00
Aurelien Jacobs
2a2311bee3 disable vp3 mmx idct for theora files to avoid artifacts
(see theora-a4_v6-k250-s0_2.ogg)

Originally committed as revision 6253 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-09-14 22:13:23 +00:00
Diego Biurrun
7f889a76ad Remove the LGPL exception clause as discussed on ffmpeg-devel
and move the dependent code under CONFIG_GPL.

Originally committed as revision 6248 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-09-14 00:38:03 +00:00
Aurelien Jacobs
1dac8fea05 Enables back the mmx/sse optimized version of the vp3 idct.
It generates different md5sum than the reference C implementation,
but no visual difference, so enabled only when bitexact is not set.

Originally committed as revision 6241 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-09-12 20:58:17 +00:00
Måns Rullgård
0e176c3eb5 remove redundant declarations
Originally committed as revision 6153 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-09-02 23:10:28 +00:00
Loren Merritt
3e20143ee7 mmx implementation of deblocking strength decision.
2-3% faster h264.

Originally committed as revision 6113 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-08-28 09:33:01 +00:00
John Dalgliesh
4454dc1b6f Support for MacIntel, last part: balign directives
Determines whether .align's arg is power-of-two or not, then defines ASMALIGN appropriately in config.h. Changes all .baligns to ASMALIGNs.
Patch by John Dalgliesh % johnd AH defyne P org %
Original thread:
Date: Aug 11, 2006 8:00 AM
Subject: Re: [Ffmpeg-devel] Mac OS X Intel last part: balign directives

Originally committed as revision 5990 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-08-12 16:37:31 +00:00
Loren Merritt
069720565c vorbis simd tweaks
Originally committed as revision 5983 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-08-11 18:19:37 +00:00
Michael Niedermayer
1f1aa1d955 convert vector_fmul_reverse_sse2 and vector_fmul_add_add_sse2 to sse
please complain if they are slower on sse2 cpus ...

Originally committed as revision 5976 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-08-10 20:24:58 +00:00
Loren Merritt
eb4825b5d4 sse and 3dnow implementations of float->int conversion and mdct windowing.
15% faster vorbis.

Originally committed as revision 5975 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-08-10 19:06:25 +00:00
Loren Merritt
ee5df92750 emms -> femms
Originally committed as revision 5965 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-08-09 06:37:25 +00:00
Michael Niedermayer
21bb884fb7 change vorbis_inverse_coupling_sse2() so it works on sse1 cpus
Originally committed as revision 5957 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-08-08 12:03:51 +00:00
Loren Merritt
cd035a6051 10l, vorbis_inverse_coupling_sse() was really 3dnow
Originally committed as revision 5903 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-08-03 07:09:29 +00:00
Loren Merritt
2dac4acfc0 sse & sse2 implementations of vorbis channel coupling.
9% faster vorbis (on a K8).

Originally committed as revision 5898 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-08-03 03:18:47 +00:00
Stefan Gehrer
595e7bd940 some MMX optimizations for the CAVS decoder
Originally committed as revision 5846 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-07-29 08:45:33 +00:00
Michael Niedermayer
5ced7b80ad disable the vp3 mmx and sse2 idcts, their output doesnt match the c idct (tested with -f crc) and the theora spec does not allow different idcts not to mention the difference is quite vissible ...
Originally committed as revision 5788 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-07-19 09:49:21 +00:00
Måns Rullgård
98d417cbcd #define SBUTTERFLY outside CONFIG_ENCODERS
Originally committed as revision 5628 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-07-05 19:31:01 +00:00
Luca Abeni
9c39071d6d Move REG_* macros from libavcodec/i386/mmx.h to libavutil/x86_cpu.h
Originally committed as revision 5595 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-07-03 10:52:07 +00:00
Loren Merritt
75ca1a5f70 gmc_mmx tweaks
Originally committed as revision 5269 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-04-05 04:13:41 +00:00
Loren Merritt
703c8195a8 mmx implementation of 3-point GMC. (5x faster than C)
Originally committed as revision 5265 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-04-04 09:23:45 +00:00
Loren Merritt
513fbd8e5a prefetch pixels for future motion compensation. 2-5% faster h264.
Originally committed as revision 5203 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-03-23 20:16:36 +00:00
Loren Merritt
fdd3057981 added mmx implementation of h264_chroma_mc2
Originally committed as revision 5200 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-03-22 22:05:00 +00:00