[FFmpeg-cvslog] r21338 - in trunk: configure libavcodec/Makefile libavcodec/dct.c libavcodec/dsputil.h libavcodec/fft-test.c
Vitor Sessak
vitor1001
Wed Jan 20 04:06:59 CET 2010
M?ns Rullg?rd wrote:
> vitor <subversion at mplayerhq.hu> writes:
>
>> +void ff_dct_calc(DCTContext *s, FFTSample *data)
>> +{
>> + ff_dct_calc_c(s, data);
>> +}
>>
>> Modified: trunk/libavcodec/dsputil.h
>> ==============================================================================
>> --- trunk/libavcodec/dsputil.h Wed Jan 20 01:34:10 2010 (r21337)
>> +++ trunk/libavcodec/dsputil.h Wed Jan 20 01:39:47 2010 (r21338)
>> @@ -899,6 +899,26 @@ int ff_rdft_init(RDFTContext *s, int nbi
>> void ff_rdft_calc(RDFTContext *s, FFTSample *data);
>> void ff_rdft_end(RDFTContext *s);
>>
>> +/* Discrete Cosine Transform */
>> +
>> +typedef struct {
>> + int nbits;
>> + int inverse;
>> + FFTSample *data;
>> + RDFTContext rdft;
>> + const float *costab;
>> + FFTSample *csc2;
>> +} DCTContext;
>> +
>> +/**
>> + * Sets up (Inverse)DCT.
>> + * @param nbits log2 of the length of the input array
>> + * @param inverse >0 forward transform, <0 inverse transform
>> + */
>> +int ff_dct_init(DCTContext *s, int nbits, int inverse);
>> +void ff_dct_calc(DCTContext *s, FFTSample *data);
>> +void ff_dct_end (DCTContext *s);
>> +
>> #define WRAPPER8_16(name8, name16)\
>> static int name16(void /*MpegEncContext*/ *s, uint8_t *dst, uint8_t *src, int stride, int h){\
>> return name8(s, dst , src , stride, h)\
>
> Sorry for late comment...
>
> You should use a function pointer in DCTContext pointing at
> ff_dct_calc_c or some simd version,
I thought it would make more sense doing this when we would have a SIMD
version of it. ITOH, just renaming ff_dct_calc_c() to ff_dct_calc()
would make a patch adding simd less readable.
-Vitor
More information about the ffmpeg-cvslog
mailing list