summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libavcodec/siren.c15
1 files changed, 5 insertions, 10 deletions
diff --git a/libavcodec/siren.c b/libavcodec/siren.c
index 2d72fb9572..6c7a8e8b34 100644
--- a/libavcodec/siren.c
+++ b/libavcodec/siren.c
@@ -625,7 +625,7 @@ static int decode_vector(SirenContext *s, int number_of_regions,
coefs_ptr = coefs + (region * REGION_SIZE);
- if (category == 5) {
+ if (category == 5 || category == 6) {
i = 0;
for (j = 0; j < REGION_SIZE; j++) {
if (*coefs_ptr != 0)
@@ -633,15 +633,10 @@ static int decode_vector(SirenContext *s, int number_of_regions,
coefs_ptr++;
}
- noise = decoder_standard_deviation[region] * noise_category5[i];
- } else if (category == 6) {
- i = 0;
- for (j = 0; j < REGION_SIZE; j++) {
- if (*coefs_ptr++ != 0)
- i++;
- }
-
- noise = decoder_standard_deviation[region] * noise_category6[i];
+ if (category == 5) {
+ noise = decoder_standard_deviation[region] * noise_category5[i];
+ } else
+ noise = decoder_standard_deviation[region] * noise_category6[i];
} else if (category == 7) {
noise = decoder_standard_deviation[region] * 0.70711f;
} else {