Unified · Split
| @@ -716,7 +716,10 @@ static void L3_decode_scalefactors(const uint8_t *hdr, uint8_t *ist_pos, bs_t *b · 715 unmodified lines | |||
| 716 | 716 | ||
| 717 | for (i = 0; i < (int)(gr->n_long_sfb + gr->n_short_sfb); i++) | 717 | for (i = 0; i < (int)(gr->n_long_sfb + gr->n_short_sfb); i++) |
| 718 | { | 718 | { |
| 719 | scf[i] = gain*L3_ldexp_q2(iscf[i] << scf_shift); | 719 | if (((iscf[i] << scf_shift) >> 2) >= 31) |
| 720 | scf[i] = gain*L3_ldexp_q2((iscf[i] << scf_shift) - 30*4) * /*L3_ldexp_q2(30*4)*/ 9.313226e-10f; | ||
| 721 | else | ||
| 722 | scf[i] = gain*L3_ldexp_q2(iscf[i] << scf_shift); | ||
| 720 | } | 723 | } |
| 721 | } | 724 | } |
| 722 | 725 | ||