On Mon, Jul 07, 2008 at 10:55:16PM +0200, Reimar Döffinger wrote:
> Hello,
> On Mon, Jul 07, 2008 at 10:21:38PM +0200, Bartlomiej Wolowiec wrote:
> > On poniedziałek, 7 lipca 2008, Robert Swain wrote:
> > > 2008/7/7 bwolowiec <[EMAIL PROTECTED]>:
> > > > 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];
> > }
>
> Just use your original code on some per-thread buffer (stack or heap
> depending on size) and then memcpy it over.Please everyone stop scaring me ... pval = -pow(2, pows[j]/2048); tmp = s->mdct_out[i*NELLY_BUF_LEN + j] / pval; above is in the current code, that will happily take a /8 besides it obviously should be a * not a / pval, / is slow [...] -- Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB Many things microsoft did are stupid, but not doing something just because microsoft did it is even more stupid. If everything ms did were stupid they would be bankrupt already.
signature.asc
Description: Digital signature
_______________________________________________ FFmpeg-soc mailing list [email protected] https://lists.mplayerhq.hu/mailman/listinfo/ffmpeg-soc
