Commit Graph

319 Commits

Author SHA1 Message Date
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 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 e7ebecbf44 The Snow DEcoding routines should be under CONFIG_SNOW_DECODER.
Originally committed as revision 8140 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-02-27 00:24:49 +00:00
Reimar Döffinger f66e4f5f9e Add av_ prefix to clip functions
Originally committed as revision 8122 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-02-25 10:27:12 +00:00
Panagiotis Issaris c6b237da9e Adding H.264 DCT.
Originally committed as revision 7282 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-12-11 15:53:55 +00:00
Måns Rullgård c1173617ce improved stack misalignment warning
Originally committed as revision 7275 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-12-11 09:19:58 +00:00
Michael Niedermayer 6c81ca9906 better warning
Originally committed as revision 7250 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-12-07 18:35:58 +00:00
Michael Niedermayer 6dc7d5da70 ff_check_alignment to warn the user about a missaligned stack
Originally committed as revision 7249 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-12-07 18:33:00 +00:00
Brian Foley 49cef7443a Move copy_block* functions to dsp dsputil.h
Patch by Brian Foley % bfoley A compsoc P nuigalway P ie %
Original thread:
Date: Nov 26, 2006 6:44 PM
Subject: Re: [Ffmpeg-devel] [PATCH] put_mpeg4_qpel16_h_lowpass altivec, take 2

Originally committed as revision 7172 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-11-26 18:25:07 +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 1d50395746 rename squareTbl -> ff_squareTbl
Originally committed as revision 6995 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-11-12 21:48:04 +00:00
Måns Rullgård 55fde95e3b rename cropTbl -> ff_cropTbl
Originally committed as revision 6992 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-11-12 20:08:09 +00:00
Måns Rullgård 36cd306907 rename inverse -> ff_inverse
Originally committed as revision 6990 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-11-12 18:49:36 +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
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
Michael Benjamin 5ca030fed4 ADI Blackfin optimizations
patch by Michael Benjamin, neuroptik gmail com

Originally committed as revision 6282 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-09-16 22:26:09 +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
Kostya Shishkov 6243da0d50 Drop put_vc1_qpel_pixels_tab as they won't be needed anymore.
Originally committed as revision 6152 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-09-02 04:58:51 +00:00
Kostya Shishkov e34350a376 New function for chroma MC (will be used in VC-1)
Originally committed as revision 6150 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-09-02 04:52:00 +00:00
Kostya Shishkov 74691b7bcb New qpel MC functions conforming to VC-1 standard.
Existing DSPUtil functions cause chroma artifacts on some files.

Originally committed as revision 6139 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-08-31 04:44:54 +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
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 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
Kostya Shishkov 64db55aedb New functions in DSPContext for VC-1 decoding
Originally committed as revision 5862 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-07-30 03:45:02 +00:00
Emiliano Parasassi 29c5cdcaec Fix compilation with --disable-decoders.
patch by Emiliano Parasassi, millallo --at-- gmail --dot-- com

Originally committed as revision 5660 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-07-07 11:08:58 +00:00
Michael Niedermayer b482e2d12f CAVS decoder by (Stefan Gehrer stefan.gehrer gmx.de)
Originally committed as revision 5590 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-07-03 00:16:45 +00:00
Diego Pettenò 3a6fc8faf3 Disable w53 and w97 cmp methods when snow encoder is disabled
Patch by Diego 'Flameeyes' Petteno flameeyes AH gentoo PP org
Original thread:
Date: Jun 30, 2006 1:16 AM
Subject: [Ffmpeg-devel] [PATCH] Disable w53 and w97 cmp methods when snow encoder is disabled

Originally committed as revision 5558 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-06-30 07:50:30 +00:00
Loren Merritt 871371a768 Snow: fix subband weighting in wavelet cmp functions. use 32x32 cmp in iterative motion estimation.
Originally committed as revision 5427 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-05-30 05:44:22 +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
Michael Niedermayer 54009d4295 remove mpegvideo.c img resample dependancy
Originally committed as revision 5258 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-03-31 20:43:37 +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
Oded Shimon 13c97a5a0a 10l: Only set *compose97i *add_yblock to dsputils context if we are building with Snow enabled
Patch by Oded Shimon < ods15 AH ods15 POIS dyndns POIS org >

Originally committed as revision 5175 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-03-17 12:08:46 +00:00
Robert Edele 059715a41c First part of a series of speed-enchancing patches.
This one sets up a snow.h and makes snow use the dsputil function pointer
framework to access the three functions that will be implemented in asm
in the other parts of the patchset.
Patch by Robert Edele < yartrebo AH earthlink POIS net>
Original thread:
Subject: [Ffmpeg-devel] [PATCH] Snow mmx+sse2 asm optimizations
Date: Sun, 05 Feb 2006 12:47:14 -0500

Originally committed as revision 5172 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-03-16 19:18:18 +00:00
Loren Merritt ef9d1d1575 h264: special case dc-only idct. ~1% faster overall
Originally committed as revision 4971 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-02-10 06:55:25 +00:00
Steve L'Homme 68b51e58ce MSVC-compatible __align8/__align16 declaration
patch by Steve Lhomme, steve .dot. lhomme .at. free .dot. fr

Originally committed as revision 4942 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-02-05 13:35:17 +00:00
Diego Biurrun 5509bffa88 Update licensing information: The FSF changed postal address.
Originally committed as revision 4842 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-01-12 22:43:26 +00:00
Loren Merritt e8b562087d tweak h264_biweight
Originally committed as revision 4835 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-01-09 03:38:37 +00:00
Michael Niedermayer 80e44bc3bf use h264 MC functions for 2xX Xx2 blocks in snow too
Originally committed as revision 4824 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-01-08 01:50:34 +00:00
Mike Melanson 609009913d ugly, but necessary
Originally committed as revision 4814 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-01-05 06:58:36 +00:00
Michael Niedermayer 27c61ac53d 8x8 integer dct from x264 as cmp function (under CONFIG_GPL)
if this gives better quality then SATD then someone should port the x86 code too or maybe we could even just call it from libx264
the 4x4 one could be tried too ...

Originally committed as revision 4811 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-01-04 16:31:23 +00:00
Diego Biurrun bb270c0896 COSMETICS: tabs --> spaces, some prettyprinting
Originally committed as revision 4764 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-12-22 01:10:11 +00:00
Diego Biurrun 115329f160 COSMETICS: Remove all trailing whitespace.
Originally committed as revision 4749 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-12-17 18:14:38 +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
Loren Merritt 36940eca76 H.264 lossless mode
Originally committed as revision 4381 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-06-17 08:24:35 +00:00
Loren Merritt 43efd19a88 decode H.264 with 8x8 transform.
deblocking is still incorrect with 8x8+cavlc

Originally committed as revision 4339 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-06-02 21:15:20 +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 8b6103da0f porting vp3 idct over to lavc idct api
Originally committed as revision 4257 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-05-17 11:12:04 +00:00
Michael Niedermayer bda1c56c47 minor optimization of the h264 loop filter
Originally committed as revision 4198 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-05-07 16:35:24 +00:00
Michael Niedermayer 8b975b7ca5 put most codecs under ifdefs
Originally committed as revision 4173 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-05-02 22:14:42 +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
Måns Rullgård 88730be651 kill warnings patch by (Måns Rullgård <mru inprovide com>)
Originally committed as revision 3977 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-02-24 19:08:50 +00:00
Michael Niedermayer 91c56db64e use clip_uint8()
Originally committed as revision 3867 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-01-23 11:08:18 +00:00
Loren Merritt 9f2d1b4ff5 H.264 weighted prediction.
Bidirectional weighting has not been tested for bitwise accuracy, but looks correct.

Originally committed as revision 3811 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-01-07 05:56:07 +00:00
Michael Niedermayer 0fd6aea1f1 more flexible frame skip decission
Originally committed as revision 3743 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-12-08 18:02:56 +00:00
Michael Niedermayer 0fa8158d3e move h264 idct to its own file and call via function pointer in DspContext
allow h264 idct to be used for lowres=1

Originally committed as revision 3524 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-09-27 19:47:17 +00:00
Michael Niedermayer 1aa8c57b4a 1/8 resolution decoding
Originally committed as revision 3511 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-09-26 10:01:40 +00:00
Michael Niedermayer 9ca358b951 1/4 resolution decoding
Originally committed as revision 3509 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-09-26 00:18:12 +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 0c62d34341 useless
Originally committed as revision 3436 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-09-06 10:32:47 +00:00
Michael Niedermayer 26efc54e4a 4x4 SSE compare function
wavelet based compare functions
make epzs_motion_search() more flexible so it can be used for a wider range of block sizes
make get_penalty_factor() independant of MpegEncContext

Originally committed as revision 3410 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-08-22 17:16:03 +00:00
Michael Niedermayer 8b69867f2e Minor Patch for shared libs on Mac OSX by (Bill May <wmay at cisco dot com>)
Originally committed as revision 3387 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-08-13 15:30:42 +00:00
Michael Niedermayer d4c5d2adf3 nsse weight
Originally committed as revision 3205 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-06-07 17:30:02 +00:00
Michael Niedermayer e6a2ac3474 noise preserving sum of squares comparission function
Originally committed as revision 3204 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-06-07 03:23:31 +00:00
Michael Niedermayer fdbbf2e0fc rewrite h261 loop filter
no malloc(64) memcpy free stuff
no filter1 A->B then filter2 A->B (yes not B->A)
no incorrect rouding after the 1d filter

Originally committed as revision 3177 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-05-30 21:21:13 +00:00
Michael Niedermayer c6148de232 h261 decoder by (Maarten Daniels <maarten.daniels at student dot luc dot ac dot be>)
Originally committed as revision 3176 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-05-30 20:37:15 +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 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
Michael Niedermayer 44f54ceb30 VIS optimized motion compensation code. by (David S. Miller <davem at redhat dot com>)
ported to ffmpeg by (ja2morri at csclub dot uwaterloo dot ca (james morrison))
useable under LGPL with their agreement

Originally committed as revision 3048 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-04-23 23:38:54 +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
Michael Niedermayer c0a0170c16 fix motion compensation with (x+1/2,y+1/2) MVs
Originally committed as revision 2849 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-03-05 18:44:04 +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
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
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
Michael Niedermayer 5b5404e32f 10l
Originally committed as revision 2550 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-12-01 15:49:10 +00:00
Michael Niedermayer 332f9ac4e3 h263 loop filter
fixed h263 modified quantization
CODEC_FLAG_OBMC

Originally committed as revision 2549 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-12-01 15:23:14 +00:00
Michel Bardiaux 9b87956678 av_log() patch by (Michel Bardiaux <mbardiaux at peaktime dot be>)
Originally committed as revision 2469 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-11-03 13:26:22 +00:00
Roman Shaposhnik 48b1f80012 * adding integer/floating point AAN implementations for DCT 2-4-8
Originally committed as revision 2430 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-10-25 00:32:54 +00:00
Roman Shaposhnik 10acc47995 * introducing dct248 into the DSP context.
* simple/accurate implementation of dct248
   * DV encoding now supports 2-4-8 DCT
   * DV encoding gets a bit faster (but still miles away
     from what I think it could do)
   * misc. DV codec cleanups

Originally committed as revision 2425 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-10-24 18:28:01 +00:00
Michael Niedermayer 65e4c8c919 floating point AAN DCT
Originally committed as revision 2415 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-10-22 18:26:38 +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
Mike Melanson 89ebf4e85e Fix third pixel motion compensation
Originally committed as revision 1990 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-06-27 15:03:58 +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
Mike Melanson da3b975630 added support for B-frames and multiple slices
Originally committed as revision 1974 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-06-19 01:44:44 +00:00
Michael Niedermayer 3d2e8cce3a ASV1 codec
with postprocessing support :)

Originally committed as revision 1891 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-05-19 13:30:59 +00:00
Michael Niedermayer 669ac79cf5 moving the svq3 motion compensation stuff to dsputil (this also means that existing optimized halfpel code is used now ...)
Originally committed as revision 1885 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-05-15 23:30:03 +00:00
Michael Niedermayer d8085ea727 cleanup
Originally committed as revision 1882 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-05-14 23:08:01 +00:00
BERO 0c6bd2ea0a sh4 optimized idct & bswap patch by (BERO <bero at geocities dot co dot jp>)
Originally committed as revision 1877 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-05-14 12:18:49 +00:00
Fabrice Bellard 59cf08ce90 fixed static init
Originally committed as revision 1799 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-04-20 16:16:52 +00:00
Michael Niedermayer 0da71265d8 H264 decoder & demuxer
Originally committed as revision 1732 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-04-04 14:42:28 +00:00
Michael Niedermayer 983e3246b7 per file doxy
Originally committed as revision 1634 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-03-06 11:32:04 +00:00
Michael Niedermayer 2a5700de18 more idiot proof dox
Originally committed as revision 1629 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-03-06 02:04:54 +00:00
Michael Niedermayer a9badb51bf ff_block_permute() dox
Originally committed as revision 1628 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-03-05 23:55:52 +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 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
Michael Niedermayer 76fbb0248a align
Originally committed as revision 1477 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-01-19 20:04:35 +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
Falk Hüffner 6b02692791 sse16_c is totally fucked up (unaligned loads, LONG_MAX is undefined,
uint32 array index -> segv), so let's just use a nice plain
unobfuscated version, which also happens to be faster for me.

Originally committed as revision 1470 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-01-19 12:06:36 +00:00
Michael Niedermayer 1d0eab1dcc bugs
Originally committed as revision 1469 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-01-18 01:37:42 +00:00
Michael Niedermayer 0e15384d9d fixing DCTELEM != short
Originally committed as revision 1462 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-01-15 19:21:21 +00:00
Michael Niedermayer 3a87ac948f more compare functions (rd & bit)
Originally committed as revision 1461 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-01-15 18:05:23 +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
Felix von Leitner d32ac509f6 add/diff_bytes bugfix patch by (Felix von Leitner <felix-ffmpeg at fefe dot de>)
Originally committed as revision 1449 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-01-11 21:04:47 +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
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
Michael Niedermayer 477ab036ad trellis quantization
Originally committed as revision 1380 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-12-31 17:23:56 +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 140cb66321 new PSNR code (now works with chroma, b frames, ...)
rename *_TYPE to FF_*_TYPE for the external API
allow user specified pict_type

Originally committed as revision 1308 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-12-04 21:13:02 +00:00
Brian Foley 9c76bd48aa * altivec and pix_norm patch by Brian Foley
Originally committed as revision 1269 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-11-22 07:53:06 +00:00
Zdenek Kabelac 9a7b310d06 * remaining part of John Ryland's patch
Originally committed as revision 1267 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-11-22 07:24:28 +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 92ddb69283 * init for inv_zigzag_direct16 moved to init block
Originally committed as revision 1204 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-11-12 10:05:21 +00:00
Zdenek Kabelac 5abd509acd * init table once
Originally committed as revision 1203 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-11-12 10:01:27 +00:00
Zdenek Kabelac 4555345704 * using macros to shorten init part
* removing some unused/unneeded code
* unifing some function names

Originally committed as revision 1202 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-11-12 09:47:14 +00:00
Zdenek Kabelac 34dfe896e3 * quick fix for bit exact setting
(FIXME - add this into context flags)

Originally committed as revision 1200 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-11-11 21:44:27 +00:00
Michael Niedermayer c9a2ebc4c0 100l for kabi (fixing qpel)
Originally committed as revision 1198 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-11-11 16:17:25 +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 7801d21d13 optimize block_permute()
optimize dct_quantize_c()
dont permute s->q_inter/intra_matrix

Originally committed as revision 1067 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-10-23 15:11:07 +00:00
Michael Niedermayer 073b013d00 complete mpeg4 GMC decoding support
Originally committed as revision 1046 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-10-16 19:55:49 +00:00
Michael Niedermayer d2975f8d4f warning fixes
Originally committed as revision 1044 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-10-15 15:24:08 +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
Leon van Stuivenberg d46aba2642 ps2 idct patch by (Leon van Stuivenberg <leonvs at iae dot nl>)
Originally committed as revision 963 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-09-23 08:44:24 +00:00
Michael Niedermayer 5596c60cce dont store version for bit-exact tests
Originally committed as revision 948 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-09-14 22:07:35 +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
Brian Foley ab6c65f693 altivec build tidyup patch by (Brian Foley <bfoley at compsoc dot nuigalway dot ie>)
Originally committed as revision 898 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-09-02 08:48:12 +00:00
Heliodoro Tammaro a43bd1d715 patch by Heliodoro Tammaro <helio at interactives dot org>
- configures/builds on all darwin versions
- ffserver builds on darwin (if you have the extra libraries)
- builds correctly (again) on non-darwin ppc (no -faltivec in gcc-3.2)

Originally committed as revision 880 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-08-30 00:05:28 +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
Brian Foley 59925ef204 first cut at altivec support on darwin patch by (Brian Foley <bfoley at compsoc dot nuigalway dot ie>)
Originally committed as revision 875 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-08-28 13:14:36 +00:00
Michael Niedermayer 3aa102be84 new ratecontrol code
Originally committed as revision 862 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-08-25 21:19:50 +00:00
Michael Niedermayer fc2bb4f44d fixing normal mmx idct
Originally committed as revision 835 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-08-02 11:58:02 +00:00
Marko Kreen adc09b2eab adding ff prefix to avoid global name conficts with xvid (patch by Marko Kreen <marko at l-t.ee>)
Originally committed as revision 739 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-07-10 21:01:45 +00:00
Falk Hüffner 02da51ec60 * Move "restrict" fallback to common.h
* Don't include config.h in dsputil.c

Originally committed as revision 721 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-07-04 13:41:27 +00:00
Falk Hüffner c13e1abdec * Detect "retrict" keyword
* Use "restrict" in some dsputil routines (yields large speedup)

Originally committed as revision 716 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-07-04 01:47:32 +00:00
Fabrice Bellard 6d4985bbdf move unaligned access macros to dsputil.h - added unaligned 32 bit store
Originally committed as revision 687 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-06-11 13:43:27 +00:00
Fabrice Bellard 8ee14970d6 added ff_idct_put/add
Originally committed as revision 672 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-06-05 18:48:07 +00:00
Fabrice Bellard 03c94ede93 avoid name clash with libjpeg - added missing externs
Originally committed as revision 660 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-06-04 12:58:40 +00:00
Falk Hüffner 20695ec921 Minor warning cleanup.
Originally committed as revision 654 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-06-03 11:16:11 +00:00
Zdenek Kabelac f0ca2e1b0a * compatibilized declaration with its original definition
(though I'm not sure which one is correct - but they should match)

Originally committed as revision 610 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-05-27 08:34:24 +00:00
Fabrice Bellard ff4ec49e64 license/copyright change
Originally committed as revision 599 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-05-25 22:45:33 +00:00
Fabrice Bellard 57060b1ec7 removed unused stuff - added dsputil_set_bit_exact() support for easier testing
Originally committed as revision 551 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-05-20 16:37:58 +00:00
Michael Niedermayer 10fc842423 fixing alignment for alignment picky cpus
Originally committed as revision 535 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-05-19 01:49:53 +00:00
Fabrice Bellard 6000abfa89 removed useless header includes - use av memory functions
Originally committed as revision 522 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-05-18 23:03:29 +00:00
Michael Niedermayer 59fe111e81 new hopefully faster MC
Originally committed as revision 505 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-05-16 23:29:09 +00:00
Michael Niedermayer 9dbcbd92e8 fixed mpeg4 time stuff on encoding
mpeg4 b-frame enoding support
removed old, out-commented ratecontrol
reuse motion compensation code between encoding & decoding
prefix newly added global functions with ff_ to reduce namespace polution
b-frame ME (unfinished, but working)
added some comments to mpegvideo.h
do MC on encoding only once if possible
bugs? ;)

Originally committed as revision 403 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-04-17 04:32:12 +00:00
Juanjo e4986da9ce - ME setting moved to AVCodecContext/MpegEncContext, no longer a global.
- EPZS ME algo used by default.
- HQ flag activated for ffmpeg.
- Cosmetics ...

Originally committed as revision 398 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-04-14 18:57:51 +00:00
Michael Niedermayer 3bf43d42ed mpeg4 mpeg quantizer support
Originally committed as revision 381 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-04-07 02:03:32 +00:00
Michael Niedermayer 649c00c96d sizeof(s->block) isnt 64*6*2 anymore bugfix
mpeg12 decoding optimization

Originally committed as revision 364 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-03-28 13:41:04 +00:00
Michael Niedermayer ba6802debf 4MV motion estimation (not finished yet)
SAD functions rewritten (8x8 support & MMX2 optimizations)
HQ inter/intra decission
msmpeg4 encoding bugfix (MV where too long)

Originally committed as revision 362 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-03-27 21:25:22 +00:00
Michael Niedermayer 7ff037e9ca q-pel mc fixed
Originally committed as revision 321 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-03-09 14:22:21 +00:00
Michael Niedermayer 44eb495128 divx5-gmc support
q-pel mc support
neither is totally bugfree yet though :(

Originally committed as revision 320 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-03-09 13:01:16 +00:00
Juanjo 43f1708f8b - Added PSNR feature to libavcodec and ffmpeg. By now just Y PSNR until I'm
sure it works ok. Also it's slow, so use it only when you _really_ need to
measure quality.
- Fix libavcodec Makefile to enable profiling.

Originally committed as revision 314 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-02-26 22:14:27 +00:00
Michael Niedermayer 2f349de286 (commit by michael)
mmx & mmx2 quantizer
c dct permutation bugfix
dont copy input on intra only encodings if it can be avoided
dont draw edges on intra only stuff

Originally committed as revision 281 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-01-27 13:30:18 +00:00
Nick Kurshev 1e98dffb7a Alpha optimizations by Falk Hueffner <falk.hueffner@student.uni-tuebingen.de>
Originally committed as revision 274 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-01-20 14:48:02 +00:00
Michael Niedermayer 0a8d8945fd (commit by michael)
faster simple idct in MMX

Originally committed as revision 269 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-01-17 20:00:41 +00:00
Michael Niedermayer badaf88eeb (commit by michael)
dequantizers skip trailing zeros
msmpeg4 non-intra decoder has its dequantizer "build in" now

Originally committed as revision 260 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-01-13 04:59:37 +00:00
Michael Niedermayer 5a24083859 fix for non-mmx runtimedetect encoding bugs - patch by Michael Niedermayer <michaelni@gmx.at>
Originally committed as revision 250 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-01-10 00:51:45 +00:00
Arpi d962f6fd3a new IDCT code by Michael Niedermayer (michaelni@gmx.at) - #define SIMPLE_IDCT to enable
Originally committed as revision 234 to svn://svn.ffmpeg.org/ffmpeg/trunk
2001-12-09 12:04:09 +00:00
Fabrice Bellard c34270f5e8 mlib merge
Originally committed as revision 131 to svn://svn.ffmpeg.org/ffmpeg/trunk
2001-09-16 21:54:00 +00:00
Fabrice Bellard 3d03c0a24e arm optimizations
Originally committed as revision 82 to svn://svn.ffmpeg.org/ffmpeg/trunk
2001-08-13 21:45:36 +00:00
Fabrice Bellard 0cfa9713f7 export for imgconvert usage
Originally committed as revision 67 to svn://svn.ffmpeg.org/ffmpeg/trunk
2001-08-11 19:00:43 +00:00
Fabrice Bellard e0eac44e82 added block permutation functions
Originally committed as revision 45 to svn://svn.ffmpeg.org/ffmpeg/trunk
2001-08-07 22:43:19 +00:00
Arpi 4af7bcc185 MMX/MMXEXT iDCT support, using external functions currently defined in libmpeg2
Gives average 13-20% mpeg decoding speedup on x86 systems.


Originally committed as revision 30 to svn://svn.ffmpeg.org/ffmpeg/trunk
2001-08-03 18:33:03 +00:00
Fabrice Bellard fb16b7e7b3 added emms_c() macro which should can used in c code in both mmx/non mmx cases
Originally committed as revision 12 to svn://svn.ffmpeg.org/ffmpeg/trunk
2001-07-24 20:42:03 +00:00
Fabrice Bellard 980fc7b834 fixed config for direct mplayer build compatibility
Originally committed as revision 8 to svn://svn.ffmpeg.org/ffmpeg/trunk
2001-07-23 20:06:54 +00:00
Fabrice Bellard de6d9b6404 Initial revision
Originally committed as revision 5 to svn://svn.ffmpeg.org/ffmpeg/trunk
2001-07-22 14:18:56 +00:00