Commit 74561037 authored by reimar's avatar reimar

Do not initialize ff_cos_* tables again in rdft_init, they are already

initialized by ff_fft_init and using different code can result in slightly
different values, in addition it crashes when the tables are hardcoded.
On amd64 this slightly changes qdm2 output.


git-svn-id: file:///var/local/repositories/ffmpeg/trunk@20237 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b
parent 169ccb63
...@@ -840,7 +840,7 @@ typedef struct { ...@@ -840,7 +840,7 @@ typedef struct {
int sign_convention; int sign_convention;
/* pre/post rotation tables */ /* pre/post rotation tables */
FFTSample *tcos; const FFTSample *tcos;
FFTSample *tsin; FFTSample *tsin;
FFTContext fft; FFTContext fft;
} RDFTContext; } RDFTContext;
......
...@@ -64,7 +64,6 @@ av_cold int ff_rdft_init(RDFTContext *s, int nbits, enum RDFTransformType trans) ...@@ -64,7 +64,6 @@ av_cold int ff_rdft_init(RDFTContext *s, int nbits, enum RDFTransformType trans)
s->tcos = ff_cos_tabs[nbits-4]; s->tcos = ff_cos_tabs[nbits-4];
s->tsin = ff_sin_tabs[nbits-4]+(trans == RDFT || trans == IRIDFT)*(n>>2); s->tsin = ff_sin_tabs[nbits-4]+(trans == RDFT || trans == IRIDFT)*(n>>2);
for (i = 0; i < (n>>2); i++) { for (i = 0; i < (n>>2); i++) {
s->tcos[i] = cos(i*theta);
s->tsin[i] = sin(i*theta); s->tsin[i] = sin(i*theta);
} }
return 0; return 0;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment