Commit Graph

311 Commits

Author SHA1 Message Date
Loren Merritt
b926572aa9 h264 mmx weighted prediction. up to 3% overall speedup.
Originally committed as revision 4630 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-10-09 23:38:52 +00:00
Loren Merritt
5693c08356 sse2 16x16 sum squared diff (306=>268 cycles on a K8)
faster 8x8 mmx ssd (77=>70 cycles)

Originally committed as revision 4623 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-09-30 02:31:47 +00:00
Michael Niedermayer
12e9668119 replace a few mov + psrlq with pshufw, there are more cases which could benefit from this but they would require us to duplicate some functions ...
the trick is from various places (my own code in libpostproc, a patch on the x264 list, ...)

Originally committed as revision 4608 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-09-21 21:17:09 +00:00
Reimar Döffinger
cd7af76d9e Fix compile without CONFIG_GPL, misplaced #endif caused a missing }.
Originally committed as revision 4575 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-09-10 19:30:40 +00:00
Michael Niedermayer
9f211bc6d7 remove unused table entries
change non portable table access

Originally committed as revision 4574 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-09-10 19:03:37 +00:00
Michael Niedermayer
84740d5980 xvids mmx&mmx2 idcts
needed to decode xvid without some minor artefacts
under #ifdef CONFIG_GPL of course

Originally committed as revision 4572 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-09-10 17:01:30 +00:00
Måns Rullgård
79396ac685 Kill some compiler warnings. Compiled code verified identical after changes.
Originally committed as revision 4567 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-09-06 21:25:35 +00:00
Michael Niedermayer
d3a9f79871 simplify (d&a) and (d&~a) calculation, hint by skal
Originally committed as revision 4552 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-09-03 09:17:30 +00:00
Michael Niedermayer
b5b65df7a9 add consts (this was in my local tree, dunno where it came from, probably forgoten from some const patch)
Originally committed as revision 4551 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-09-02 21:13:19 +00:00
Måns Rullgård
bf4e3bd2d0 kill a bunch of compiler warnings
Originally committed as revision 4522 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-08-14 15:42:40 +00:00
Alexander Strasser
c11c2bc20b libavutil: Utility code from libavcodec moved to a separate library.
Originally committed as revision 4489 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-08-01 20:07:05 +00:00
Loren Merritt
d2bb7db135 sort H.264 mmx dsp functions into their own file
Originally committed as revision 4338 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-06-02 20:45:35 +00:00
Michael Niedermayer
c26ae41db2 adding a few const
Originally committed as revision 4337 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-06-01 21:19:00 +00:00
Michael Niedermayer
435b0720a8 100l for myself (breaking amd64)
Originally committed as revision 4336 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-06-01 18:04:01 +00:00
Michael Niedermayer
6510f43cf3 merge a few asm blocks so gcc cant unoptimize it (658->631 dezicycles on duron)
Originally committed as revision 4334 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-06-01 11:56:58 +00:00
Michael Niedermayer
987ae784e6 get rid of 2 movq (680 -> 658 dezicycles on duron)
Originally committed as revision 4333 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-06-01 11:36:32 +00:00
Michael Niedermayer
e4b36d4434 avoid one transpose (730->680 dezicycles on duron)
Originally committed as revision 4332 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-06-01 08:43:40 +00:00
Loren Merritt
85bbfcd4ee 10l (symbol mangling)
Originally committed as revision 4331 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-06-01 04:51:46 +00:00
Michael Niedermayer
1f3dbc09b1 add rounding bias before the horizontal idct (765->730 dezicyles on duron)
Originally committed as revision 4330 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-06-01 01:18:41 +00:00
Loren Merritt
1d62fc8560 MMX for H.264 iDCT (adapted from x264)
Originally committed as revision 4329 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-05-31 22:48:33 +00:00
Zoltán Hidvégi
3072f0cb2e MMX code for (put|avg)_h264_chroma_mc8
Originally committed as revision 4305 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-05-25 08:05:41 +00:00
Loren Merritt
5cf08f2393 H.264 deblocking optimizations (mmx for chroma_bS4 case, convert existing cases to 8-bit math)
Originally committed as revision 4271 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-05-18 09:17:22 +00:00
Michael Niedermayer
5773a74669 porting the mmx&sse2 (sse2 untested) vp3 idcts to the lavc idct API
Originally committed as revision 4260 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-05-17 18:28:40 +00:00
Michael Niedermayer
b178f758fa disabling vp3 mmx&mmx2 idcts, they must be ported over to the lavc idct API, ill port the vp3 c idct
Originally committed as revision 4255 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-05-17 09:11:48 +00:00
Michael Niedermayer
c998bdd9a0 fix PIC
Originally committed as revision 4204 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-05-08 18:48:19 +00:00
Loren Merritt
42251a2a4f MMX for H.264 deblocking filter
Originally committed as revision 4158 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-04-25 01:01:41 +00:00
Michael Niedermayer
4e492bf107 read 32bit instead of 64bit to avoid overreading and missalignments
Originally committed as revision 4133 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-04-17 13:30:45 +00:00
Martin Drab
4d9ae03b09 optimization and gcc 4.0 bug workaround patch by (Martin Drab >drab kepler.fjfi.cvut cz<)
Originally committed as revision 3945 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-02-07 17:09:48 +00:00
Michael Niedermayer
e42a152bbc x86 cpu capabilities detection rewrite / cleanup
Originally committed as revision 3750 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-12-13 16:11:38 +00:00
Matthieu Castet
e7ddb0cf4c detect sse on athlon-xp patch by (matthieu castet <castet >.< matthieu >at< free >.< fr>)
Originally committed as revision 3729 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-12-05 23:26:43 +00:00
Michael Niedermayer
1c3990dbba H.261 encoder by (Maarten Daniels <maarten dot daniels at luc dot ac dot be>)
Originally committed as revision 3643 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-10-28 10:12:57 +00:00
Aurelien Jacobs
8b4d077fc9 gcc 3.4.3 preversions do not appreciate invalid instruction and operand combinations anymore patch by (Aurelien Jacobs <aurel at gnuage dot org>)
Originally committed as revision 3604 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-10-17 20:27:11 +00:00
Aurelien Jacobs
053dea12f2 adapting existing mmx/mmx2/sse/3dnow optimizations so they work on x86_64 patch by (Aurelien Jacobs <aurel at gnuage dot org>)
Originally committed as revision 3578 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-10-11 02:19:29 +00:00
Michael Niedermayer
178fcca848 1/2 resolution decoding
Originally committed as revision 3507 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-09-25 23:18:58 +00:00
Michael Niedermayer
e69538fa60 h264_qpel8_hv_lowpass_mmx2/3dnow
Originally committed as revision 3446 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-09-08 18:49:12 +00:00
Michael Niedermayer
e772bb8a82 h264_qpel4_hv_lowpass_mmx2/3dnow
alignment fixes

Originally committed as revision 3445 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-09-08 18:25:45 +00:00
Michael Niedermayer
56d8bd5659 optimization
Originally committed as revision 3440 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-09-08 00:52:49 +00:00
Michael Niedermayer
a6e39f45a2 optimization
Originally committed as revision 3439 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-09-07 22:56:50 +00:00
Michael Niedermayer
ed8ffdf46c optimization
Originally committed as revision 3438 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-09-07 17:22:37 +00:00
Michael Niedermayer
437525c473 h264 luma motion compensation in mmx2/3dnow
Originally committed as revision 3437 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-09-07 01:48:45 +00:00
Michael Niedermayer
d6af6b0350 10000l fix and use more mmx2/3dnow code for mpeg4 qpel which has been written and commited long time ago but appearently never used, qpel motion compensation is 5% faster
now

Originally committed as revision 3435 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-09-06 03:17:31 +00:00
Michael Niedermayer
6206f8c920 10l and better MMX/SSE detection for VIA1000
Originally committed as revision 3323 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-07-16 01:54:07 +00:00
Michael Niedermayer
61b3b639e7 dc_precission=11 fix
Originally committed as revision 3291 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-07-06 12:27:36 +00:00
Michael Niedermayer
4c99f2cdbe transmeta crusoe mmx detection by "Nobody/Anonymous - nobody" / sf feature request tracker
Originally committed as revision 3248 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-06-24 22:13:44 +00:00
Michael Niedermayer
1ec4df0fa8 sse8 and nsse in mmx
Originally committed as revision 3206 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-06-08 02:13:44 +00:00
Michael Niedermayer
e96682e6f4 some of the warning fixes by (Michael Roitzsch <mroi at users dot sourceforge dot net>)
Originally committed as revision 3140 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-05-18 17:09:46 +00:00
Michael Niedermayer
77d0e165b1 mmx dct optimization
Originally committed as revision 3100 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-04-30 19:53:54 +00:00
Mike Melanson
7daabccb5d move the 0x80 vector outside of the function, thus saving the compiler
the trouble of having to initialize each byte on the stack individually

Originally committed as revision 3083 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-04-27 04:06:24 +00:00
Mike Melanson
f9ed9d8584 separate out put_signed_pixels_clamped() into its own function and
implement an optimized MMX version of the function

Originally committed as revision 3082 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-04-27 03:58:06 +00:00
Mike Melanson
75b4f3c6d6 yes, that's nice...
Originally committed as revision 3072 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-04-26 00:33:59 +00:00
Mike Melanson
116824d0aa reorganize and simplify the VP3 IDCT stuff
Originally committed as revision 3071 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-04-26 00:20:29 +00:00
Mike Melanson
6186b94c13 hush...
Originally committed as revision 3065 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-04-25 03:38:30 +00:00
Mike Melanson
38acbc3cb9 hook up support for SSE2-optimized VP3 IDCT
Originally committed as revision 3064 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-04-25 03:33:30 +00:00
Mike Melanson
78a16bfec6 add selected SSE2 ASM macros
Originally committed as revision 3063 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-04-25 03:30:19 +00:00
Mike Melanson
5f9379007c SSE2-optimized variant of VP3 IDCT
Originally committed as revision 3062 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-04-25 03:29:10 +00:00
Mike Melanson
daae869903 correct MMX-optimized variant of VP3 IDCT, with comments (thank you
Perl!)

Originally committed as revision 3061 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-04-25 03:26:24 +00:00
Michael Niedermayer
19f82bc824 fixing alignment problems -> SSE2 support enabled again in libavcodec (from ffdshow / milan_cutka)
Originally committed as revision 2990 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-04-09 16:32:49 +00:00
Gildas Bazin
68951ecf0c fft_*() renamed into ff_fft_*() patch by (Gildas Bazin <gbazin at altern dot org>)
Originally committed as revision 2882 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-03-13 21:43:24 +00:00
Mike Melanson
01456e8e86 use optimized VP3 functions where appropriate
Originally committed as revision 2857 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-03-08 02:18:19 +00:00
Mike Melanson
44cb64ee89 seperated out the C-based VP3 DSP functions into a different file; also
ported the MMX-optimized versions of those functions

Originally committed as revision 2855 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-03-08 02:13:45 +00:00
Dmitry Baryshkov
5c0513bda7 attribute used patch by (mitya at school dot ioffe dot ru (Dmitry Baryshkov))
Originally committed as revision 2830 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-02-29 22:10:18 +00:00
Michael Niedermayer
364a179749 quantizer noise shaping optimization
Originally committed as revision 2750 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-02-06 02:12:37 +00:00
Mike Melanson
fb85b027f6 vsad16_mmx2 only applies if encoders are turned on
Originally committed as revision 2736 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-01-31 20:41:07 +00:00
Michael Niedermayer
8fd19ab286 SSE2 fdct by (Balatoni Denes <pnis at coder dot hu>)
Originally committed as revision 2729 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-01-29 01:15:25 +00:00
Michael Niedermayer
8f2ab83318 copyright year update of the files i touched and remembered, things look annoyingly unmaintained otherwise
Originally committed as revision 2686 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-01-10 16:04:55 +00:00
Michael Niedermayer
622348f931 interlaced dct decision cleanup
function moved to dspcontext
  mmx&mmx2 optimized
  change SSE -> SAD as default (better quality)
vbv buffer size command line option in kbyte

Originally committed as revision 2669 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-01-05 22:57:07 +00:00
Denes Balatoni
c953e7976e denoise_dct_sse2() patch by (Balatoni Denes <pnis at coder dot hu>)
Originally committed as revision 2659 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-01-03 20:14:45 +00:00
Michael Niedermayer
783df5f347 denoise_dct_mmx()
Originally committed as revision 2657 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-01-02 22:29:08 +00:00
Michael Niedermayer
bb198e198a interlaced motion estimation
interlaced mpeg2 encoding
  P & B frames
  rate distored interlaced mb decission
  alternate scantable support
4mv encoding fixes (thats also why the regression tests change)
passing height to most dsp functions
interlaced mpeg4 encoding (no direct mode MBs yet)
various related cleanups
disabled old motion estimaton algorithms (log, full, ...) they will either be fixed or removed

Originally committed as revision 2638 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-12-30 16:07:57 +00:00
Michael Niedermayer
d50635cd24 split intra / inter dequantization
Originally committed as revision 2607 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-12-14 02:57:00 +00:00
Aurelien Jacobs
0c11692a1d Here are juste two added #ifdef CONFIG_ENCODERS to allow
libavcodec to compile without CONFIG_ENCODERS defined
patch by (Aurelien Jacobs <aurel at gnuage dot org>)

Originally committed as revision 2604 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-12-13 02:14:18 +00:00
Michael Niedermayer
ba58dabc5c h263 slice structured mode
slice cleanup

Originally committed as revision 2568 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-12-07 01:33:45 +00:00
Michael Niedermayer
3615e2be84 h263_h_loop_filter_mmx
Originally committed as revision 2553 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-12-02 22:02:57 +00:00
Michael Niedermayer
359f98ded9 h263_v_loop_filter_mmx
Originally committed as revision 2552 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-12-02 20:28:10 +00:00
Michael Niedermayer
821cb11f76 noise reduction of dct coefficients
Originally committed as revision 2468 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-11-02 23:19:47 +00:00
Michael Niedermayer
6e0593e80b reorder table instead of wasting instructions to reorder the input to match the table
Originally committed as revision 2436 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-10-25 21:59:28 +00:00
Michael Niedermayer
94789b9e59 10l
Originally committed as revision 2435 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-10-25 19:44:37 +00:00
Michael Niedermayer
99200baec4 optimizing
Originally committed as revision 2428 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-10-24 21:57:04 +00:00
Panagiotis Issaris
1b245cc21c Fixes GCC 3.3.2 warnings patch by (Panagiotis Issaris <takis at lumumba dot luc dot ac dot be>)
Originally committed as revision 2427 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-10-24 20:09:30 +00:00
Alex Beregszaszi
01a2ddaf85 1l
Originally committed as revision 2424 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-10-23 23:24:38 +00:00
Michael Niedermayer
cf3bf5bbaa minor mmx2 optimization if the dct
Originally committed as revision 2423 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-10-23 13:22:20 +00:00
Michael Niedermayer
1745173bc5 inline -> always_inline (842 -> 690 cpu cycles for dct_quantize() difference for the dct itself should be even bigger)
Originally committed as revision 2422 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-10-23 12:59:21 +00:00
Michael Niedermayer
642ccefbc8 move mmx quantizer matrixes out of MpegEncContext (23k -> 7k) (no meassureable slowdown)
Originally committed as revision 2412 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-10-22 11:23:39 +00:00
Mike Melanson
764ef40015 disable encoders where appropriate (patch courtesy of BERO
<bero -at- geocities.co.jp>)

Originally committed as revision 2375 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-10-14 04:15:53 +00:00
Michael Niedermayer
8470540344 mmx2 optimization of huffyuv median encoding
Originally committed as revision 2372 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-10-13 17:27:30 +00:00
Michael Niedermayer
41338ac06f another non const static, maybe its thread save now
Originally committed as revision 2276 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-09-15 19:18:28 +00:00
Fabrice Bellard
b160941221 removed warnings
Originally committed as revision 2248 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-09-09 22:59:16 +00:00
Michael Niedermayer
f818862633 fixing thread safety, this may cause alignment problms (if it does than the stuff should be moved to MpegEncContext)
Originally committed as revision 2124 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-08-15 19:58:27 +00:00
Michael Niedermayer
4fb518c392 the return of the idct with 16bit output by ("Ivan Kalvachev" <ivan at cacad dot com>)
Originally committed as revision 1983 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-06-21 01:11:31 +00:00
BERO
d4961b3523 fastdiv patch by (BERO <bero at geocities dot co dot jp>) with fixes & cleanup by me
Originally committed as revision 1879 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-05-14 15:12:13 +00:00
Zdenek Kabelac
d04fdff161 * oops - reversed last commit
Originally committed as revision 1868 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-05-13 08:21:35 +00:00
Zdenek Kabelac
2def278a45 * sync
Originally committed as revision 1865 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-05-12 17:59:26 +00:00
Michael Niedermayer
5fd74135ad more #ifdef CONFIG_ENCODERS by (Wolfgang Hesseler <qv at multimediaware dot com>)
Originally committed as revision 1843 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-05-07 23:32:45 +00:00
Michael Niedermayer
7db52b63da 10l (hadamard fix)
Originally committed as revision 1771 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-04-14 09:58:16 +00:00
Michael Niedermayer
8e0a3db735 faster hadamard transform
Originally committed as revision 1707 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-03-26 11:29:45 +00:00
Zdenek Kabelac
e5247b5f57 * oooooops - sorry for this one - wrong logic
empty dsp_mask - no change
  FORCE - add,  no FORCE - enabled bits are masked out

Originally committed as revision 1659 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-03-10 11:22:30 +00:00
Zdenek Kabelac
63f6082633 * support FF_MM_FORCE
Originally committed as revision 1643 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-03-07 13:49:10 +00:00
Michael Niedermayer
b0368839ac MpegEncContext.(i)dct_* -> DspContext.(i)dct_*
bitexact cleanup

Originally committed as revision 1617 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-03-03 14:54:00 +00:00
Zdenek Kabelac
2720569a9a * prototypes at one place
Originally committed as revision 1579 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-02-11 16:57:55 +00:00
Zdenek Kabelac
0c1a9edad4 * UINTX -> uintx_t INTX -> intx_t
Originally committed as revision 1578 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-02-11 16:35:48 +00:00
Zdenek Kabelac
5c91a6755b * static,const,compiler warning cleanup
Originally committed as revision 1567 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-02-10 09:35:32 +00:00
Michael Niedermayer
6772518310 finetuneing thresholds/factors
nicer mb decission
a few minor improvements & fixes

Originally committed as revision 1472 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-01-19 17:55:13 +00:00
Felix von Leitner
2a006cd396 sse16 & pix_norm1 optimization patch by (Felix von Leitner <felix-ffmpeg at fefe dot de>) (with some modifications)
Originally committed as revision 1450 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-01-11 22:32:56 +00:00
Michael Niedermayer
88e9ab1f82 typo (noticed by kabi)
Originally committed as revision 1427 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-01-09 22:10:57 +00:00
Michael Niedermayer
db79495376 qpel fix
Originally committed as revision 1426 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-01-09 20:42:37 +00:00
Fabrice Bellard
e1958604fd added define for builtins use - inverse fix by Romain Dolbeau
Originally committed as revision 1410 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-01-07 17:41:43 +00:00
Michael Niedermayer
5a508a98e9 PIC / ebx fix
Originally committed as revision 1408 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-01-07 13:00:38 +00:00
Michael Niedermayer
0b093b6fef more gcc bug workarounds
Originally committed as revision 1407 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-01-07 11:59:34 +00:00
Michael Niedermayer
3df6fa7777 gcc 3.2.2 -O3 bug workaround (older gcc are very likely affected too but didnt check)
Originally committed as revision 1406 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-01-07 11:07:15 +00:00
Michael Niedermayer
c296f66b54 1000l (push & esp) using mangle now ...
Originally committed as revision 1401 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-01-06 09:55:52 +00:00
Michael Niedermayer
3178ee4cc4 qpel in b frames bugfixes
Originally committed as revision 1398 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-01-05 20:59:29 +00:00
Michael Niedermayer
3643bd9c31 slowdown / gcc 2.95.* bug workaround (this should be reversed as soon as gcc 2.95.* support is droped)
Originally committed as revision 1397 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-01-05 19:53:07 +00:00
Michael Niedermayer
826f429ae9 qpel in mmx2/3dnow
qpel refinement quality parameter

Originally committed as revision 1393 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-01-05 15:57:10 +00:00
bubu
ccfddafbd9 warnings patch by (bubu <bubu at bubu dot net>)
Originally committed as revision 1386 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-01-01 15:10:45 +00:00
Michael Niedermayer
1457ab5233 qpel encoding
4mv+b frames encoding finally fixed
chroma ME
5 comparission functions for ME
b frame encoding speedup
wmv2 codec (unfinished)
user specified diamond size for EPZS

Originally committed as revision 1365 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-12-27 23:51:46 +00:00
Michael Niedermayer
843342efb7 100l (sad8x8_x2 had params in wrong order)
Originally committed as revision 1299 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-12-03 11:07:41 +00:00
Francisco Javier Cabello Torres
7ca413b44a via c3 fix patch by (Francisco Javier Cabello Torres <fjcabello at visual-tools dot com>)
Originally committed as revision 1285 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-11-26 16:26:58 +00:00
Francisco Javier Cabello Torres
57fc257642 via c3 detection patch by (Francisco Javier Cabello Torres <fjcabello at visual-tools dot com>)
Originally committed as revision 1275 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-11-25 16:58:41 +00:00
Michael Niedermayer
11f18fafca huffyuv
Originally committed as revision 1211 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-11-14 19:20:04 +00:00
Zdenek Kabelac
85bd552606 * using DSPContext - so each codec could use its local (sub)set of CPU extension
* fixing compiler warning about uninit level

Originally committed as revision 1196 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-11-11 09:44:59 +00:00
Zdenek Kabelac
ec7e0bf0fd * using DSPContext - so each codec could use its local (sub)set of CPU extension
* I think IDCT needs some better generic solution

Originally committed as revision 1195 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-11-11 09:43:43 +00:00
Zdenek Kabelac
eb4b3dd3c3 * using DSPContext - so each codec could use its local (sub)set of CPU extension
Originally committed as revision 1194 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-11-11 09:40:17 +00:00
Michael Niedermayer
3d71589f27 cleanup
Originally committed as revision 1171 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-11-05 17:31:26 +00:00
Fabrice Bellard
bb6f569072 new generic FFT/MDCT code for audio codecs
Originally committed as revision 1088 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-10-28 00:34:08 +00:00
Michael Niedermayer
50eb9cbc44 idct_permutation_type variable, so the permutation type can quickly be identified
Originally committed as revision 1071 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-10-25 13:39:47 +00:00
Michael Niedermayer
2ad1516a6c idct permutation cleanup, idct can be selected per context now
fixing some threadunsafe code

Originally committed as revision 980 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-09-29 22:44:22 +00:00
Michael Niedermayer
084c726ba3 pix_sum16_mmx()
Originally committed as revision 961 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-09-20 10:03:01 +00:00
Arpi
3f09f52adf fdct_mmx -> ff_fdct_mmx (renamed to avoid namespace conflict with xvid)
[found by Kim Minh Kaplan]

Originally committed as revision 960 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-09-19 22:14:53 +00:00
Michael Niedermayer
b318477992 put/avg_pixels16
fixing 2 small qpel bugs

Originally committed as revision 915 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-09-11 12:39:53 +00:00
Michael Niedermayer
1a684b3d53 fixing encoding at high QPs (was broken after the dct accuracy increase due to too small inverse table)
Originally committed as revision 901 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-09-02 16:56:29 +00:00
Michael Niedermayer
ad324c9351 dct cleanup
more accurate mmx dct (dont discard bits for fun)
fixing mmx quantizer bug for qscale%2==1 (bias was slightly wrong)

Originally committed as revision 895 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-09-01 16:52:33 +00:00
Lennert Buytenhek
1565dabc1a be less verbose patch by (Lennert Buytenhek <buytenh at math dot leidenuniv dot nl>)
Originally committed as revision 889 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-09-01 07:26:43 +00:00
Michael Niedermayer
e7fce5e9fb bitexact hack for the simple mmx idct
Originally committed as revision 886 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-08-31 14:17:51 +00:00
Michael Niedermayer
28db7fce02 slow but accurate integer dct from IJG (should be ok with the LGPL as the old DCT is the fast integer DCT from IJG)
per context DCT selection

Originally committed as revision 878 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-08-29 23:55:32 +00:00
Dominik Mierzejewski
0778718635 warning patch by (Dominik Mierzejewski <dominik at rangers dot eu dot org>)
Originally committed as revision 872 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-08-28 08:15:30 +00:00
Michael Niedermayer
9f36153415 dont trash mm0, its still used in the next iteration of the loop (fixes strange horizontal lines on some blocks in b frames on mmx only cpus)
Originally committed as revision 855 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-08-20 19:23:06 +00:00
Michael Niedermayer
87f8cab45b mpeg4 mpeg quantizer encoding
Originally committed as revision 844 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-08-06 23:51:15 +00:00
Michael Niedermayer
4afeaec92f pix_abs mmx2 isnt bit-exact ...
Originally committed as revision 781 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-07-21 00:48:50 +00:00
Zdenek Kabelac
39825f315f * reimplemented remaing avg_ pixel functions
* modified PAVGB mmx macro to select mmx register with FE constant

Originally committed as revision 657 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-06-03 17:35:35 +00:00
Zdenek Kabelac
d3cd07425a * implemented remaing avg_ pixel functions (these are not used offen)
Originally committed as revision 656 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-06-03 17:31:46 +00:00
Zdenek Kabelac
fca0f0e59f * removed MANGLE from macros for setting constants
* using MOVQ_WONE/MOVQ_BFE as two instruction instead of static memory value access
  as its always faster
* PAVGB_MMX macro is using now mm6 -> mm7 is unmodified
* replaced original pixels_xy2_mmx with new faster and equal implementation
* replaced usage of mm7 for other then ZERO contstant in _rnd & _avg file with mm6

Originally committed as revision 632 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-05-30 15:14:56 +00:00
Zdenek Kabelac
ff9657069a * using unrolled loops seems to help to MMX Celerons
* calculating average in parallel to use two MMX units
* disabled xy2 put code - it's producing rouding errors

Originally committed as revision 626 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-05-29 20:00:10 +00:00
Zdenek Kabelac
6aa6ea8e11 * reenabled original xy2 put routine - rounding error is really bad with
the new code
* added PAVGP macros for parallel processing to safe few more cycles on
  celerons

Originally committed as revision 625 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-05-29 19:57:21 +00:00
Zdenek Kabelac
91abb473fb * code with new PAVGB for MMX only CPU splited into separate file
and being compiled in the same way as _avg.h
* PAVG_MMX macros accept also output parameter
* implemented faster put_pixels_xy2, but it has slightly smaller precission.
  But there is not visible difference in the image quality - might be eventualy
  easily switched back (#if 0 #endif)- please check

Originally committed as revision 624 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-05-29 17:16:22 +00:00
Zdenek Kabelac
def60345ad * new mmx code - based upon http://aggregate.org/MAGIC
for now it's rather sneak preview (new functions are nearly 100% faster)

Originally committed as revision 623 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-05-29 14:29:48 +00:00
Zdenek Kabelac
541027e26a * cosmetic minor change
Originally committed as revision 622 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-05-29 14:20:48 +00:00
Zdenek Kabelac
d17b6f0bbb * optimized remaing avg_pixels_xy2
Originally committed as revision 621 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-05-29 08:31:22 +00:00
Zdenek Kabelac
e9c0a38ff0 * optimized avg_* functions (except xy2)
* minor speedup for put_pixels_x2 & cleanup

Originally committed as revision 619 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-05-28 16:35:58 +00:00
Zdenek Kabelac
c0eb0bb717 * more PIC friendly and faster code
Originally committed as revision 616 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-05-27 14:09:10 +00:00
Zdenek Kabelac
5f6230016a * removed TESTCPU_MAIN - not needed for testing
Originally committed as revision 615 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-05-27 11:32:01 +00:00