FreeCalypso > hg > gsmhr-codec-ref
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 |