summaryrefslogtreecommitdiff
path: root/apps/codecs/libfaad/ps_dec.c
diff options
context:
space:
mode:
Diffstat (limited to 'apps/codecs/libfaad/ps_dec.c')
-rw-r--r--apps/codecs/libfaad/ps_dec.c22
1 files changed, 15 insertions, 7 deletions
diff --git a/apps/codecs/libfaad/ps_dec.c b/apps/codecs/libfaad/ps_dec.c
index cfc5629cbe..b219f58ae0 100644
--- a/apps/codecs/libfaad/ps_dec.c
+++ b/apps/codecs/libfaad/ps_dec.c
@@ -159,10 +159,10 @@ typedef struct
159 159
160/* static function declarations */ 160/* static function declarations */
161static void ps_data_decode(ps_info *ps); 161static void ps_data_decode(ps_info *ps);
162static hyb_info *hybrid_init(); 162static hyb_info *hybrid_init(void);
163static void channel_filter2(hyb_info *hyb, uint8_t frame_len, const real_t *filter, 163static void channel_filter2(hyb_info *hyb, uint8_t frame_len, const real_t *filter,
164 qmf_t *buffer, qmf_t **X_hybrid); 164 qmf_t *buffer, qmf_t **X_hybrid);
165static void INLINE DCT3_4_unscaled(real_t *y, real_t *x); 165static INLINE void DCT3_4_unscaled(real_t *y, real_t *x);
166static void channel_filter8(hyb_info *hyb, uint8_t frame_len, const real_t *filter, 166static void channel_filter8(hyb_info *hyb, uint8_t frame_len, const real_t *filter,
167 qmf_t *buffer, qmf_t **X_hybrid); 167 qmf_t *buffer, qmf_t **X_hybrid);
168static void hybrid_analysis(hyb_info *hyb, qmf_t X[32][64], qmf_t X_hybrid[32][32], 168static void hybrid_analysis(hyb_info *hyb, qmf_t X[32][64], qmf_t X_hybrid[32][32],
@@ -256,6 +256,7 @@ static void channel_filter2(hyb_info *hyb, uint8_t frame_len, const real_t *filt
256{ 256{
257 uint8_t i; 257 uint8_t i;
258 258
259 (void)hyb;
259 for (i = 0; i < frame_len; i++) 260 for (i = 0; i < frame_len; i++)
260 { 261 {
261 real_t r0 = MUL_F(filter[0],(QMF_RE(buffer[0+i]) + QMF_RE(buffer[12+i]))); 262 real_t r0 = MUL_F(filter[0],(QMF_RE(buffer[0+i]) + QMF_RE(buffer[12+i])));
@@ -290,6 +291,7 @@ static void channel_filter4(hyb_info *hyb, uint8_t frame_len, const real_t *filt
290 uint8_t i; 291 uint8_t i;
291 real_t input_re1[2], input_re2[2], input_im1[2], input_im2[2]; 292 real_t input_re1[2], input_re2[2], input_im1[2], input_im2[2];
292 293
294 (void)hyb;
293 for (i = 0; i < frame_len; i++) 295 for (i = 0; i < frame_len; i++)
294 { 296 {
295 input_re1[0] = -MUL_F(filter[2], (QMF_RE(buffer[i+2]) + QMF_RE(buffer[i+10]))) + 297 input_re1[0] = -MUL_F(filter[2], (QMF_RE(buffer[i+2]) + QMF_RE(buffer[i+10]))) +
@@ -338,7 +340,7 @@ static void channel_filter4(hyb_info *hyb, uint8_t frame_len, const real_t *filt
338 } 340 }
339} 341}
340 342
341static void INLINE DCT3_4_unscaled(real_t *y, real_t *x) 343static INLINE void DCT3_4_unscaled(real_t *y, real_t *x)
342{ 344{
343 real_t f0, f1, f2, f3, f4, f5, f6, f7, f8; 345 real_t f0, f1, f2, f3, f4, f5, f6, f7, f8;
344 346
@@ -365,6 +367,7 @@ static void channel_filter8(hyb_info *hyb, uint8_t frame_len, const real_t *filt
365 real_t input_re1[4], input_re2[4], input_im1[4], input_im2[4]; 367 real_t input_re1[4], input_re2[4], input_im1[4], input_im2[4];
366 real_t x[4]; 368 real_t x[4];
367 369
370 (void)hyb;
368 for (i = 0; i < frame_len; i++) 371 for (i = 0; i < frame_len; i++)
369 { 372 {
370 input_re1[0] = MUL_F(filter[6],QMF_RE(buffer[6+i])); 373 input_re1[0] = MUL_F(filter[6],QMF_RE(buffer[6+i]));
@@ -429,7 +432,7 @@ static void channel_filter8(hyb_info *hyb, uint8_t frame_len, const real_t *filt
429 } 432 }
430} 433}
431 434
432static void INLINE DCT3_6_unscaled(real_t *y, real_t *x) 435static INLINE void DCT3_6_unscaled(real_t *y, real_t *x)
433{ 436{
434 real_t f0, f1, f2, f3, f4, f5, f6, f7; 437 real_t f0, f1, f2, f3, f4, f5, f6, f7;
435 438
@@ -457,6 +460,7 @@ static void channel_filter12(hyb_info *hyb, uint8_t frame_len, const real_t *fil
457 real_t input_re1[6], input_re2[6], input_im1[6], input_im2[6]; 460 real_t input_re1[6], input_re2[6], input_im1[6], input_im2[6];
458 real_t out_re1[6], out_re2[6], out_im1[6], out_im2[6]; 461 real_t out_re1[6], out_re2[6], out_im1[6], out_im2[6];
459 462
463 (void)hyb;
460 for (i = 0; i < frame_len; i++) 464 for (i = 0; i < frame_len; i++)
461 { 465 {
462 for (n = 0; n < 6; n++) 466 for (n = 0; n < 6; n++)
@@ -1027,7 +1031,7 @@ static void ps_decorrelate(ps_info *ps, qmf_t X_left[38][64], qmf_t X_right[38][
1027 qmf_t X_hybrid_left[32][32], qmf_t X_hybrid_right[32][32]) 1031 qmf_t X_hybrid_left[32][32], qmf_t X_hybrid_right[32][32])
1028{ 1032{
1029 uint8_t gr, n, m, bk; 1033 uint8_t gr, n, m, bk;
1030 uint8_t temp_delay; 1034 uint8_t temp_delay = 0;
1031 uint8_t sb, maxsb; 1035 uint8_t sb, maxsb;
1032 const complex_t *Phi_Fract_SubQmf; 1036 const complex_t *Phi_Fract_SubQmf;
1033 uint8_t temp_delay_ser[NO_ALLPASS_LINKS]; 1037 uint8_t temp_delay_ser[NO_ALLPASS_LINKS];
@@ -1847,6 +1851,7 @@ ps_info *ps_init(uint8_t sr_index)
1847 ps_info *ps = (ps_info*)faad_malloc(sizeof(ps_info)); 1851 ps_info *ps = (ps_info*)faad_malloc(sizeof(ps_info));
1848 memset(ps, 0, sizeof(ps_info)); 1852 memset(ps, 0, sizeof(ps_info));
1849 1853
1854 (void)sr_index;
1850 ps->hyb = hybrid_init(); 1855 ps->hyb = hybrid_init();
1851 1856
1852 ps->ps_data_available = 0; 1857 ps->ps_data_available = 0;
@@ -1935,8 +1940,11 @@ ps_info *ps_init(uint8_t sr_index)
1935/* main Parametric Stereo decoding function */ 1940/* main Parametric Stereo decoding function */
1936uint8_t ps_decode(ps_info *ps, qmf_t X_left[38][64], qmf_t X_right[38][64]) 1941uint8_t ps_decode(ps_info *ps, qmf_t X_left[38][64], qmf_t X_right[38][64])
1937{ 1942{
1938 qmf_t X_hybrid_left[32][32] = {{0}}; 1943 qmf_t X_hybrid_left[32][32];
1939 qmf_t X_hybrid_right[32][32] = {{0}}; 1944 qmf_t X_hybrid_right[32][32];
1945
1946 memset(&X_hybrid_left,0,sizeof(X_hybrid_left));
1947 memset(&X_hybrid_right,0,sizeof(X_hybrid_right));
1940 1948
1941 /* delta decoding of the bitstream data */ 1949 /* delta decoding of the bitstream data */
1942 ps_data_decode(ps); 1950 ps_data_decode(ps);