|
@@ -582,14 +582,14 @@ static void calc_input_response(WMAVoiceContext *s, float *lpcs, |
|
|
(5.0 / 14.7)); |
|
|
(5.0 / 14.7)); |
|
|
angle_mul = gain_mul * (8.0 * M_LN10 / M_PI); |
|
|
angle_mul = gain_mul * (8.0 * M_LN10 / M_PI); |
|
|
for (n = 0; n <= 64; n++) { |
|
|
for (n = 0; n <= 64; n++) { |
|
|
float pow; |
|
|
|
|
|
|
|
|
float pwr; |
|
|
|
|
|
|
|
|
idx = FFMAX(0, lrint((max - lpcs[n]) * irange) - 1); |
|
|
idx = FFMAX(0, lrint((max - lpcs[n]) * irange) - 1); |
|
|
pow = wmavoice_denoise_power_table[s->denoise_strength][idx]; |
|
|
|
|
|
lpcs[n] = angle_mul * pow; |
|
|
|
|
|
|
|
|
pwr = wmavoice_denoise_power_table[s->denoise_strength][idx]; |
|
|
|
|
|
lpcs[n] = angle_mul * pwr; |
|
|
|
|
|
|
|
|
/* 70.57 =~ 1/log10(1.0331663) */ |
|
|
/* 70.57 =~ 1/log10(1.0331663) */ |
|
|
idx = (pow * gain_mul - 0.0295) * 70.570526123; |
|
|
|
|
|
|
|
|
idx = (pwr * gain_mul - 0.0295) * 70.570526123; |
|
|
if (idx > 127) { // fallback if index falls outside table range |
|
|
if (idx > 127) { // fallback if index falls outside table range |
|
|
coeffs[n] = wmavoice_energy_table[127] * |
|
|
coeffs[n] = wmavoice_energy_table[127] * |
|
|
powf(1.0331663, idx - 127); |
|
|
powf(1.0331663, idx - 127); |
|
|