diff options
author | Loren Merritt <lorenm@u.washington.edu> | 2006-08-08 04:01:04 +0000 |
---|---|---|
committer | Loren Merritt <lorenm@u.washington.edu> | 2006-08-08 04:01:04 +0000 |
commit | bcfa3e58ee0ec7f8a739867ea66f9acb834e498a (patch) | |
tree | a7aec9632c7157f03266a46861d4a898ee2340f5 /libavcodec/dsputil.h | |
parent | 2c5ad5fd74a44145459e74acdf486c084f8de4b4 (diff) | |
download | ffmpeg-bcfa3e58ee0ec7f8a739867ea66f9acb834e498a.tar.gz |
3dnow2 implementation of imdct.
6% faster vorbis and wma.
Originally committed as revision 5954 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavcodec/dsputil.h')
-rw-r--r-- | libavcodec/dsputil.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/libavcodec/dsputil.h b/libavcodec/dsputil.h index a608350294..1083c39c71 100644 --- a/libavcodec/dsputil.h +++ b/libavcodec/dsputil.h @@ -594,6 +594,8 @@ void get_psnr(uint8_t *orig_image[3], uint8_t *coded_image[3], FFTSample type */ typedef float FFTSample; +struct MDCTContext; + typedef struct FFTComplex { FFTSample re, im; } FFTComplex; @@ -605,6 +607,8 @@ typedef struct FFTContext { FFTComplex *exptab; FFTComplex *exptab1; /* only used by SSE code */ void (*fft_calc)(struct FFTContext *s, FFTComplex *z); + void (*imdct_calc)(struct MDCTContext *s, FFTSample *output, + const FFTSample *input, FFTSample *tmp); } FFTContext; int ff_fft_init(FFTContext *s, int nbits, int inverse); @@ -635,6 +639,8 @@ typedef struct MDCTContext { int ff_mdct_init(MDCTContext *s, int nbits, int inverse); void ff_imdct_calc(MDCTContext *s, FFTSample *output, const FFTSample *input, FFTSample *tmp); +void ff_imdct_calc_3dn2(MDCTContext *s, FFTSample *output, + const FFTSample *input, FFTSample *tmp); void ff_mdct_calc(MDCTContext *s, FFTSample *out, const FFTSample *input, FFTSample *tmp); void ff_mdct_end(MDCTContext *s); |