Hi all!
>>>>> "R" == Robert Hegemann <[EMAIL PROTECTED]> writes:
R> I also get artefacts with lame 3.32 that weren't in lame 3.31.
R> With my -X5 VBR code I can get up to the cutting edge of lames
R> PSY model. And the new code produces on the Glockenspiel SQAM
R> files VERY audible scratchy artefacts, the old code not.
:
R> To the ATH problematic.
once I made a mistake, but finally I found this BUG...
see quantize.c of lame 3.37.
iteration_loop calls compute_ath in line 372. it is before the setting
of 2 variables, scalefac_band_long and scalefac_band_short (line 380).
"compute_ath" routine calculates ATH using these 2 variables.....
But they are not initialized at that moment.
I made a quick patch. It makes better than the original 3.37,
but there are still many problem with Glockenspiel SQAM files.
...uum, maybe some other bugs are still there ....
*** lame3.37/quantize.c Fri Oct 29 15:06:26 1999
--- lame3.37+ath/quantize.c Wed Nov 3 20:32:49 1999
***************
*** 369,374 ****
--- 369,376 ----
if ( frameNum==0 ) {
l3_side->main_data_begin = 0;
memset((char *) &l3_xmin, 0, sizeof(l3_xmin));
+ scalefac_band_long = &sfBandIndex[info->sampling_frequency + (info->version *
+3)].l[0];
+ scalefac_band_short = &sfBandIndex[info->sampling_frequency + (info->version *
+3)].s[0];
compute_ath(info,ATH_l,ATH_s);
}
***************
*** 376,385 ****
mode_gr = (info->version == 1) ? 2 : 1;
//bit_rate = bitrate[info->version][info->lay-1][info->bitrate_index];
//samp_freq = s_freq[info->version][info->sampling_frequency]*1000 +.5;
-
- scalefac_band_long = &sfBandIndex[info->sampling_frequency + (info->version *
3)].l[0];
- scalefac_band_short = &sfBandIndex[info->sampling_frequency + (info->version *
3)].s[0];
-
convert_mdct=0;
convert_psy=0;
--- 378,383 ----
---
Takehiro TOMINAGA // may the source be with you!
--
MP3 ENCODER mailing list ( http://geek.rcc.se/mp3encoder/ )