Måns Rullgård
4693b031a3
Move H264 dsputil functions into their own struct
...
This moves the H264-specific functions from DSPContext to the new
H264DSPContext. The code is made conditional on CONFIG_H264DSP
which is set by the codecs requiring it.
The qpel and chroma MC functions are not moved as these are used by
non-h264 code.
Originally committed as revision 22565 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-16 01:17:00 +00:00
Måns Rullgård
05aec7bb87
Separate DWT from snow and dsputil
...
This moves the DWT functions from snow.c and dsputil.c to a file of
their own. A new struct, DWTContext, holds the function pointers
previously part of DSPContext.
Originally committed as revision 22522 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-14 17:50:12 +00:00
Måns Rullgård
2023cfea0f
Add some required casts
...
These casts are correct and safe. The pointers are guaranteed to
have proper alignment, and aliasing is not a problem with character
types.
Originally committed as revision 22446 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-11 02:32:01 +00:00
Måns Rullgård
98713e55b4
Move ff_spatial_dwt() prototype to snow.h
...
Originally committed as revision 22265 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-06 22:37:03 +00:00
Måns Rullgård
965363f81a
Move some dsp func prototypes to dsputil.h; they are defined in dsputil.c
...
Originally committed as revision 22264 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-06 22:36:59 +00:00
Måns Rullgård
4f602a0415
Move some VC1 dsp prototypes to dsputil.h; they are defined in dsputil.c
...
Also fix function definitions to match prototypes (missing const).
Originally committed as revision 22263 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-06 22:36:55 +00:00
Måns Rullgård
7de9da9ba7
Move prototypes for various dsputil init functions to dsputil.h
...
Originally committed as revision 22261 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-06 22:36:49 +00:00
Måns Rullgård
3da1180409
Move some prototypes from dsputil.c to reasonable header files
...
Originally committed as revision 22260 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-06 22:36:45 +00:00
Måns Rullgård
84dc2d8afa
Remove DECLARE_ALIGNED_{8,16} macros
...
These macros are redundant. All uses are replaced with the generic
DECLARE_ALIGNED macro instead.
Originally committed as revision 22233 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-06 14:24:59 +00:00
Kostya Shishkov
342c7dfdbb
Bink video decoder
...
Originally committed as revision 21937 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-21 13:28:46 +00:00
Måns Rullgård
40d1122752
Use LOCAL_ALIGNED macro for local arrays
...
Originally committed as revision 21866 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-17 20:36:20 +00:00
Måns Rullgård
2480c390bd
Simplify some declarations of aligned arrays
...
If DECLARE_ALIGNED_16 works on uint64_t it will work smaller types too.
Originally committed as revision 21863 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-17 20:36:10 +00:00
Reimar Döffinger
e62a55b92e
The SSSE3 version of dct_quantize in mpegvideo_mmx_template.c needs
...
inv_zigzag_direct16 16-byte aligned, so mark it appropriately.
Fixes encoder crashes e.g. with MPlayer's -vf lavc.
Originally committed as revision 21389 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-22 23:40:18 +00:00
Måns Rullgård
c67278098d
Move array specifiers outside DECLARE_ALIGNED() invocations
...
Originally committed as revision 21377 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-22 03:25:11 +00:00
Michael Niedermayer
3f50965b28
Mark the h264 c loop filter as av_always_inline av_flatten to make sure its
...
all inlined, its small and horizontal & vertical versions are build out of
them. no change as gcc already did this.
Originally committed as revision 21333 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-19 22:54:13 +00:00
Michael Niedermayer
c9640c17ac
skip outer pixels if possible in h264_loop_filter_luma_c().
...
overall 3.7% faster loop filtering (C version only)
Originally committed as revision 21332 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-19 22:46:58 +00:00
Alexander Strange
f267d3ac75
Implement alpha channel decoding for BGR HuffYUV.
...
Since BGR24 is decoded as BGR32, fill its alpha channel with 255
using the appropriate predictors.
Originally committed as revision 21211 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-14 01:32:49 +00:00
Zuxy Meng
0752cd39d2
More av_cold for infrequently called functions.
...
Originally committed as revision 21179 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-13 02:16:00 +00:00
Diego Biurrun
4052cbf161
Get rid of pointless CONFIG_ANY_H263 preprocessor definition.
...
Originally committed as revision 20975 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-12-30 11:33:59 +00:00
Diego Biurrun
af818f7a66
Add required header #includes for mpegvideo.h and config.h.
...
Originally committed as revision 20974 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-12-30 11:22:41 +00:00
Loren Merritt
b1159ad928
refactor and optimize scalarproduct
...
29-105% faster apply_filter, 6-90% faster ape decoding on core2
(Any x86 other than core2 probably gets much less, since this is mostly due to ssse3 cachesplit avoidance and I haven't written the full gamut of other cachesplit modes.)
9-123% faster ape decoding on G4.
Originally committed as revision 20739 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-12-05 15:09:10 +00:00
Loren Merritt
e17ccf60fe
huffyuv: add some const qualifiers
...
Originally committed as revision 20290 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-18 20:47:25 +00:00
Justin Ruggles
f4d608e344
add CONFIG_LPC to the build system for lpc dsputil functions. fixes build
...
problems when lpc.c is not compiled.
Originally committed as revision 20285 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-18 19:51:18 +00:00
Justin Ruggles
fde82ca7e4
Move autocorrelation function from flacenc.c to lpc.c. Also rename the
...
corresponding dsputil functions and remove their dependency on the FLAC
encoder.
Fixes Issue1486.
Originally committed as revision 20266 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-17 21:00:39 +00:00
Alexander Strange
f076fe4422
Remove a meaningless 'inline' from add_hfyu_left_prediction_bgr32_c().
...
Originally committed as revision 20260 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-16 23:06:55 +00:00
Alexander Strange
2d4bbdecee
Huffyuv: Add missing const to src pointers in dsputil functions.
...
Originally committed as revision 20259 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-16 23:04:41 +00:00
Nathan Caldwell
73c6f59830
Move HuffYUV left prediction to dsputil.
...
Patch by Nathan Caldwell, saintdev gmail
Originally committed as revision 20179 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-06 16:06:15 +00:00
Måns Rullgård
952e872198
Drop unused args from vector_fmul_add_add, simpify code, and rename
...
The src3 and step arguments to vector_fmul_add_add() are always zero
and one, respectively. This removes these arguments from the function,
simplifies the code accordingly, and renames the function to better
match the new operation.
Originally committed as revision 20061 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-27 16:51:54 +00:00
Måns Rullgård
53b572118e
Add some dsputil functions useful for AAC decoder
...
Originally committed as revision 19955 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-22 00:48:41 +00:00
Loren Merritt
1a918c08e4
extend ff_inverse[], and fix its documentation
...
Originally committed as revision 19942 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-21 03:01:57 +00:00
Vitor Sessak
50e23ae9d3
Mark parameter src of vector_clipf() as const
...
Originally committed as revision 19729 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-08-27 15:38:59 +00:00
Vitor Sessak
0a68cd876e
SSE optimized vector_clipf(). 10% faster TwinVQ decoding.
...
Originally committed as revision 19728 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-08-27 14:49:36 +00:00
Måns Rullgård
95d36bdbc3
dsputil: declare some arrays 16-byte aligned
...
These arrays are passed to functions for which we promise 16-byte
alignment, so make sure we fulfil that promise.
Originally committed as revision 19716 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-08-26 13:17:06 +00:00
Reimar Döffinger
64e657fd2c
100l, inv_zigzag_direct16 must be aligned to 16 bytes for dct_quantize_SSE2
...
(which uses movdqa to xmm1 on inv_zigzag_direct16).
Originally committed as revision 19711 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-08-26 09:10:51 +00:00
Måns Rullgård
dd36b88b46
Remove explicit init to zero of static inv_zigzag_direct16
...
Originally committed as revision 19704 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-08-25 23:28:30 +00:00
Måns Rullgård
90d43b52e1
Get rid of large stack array in rd8x8_c()
...
Originally committed as revision 19671 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-08-19 21:59:44 +00:00
Diego Biurrun
9be6f0d2f8
Do not check for both CONFIG_VC1_DECODER and CONFIG_WMV3_DECODER,
...
the former depends upon the latter.
Originally committed as revision 19533 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-29 09:54:49 +00:00
Diego Biurrun
99e5a9d1ea
Do not redundantly check for both CONFIG_THEORA_DECODER and CONFIG_VP3_DECODER.
...
The Theora decoder depends on the VP3 decoder.
Originally committed as revision 19492 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-22 22:27:10 +00:00
Ramiro Polla
da00b52578
Don't #if a function declaration and properly indent it.
...
Originally committed as revision 18722 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-30 21:34:56 +00:00
Ramiro Polla
bf4f19dc65
mlpdec: Move MLP's filter_channel() to dsputils.
...
Originally committed as revision 18721 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-30 12:30:05 +00:00
David Conrad
8013da7364
VC1: add and use avg_no_rnd chroma MC functions
...
Originally committed as revision 18518 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-14 23:56:10 +00:00
David Conrad
c374691b28
Rename put_no_rnd_h264_chroma* to reflect its usage in VC1 only
...
Originally committed as revision 18517 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-14 23:55:39 +00:00
David Conrad
6cecd63005
VC1: Do qpel when needed for both MVs in a B frame
...
Originally committed as revision 18511 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-14 19:26:33 +00:00
Ramiro Polla
d4efacff64
Use intptr_t when casting pointers to int.
...
Originally committed as revision 18192 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-03-26 01:34:02 +00:00
Roman Shaposhnik
7fb7f6367a
Adding 2 intra 8x8 cmp functions: vsad, vsse
...
Originally committed as revision 17448 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-19 00:30:24 +00:00
Roman Shaposhnik
3899eb2f65
Making the arrays accomodate an extra intra 8x8 cmp function
...
Originally committed as revision 17446 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-19 00:28:08 +00:00
Aurelien Jacobs
26f3ae828b
move vp6_filter_diag4() to a new vp6dsp.c file and use it throught dsputil
...
Originally committed as revision 17111 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-09 23:37:31 +00:00
Loren Merritt
3daa434a40
ff_add_hfyu_median_prediction_mmx2
...
overall ffvhuff decoding speedup: 28% on core2, 25% on k8.
Originally committed as revision 17059 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-08 17:45:30 +00:00
Diego Biurrun
bc4cccd483
Remove H.264 encoder initialization.
...
We have no H.264 encoder to speak of and this produces warnings.
Originally committed as revision 16914 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-01 14:07:08 +00:00
Diego Biurrun
bad5537e2c
Use full internal pathname in doxygen @file directives.
...
Otherwise doxygen complains about ambiguous filenames when files exist
under the same name in different subdirectories.
Originally committed as revision 16912 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-01 02:00:19 +00:00