summaryrefslogtreecommitdiff
path: root/apps/codecs/libfaad/ms.c
diff options
context:
space:
mode:
Diffstat (limited to 'apps/codecs/libfaad/ms.c')
-rw-r--r--apps/codecs/libfaad/ms.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/apps/codecs/libfaad/ms.c b/apps/codecs/libfaad/ms.c
index f01e5caa07..b42e95a408 100644
--- a/apps/codecs/libfaad/ms.c
+++ b/apps/codecs/libfaad/ms.c
@@ -41,7 +41,6 @@ void ms_decode(ic_stream *ics, ic_stream *icsr, real_t *l_spec, real_t *r_spec,
41 uint16_t nshort = frame_len/8; 41 uint16_t nshort = frame_len/8;
42 42
43 uint16_t i, k; 43 uint16_t i, k;
44 real_t tmp;
45 44
46 if (ics->ms_mask_present >= 1) 45 if (ics->ms_mask_present >= 1)
47 { 46 {
@@ -58,12 +57,12 @@ void ms_decode(ic_stream *ics, ic_stream *icsr, real_t *l_spec, real_t *r_spec,
58 if ((ics->ms_used[g][sfb] || ics->ms_mask_present == 2) && 57 if ((ics->ms_used[g][sfb] || ics->ms_mask_present == 2) &&
59 !is_intensity(icsr, g, sfb) && !is_noise(ics, g, sfb)) 58 !is_intensity(icsr, g, sfb) && !is_noise(ics, g, sfb))
60 { 59 {
61 for (i = ics->swb_offset[sfb]; i < ics->swb_offset[sfb+1]; i++) 60 k = (group*nshort) + ics->swb_offset[sfb];
61 for (i = ics->swb_offset[sfb]; i < ics->swb_offset[sfb+1]; i++, k++)
62 { 62 {
63 k = (group*nshort) + i; 63 /* L' = L+R, R' = L-R */
64 tmp = l_spec[k] - r_spec[k];
65 l_spec[k] = l_spec[k] + r_spec[k]; 64 l_spec[k] = l_spec[k] + r_spec[k];
66 r_spec[k] = tmp; 65 r_spec[k] = l_spec[k] - (r_spec[k]<<1);
67 } 66 }
68 } 67 }
69 } 68 }