comparison sp_dec.h @ 0:9008dbc8ca74

import original C code from GSM 06.06
author Mychaela Falconia <falcon@freecalypso.org>
date Fri, 14 Jun 2024 23:27:16 +0000
parents
children
comparison
equal deleted inserted replaced
-1:000000000000 0:9008dbc8ca74
1 #ifndef __SP_DEC
2 #define __SP_DEC
3
4 #include "typedefs.h"
5
6 /*_________________________________________________________________________
7 | |
8 | Function Prototypes |
9 |_________________________________________________________________________|
10 */
11
12 void speechDecoder(Shortword pswParameters[],
13 Shortword pswDecodedSpeechFrame[]);
14
15 void aFlatRcDp(Longword *pL_R, Shortword *pswRc);
16
17 void b_con(Shortword swCodeWord, short siNumBits,
18 Shortword pswVectOut[]);
19
20 void fp_ex(Shortword swOrigLagIn, Shortword pswLTPState[]);
21
22 Shortword g_corr1(Shortword *pswIn, Longword *pL_out);
23
24 Shortword g_corr1s(Shortword pswIn[], Shortword swEngyRShft,
25 Longword *pL_out);
26
27 void getSfrmLpc(short int siSoftInterpolation,
28 Shortword swPrevR0, Shortword swNewR0,
29 Shortword pswPrevFrmKs[],
30 Shortword pswPrevFrmAs[],
31 Shortword pswPrevFrmPFNum[],
32 Shortword pswPrevFrmPFDenom[],
33 Shortword pswNewFrmKs[],
34 Shortword pswNewFrmAs[],
35 Shortword pswNewFrmPFNum[],
36 Shortword pswNewFrmPFDenom[],
37 struct NormSw *psnsSqrtRs,
38 Shortword *ppswSynthAs[],
39 Shortword *ppswPFNumAs[],
40 Shortword *ppswPFDenomAs[]);
41
42 void get_ipjj(Shortword swLagIn,
43 Shortword *pswIp, Shortword *pswJj);
44
45 short int interpolateCheck(Shortword pswRefKs[],
46 Shortword pswRefCoefsA[],
47 Shortword pswOldCoefsA[],
48 Shortword pswNewCoefsA[],
49 Shortword swOldPer,
50 Shortword swNewPer,
51 Shortword swRq,
52 struct NormSw *psnsSqrtRsOut,
53 Shortword pswCoefOutA[]);
54
55 void lpcFir(Shortword pswInput[], Shortword pswCoef[],
56 Shortword pswState[], Shortword pswFiltOut[]);
57
58 void lpcIir(Shortword pswInput[], Shortword pswCoef[],
59 Shortword pswState[], Shortword pswFiltOut[]);
60
61 void lpcIrZsIir(Shortword pswCoef[], Shortword pswFiltOut[]);
62
63 void lpcZiIir(Shortword pswCoef[], Shortword pswState[],
64 Shortword pswFiltOut[]);
65
66 void lpcZsFir(Shortword pswInput[], Shortword pswCoef[],
67 Shortword pswFiltOut[]);
68
69 void lpcZsIir(Shortword pswInput[], Shortword pswCoef[],
70 Shortword pswFiltOut[]);
71
72 void lpcZsIirP(Shortword pswCommonIO[], Shortword pswCoef[]);
73
74 Shortword r0BasedEnergyShft(Shortword swR0Index);
75
76 short rcToADp(Shortword swAscale, Shortword pswRc[],
77 Shortword pswA[]);
78
79 void rcToCorrDpL(Shortword swAshift, Shortword swAscale,
80 Shortword pswRc[], Longword pL_R[]);
81
82 void res_eng(Shortword pswReflecCoefIn[], Shortword swRq,
83 struct NormSw *psnsSqrtRsOut);
84
85 void rs_rr(Shortword pswExcitation[], struct NormSw snsSqrtRs,
86 struct NormSw *snsSqrtRsRr);
87
88 void rs_rrNs(Shortword pswExcitation[], struct NormSw snsSqrtRs,
89 struct NormSw *snsSqrtRsRr);
90
91 Shortword scaleExcite(Shortword pswVect[],
92 Shortword swErrTerm, struct NormSw snsRS,
93 Shortword pswScldVect[]);
94
95 Shortword sqroot(Longword L_SqrtIn);
96
97 void v_con(Shortword pswBVects[], Shortword pswOutVect[],
98 Shortword pswBitArray[], short int siNumBVctrs);
99
100 #endif