aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--libSBRdec/src/env_calc.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/libSBRdec/src/env_calc.cpp b/libSBRdec/src/env_calc.cpp
index 1242833..2efff4f 100644
--- a/libSBRdec/src/env_calc.cpp
+++ b/libSBRdec/src/env_calc.cpp
@@ -1477,8 +1477,10 @@ void calculateSbrEnvelope(
for (k = 0; k < noSubbands; k++) {
int sc = scale_change - pNrgs->nrgGain_e[k] + (sc_change - 1);
- pNrgs->nrgGain[k] >>= sc;
pNrgs->nrgGain_e[k] += sc;
+ if (sc > 31)
+ sc = 31;
+ pNrgs->nrgGain[k] >>= sc;
}
if (!useLP) {