[FFmpeg-soc] [soc]: r2719 - nellyenc/nellymoserenc.c
Bartlomiej Wolowiec
bartek.wolowiec at gmail.com
Mon Jul 7 22:21:38 CEST 2008
On poniedziałek, 7 lipca 2008, Robert Swain wrote:
> 2008/7/7 bwolowiec <subversion at mplayerhq.hu>:
> > Author: bwolowiec
> > Date: Mon Jul 7 16:41:50 2008
> > New Revision: 2719
> >
> > Log:
> > use ff_sine_window_init
> >
> >
> > Modified:
> > nellyenc/nellymoserenc.c
> >
> > Modified: nellyenc/nellymoserenc.c
> > =========================================================================
> >===== --- nellyenc/nellymoserenc.c (original)
> > +++ nellyenc/nellymoserenc.c Mon Jul 7 16:41:50 2008
> > @@ -116,10 +116,13 @@ static av_cold int encode_init(AVCodecCo
> > dsputil_init(&s->dsp, avctx);
> >
> > /* Generate overlap window */
> > - if (!sine_window[0])
> > - for (i=0 ; i<256; i++) {
> > - sine_window[i] = sin((i + 0.5) / 256.0 * M_PI) /8;
> > + if (!sine_window[0]){
> > + ff_sine_window_init(sine_window, 128);
> > + for (i=0; i<128; i++) {
> > + sine_window[i] /= 8.0;
>
> This isn't thread safe. You must merge the /8 into some other calculation.
Hmm.. yes, you're right. Unfortunately, I don't see now where it can be
calculated. If I don't calculate it in init I will have to calculate it
additionally in every encode_tag, it isn't a good idea. Maybe it's better to
use previous version and don't use ff_sine_window_init...? or maybe (in my
opinion a bit unnatural) such a solution:
ff_sine_window_init(tmp_sine_window, 128);
for (i=0; i<128; i++) {
sine_window[i] = tmp_sine_window[i] / 8.0;
sine_window[255-i] = sine_window[i];
}
>[...]
--
Bartlomiej Wolowiec
More information about the FFmpeg-soc
mailing list