mirror of
https://github.com/xenia-project/FFmpeg.git
synced 2025-02-26 07:05:59 +00:00
avcodec/aacdec_template: Merge 3 #ifs related to noise handling
Fewer #if and fewer lines Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
This commit is contained in:
parent
3d5863d739
commit
bc33c99d56
@ -1673,25 +1673,24 @@ static int decode_spectrum_and_dequant(AACContext *ac, INTFLOAT coef[1024],
|
|||||||
}
|
}
|
||||||
} else if (cbt_m1 == NOISE_BT - 1) {
|
} else if (cbt_m1 == NOISE_BT - 1) {
|
||||||
for (group = 0; group < (AAC_SIGNE)g_len; group++, cfo+=128) {
|
for (group = 0; group < (AAC_SIGNE)g_len; group++, cfo+=128) {
|
||||||
#if !USE_FIXED
|
|
||||||
float scale;
|
|
||||||
#endif /* !USE_FIXED */
|
|
||||||
INTFLOAT band_energy;
|
INTFLOAT band_energy;
|
||||||
|
#if USE_FIXED
|
||||||
for (k = 0; k < off_len; k++) {
|
for (k = 0; k < off_len; k++) {
|
||||||
ac->random_state = lcg_random(ac->random_state);
|
ac->random_state = lcg_random(ac->random_state);
|
||||||
#if USE_FIXED
|
|
||||||
cfo[k] = ac->random_state >> 3;
|
cfo[k] = ac->random_state >> 3;
|
||||||
#else
|
|
||||||
cfo[k] = ac->random_state;
|
|
||||||
#endif /* USE_FIXED */
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#if USE_FIXED
|
|
||||||
band_energy = ac->fdsp->scalarproduct_fixed(cfo, cfo, off_len);
|
band_energy = ac->fdsp->scalarproduct_fixed(cfo, cfo, off_len);
|
||||||
band_energy = fixed_sqrt(band_energy, 31);
|
band_energy = fixed_sqrt(band_energy, 31);
|
||||||
noise_scale(cfo, sf[idx], band_energy, off_len);
|
noise_scale(cfo, sf[idx], band_energy, off_len);
|
||||||
#else
|
#else
|
||||||
|
float scale;
|
||||||
|
|
||||||
|
for (k = 0; k < off_len; k++) {
|
||||||
|
ac->random_state = lcg_random(ac->random_state);
|
||||||
|
cfo[k] = ac->random_state;
|
||||||
|
}
|
||||||
|
|
||||||
band_energy = ac->fdsp->scalarproduct_float(cfo, cfo, off_len);
|
band_energy = ac->fdsp->scalarproduct_float(cfo, cfo, off_len);
|
||||||
scale = sf[idx] / sqrtf(band_energy);
|
scale = sf[idx] / sqrtf(band_energy);
|
||||||
ac->fdsp->vector_fmul_scalar(cfo, cfo, scale, off_len);
|
ac->fdsp->vector_fmul_scalar(cfo, cfo, scale, off_len);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user