From: Mark Taylor <[EMAIL PROTECTED]>
Subject: Re: [MP3 ENCODER] more loops...
Date: Thu, 13 Jan 2000 00:11:28 -0700

> I think this is a good idea - But how much slower is it?  It looks
> like the only way to terminate the loop now is when all the
> scalefactors in bands with distortion are amplified to their max
> value, and I'm guessing this takes many more iterations?

It makes slow 10%-20%. And the improvement of sound quality is
not so large.
But some sources (ex. apploud.wav) will be good results.

In my test, many conditions for exiting the loop were "over==0" or
"loop_break()".
If check with loop_break() was removed, exit-loop conditions were
"no sfb were amplified" or "over==0".
I didn't see where "scalefacs are too large".
I think this suggests LAME have room for more improvement.
It will not occur that all scalefacs grow to maximum value.

I think there are two points that should be changed.

1: if one scalefac of higher sfb(11..20) reach to 8, scalefacs of
  lower sfb(0..10) can not grow more.

2: if one scalefac reach to limit value, other scalefacs can not
  grow more, even if they can use more bits potentially.

It's easy to solve point 1, but improvement of sound quality
is very small.


> 
> A couple of minor comments: The preflag check can probably be left in
> scale_bitcount() where it is now?

...it's my misunderstanding. Please ignore "if (!cod_info->preflag){ }"
block and preflagsave.
There were mistakes in where the scalefacs of short block are checked.

- if (scalefac->l[gr][ch][sfb] == 15)
+ if (scalefac->s[gr][ch][sfb][i] == 15)

- if (scalefac->l[gr][ch][sfb] == 7)
+ if (scalefac->s[gr][ch][sfb][i] == 7)



Iwasa Kazmi
[EMAIL PROTECTED]
--
MP3 ENCODER mailing list ( http://geek.rcc.se/mp3encoder/ )

Reply via email to