FreeCalypso > hg > gsm-codec-lib
comparison libgsmefr/sig_proc.h @ 52:988fd7ff514f
libgsmefr: add state pointers to ETSI function prototypes
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Fri, 25 Nov 2022 08:22:41 +0000 |
parents | 36e1363ad885 |
children |
comparison
equal
deleted
inserted
replaced
51:722959d9410f | 52:988fd7ff514f |
---|---|
17 Word16 fraction /* (i) : Fractional part. (range: 0.0<=val<1.0) */ | 17 Word16 fraction /* (i) : Fractional part. (range: 0.0<=val<1.0) */ |
18 ); | 18 ); |
19 | 19 |
20 /* General signal processing */ | 20 /* General signal processing */ |
21 | 21 |
22 void Init_Pre_Process (void); | 22 void Init_Pre_Process (struct EFR_encoder_state *st); |
23 void Pre_Process ( | 23 void Pre_Process ( |
24 struct EFR_encoder_state *st, | |
24 Word16 signal[], /* Input/output signal */ | 25 Word16 signal[], /* Input/output signal */ |
25 Word16 lg /* Lenght of signal */ | 26 Word16 lg /* Lenght of signal */ |
26 ); | 27 ); |
27 | 28 |
28 Word16 Autocorr ( | 29 Word16 Autocorr ( |
36 Word16 m, /* (i) : LPC order */ | 37 Word16 m, /* (i) : LPC order */ |
37 Word16 r_h[], /* (i/o) : Autocorrelations (msb) */ | 38 Word16 r_h[], /* (i/o) : Autocorrelations (msb) */ |
38 Word16 r_l[] /* (i/o) : Autocorrelations (lsb) */ | 39 Word16 r_l[] /* (i/o) : Autocorrelations (lsb) */ |
39 ); | 40 ); |
40 void Levinson ( | 41 void Levinson ( |
42 struct EFR_encoder_state *st, | |
41 Word16 Rh[], /* (i) : Rh[m+1] Vector of autocorrelations (msb) */ | 43 Word16 Rh[], /* (i) : Rh[m+1] Vector of autocorrelations (msb) */ |
42 Word16 Rl[], /* (i) : Rl[m+1] Vector of autocorrelations (lsb) */ | 44 Word16 Rl[], /* (i) : Rl[m+1] Vector of autocorrelations (lsb) */ |
43 Word16 A[], /* (o) : A[m] LPC coefficients (m = 10) */ | 45 Word16 A[], /* (o) : A[m] LPC coefficients (m = 10) */ |
44 Word16 rc[] /* (o) : rc[4] First 4 reflection coefficients */ | 46 Word16 rc[] /* (o) : rc[4] First 4 reflection coefficients */ |
45 ); | 47 ); |
95 Word16 h[], /* (i) : impulse response */ | 97 Word16 h[], /* (i) : impulse response */ |
96 Word16 y[], /* (o) : output vector */ | 98 Word16 y[], /* (o) : output vector */ |
97 Word16 L /* (i) : vector size */ | 99 Word16 L /* (i) : vector size */ |
98 ); | 100 ); |
99 void agc ( | 101 void agc ( |
102 struct EFR_decoder_state *st, | |
100 Word16 *sig_in, /* (i) : postfilter input signal */ | 103 Word16 *sig_in, /* (i) : postfilter input signal */ |
101 Word16 *sig_out, /* (i/o): postfilter output signal */ | 104 Word16 *sig_out, /* (i/o): postfilter output signal */ |
102 Word16 agc_fac, /* (i) : AGC factor */ | 105 Word16 agc_fac, /* (i) : AGC factor */ |
103 Word16 l_trm /* (i) : subframe size */ | 106 Word16 l_trm /* (i) : subframe size */ |
104 ); | 107 ); |
106 Word16 *sig_in, /* (i) : postfilter input signal */ | 109 Word16 *sig_in, /* (i) : postfilter input signal */ |
107 Word16 *sig_out, /* (i/o): postfilter output signal */ | 110 Word16 *sig_out, /* (i/o): postfilter output signal */ |
108 Word16 l_trm /* (i) : subframe size */ | 111 Word16 l_trm /* (i) : subframe size */ |
109 ); | 112 ); |
110 void preemphasis ( | 113 void preemphasis ( |
114 struct EFR_decoder_state *st, | |
111 Word16 *signal, /* (i/o): input signal overwritten by the output */ | 115 Word16 *signal, /* (i/o): input signal overwritten by the output */ |
112 Word16 g, /* (i) : preemphasis coefficient */ | 116 Word16 g, /* (i) : preemphasis coefficient */ |
113 Word16 L /* (i) : size of filtering */ | 117 Word16 L /* (i) : size of filtering */ |
114 ); | 118 ); |