summaryrefslogtreecommitdiff
path: root/apps/codecs/libfaad/drm_dec.c
diff options
context:
space:
mode:
Diffstat (limited to 'apps/codecs/libfaad/drm_dec.c')
-rw-r--r--apps/codecs/libfaad/drm_dec.c12
1 files changed, 4 insertions, 8 deletions
diff --git a/apps/codecs/libfaad/drm_dec.c b/apps/codecs/libfaad/drm_dec.c
index 0cf40df23b..f0b0f01f2b 100644
--- a/apps/codecs/libfaad/drm_dec.c
+++ b/apps/codecs/libfaad/drm_dec.c
@@ -41,7 +41,7 @@
41#define DECAY_CUTOFF 3 41#define DECAY_CUTOFF 3
42#define DECAY_SLOPE 0.05f 42#define DECAY_SLOPE 0.05f
43 43
44/* type definitaions */ 44/* type definitions */
45typedef const int8_t (*drm_ps_huff_tab)[2]; 45typedef const int8_t (*drm_ps_huff_tab)[2];
46 46
47 47
@@ -445,6 +445,8 @@ static const complex_t Phi_Fract_Qmf[] = {
445 { FRAC_CONST(-0.7396311164), FRAC_CONST(0.6730124950) } 445 { FRAC_CONST(-0.7396311164), FRAC_CONST(0.6730124950) }
446}; 446};
447 447
448/* static variables */
449static drm_ps_info s_drm_ps_info;
448 450
449/* static function declarations */ 451/* static function declarations */
450static void drm_ps_sa_element(drm_ps_info *ps, bitfile *ld); 452static void drm_ps_sa_element(drm_ps_info *ps, bitfile *ld);
@@ -915,18 +917,12 @@ static void drm_add_pan(drm_ps_info *ps, uint8_t rateselect,
915 917
916drm_ps_info *drm_ps_init(void) 918drm_ps_info *drm_ps_init(void)
917{ 919{
918 drm_ps_info *ps = (drm_ps_info*)faad_malloc(sizeof(drm_ps_info)); 920 drm_ps_info *ps = &s_drm_ps_info;
919
920 memset(ps, 0, sizeof(drm_ps_info)); 921 memset(ps, 0, sizeof(drm_ps_info));
921 922
922 return ps; 923 return ps;
923} 924}
924 925
925void drm_ps_free(drm_ps_info *ps)
926{
927 faad_free(ps);
928}
929
930/* main DRM PS decoding function */ 926/* main DRM PS decoding function */
931uint8_t drm_ps_decode(drm_ps_info *ps, uint8_t guess, uint32_t samplerate, 927uint8_t drm_ps_decode(drm_ps_info *ps, uint8_t guess, uint32_t samplerate,
932 qmf_t X_left[MAX_NTSRPS][64], 928 qmf_t X_left[MAX_NTSRPS][64],