FreeCalypso > hg > gsm-codec-lib
comparison libtwamr/az_lsp.h @ 253:54f6bc41ed10
libtwamr: integrate a* modules
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Fri, 05 Apr 2024 06:08:15 +0000 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
252:57b4053559ff | 253:54f6bc41ed10 |
---|---|
1 /* | |
2 ******************************************************************************** | |
3 * | |
4 * GSM AMR-NB speech codec R98 Version 7.6.0 December 12, 2001 | |
5 * R99 Version 3.3.0 | |
6 * REL-4 Version 4.1.0 | |
7 * | |
8 ******************************************************************************** | |
9 * | |
10 * File : az_lsp.h | |
11 * | |
12 ******************************************************************************** | |
13 */ | |
14 #ifndef az_lsp_h | |
15 #define az_lsp_h "$Id $" | |
16 | |
17 /* | |
18 ******************************************************************************** | |
19 * INCLUDE FILES | |
20 ******************************************************************************** | |
21 */ | |
22 #include "typedef.h" | |
23 | |
24 /* | |
25 ******************************************************************************** | |
26 * DEFINITION OF DATA TYPES | |
27 ******************************************************************************** | |
28 */ | |
29 | |
30 /* | |
31 ******************************************************************************** | |
32 * DECLARATION OF PROTOTYPES | |
33 ******************************************************************************** | |
34 */ | |
35 /* | |
36 ************************************************************************** | |
37 * | |
38 * Function : Az_lsp | |
39 * Purpose : Compute the LSPs from the LP coefficients | |
40 * Description : - The sum and difference filters are computed | |
41 * and divided by 1+z^{-1} and 1-z^{-1}, respectively. | |
42 * | |
43 * f1[i] = a[i] + a[11-i] - f1[i-1] ; i=1,...,5 | |
44 * f2[i] = a[i] - a[11-i] + f2[i-1] ; i=1,...,5 | |
45 * | |
46 * - The roots of F1(z) and F2(z) are found using | |
47 * Chebyshev polynomial evaluation. The polynomials | |
48 * are evaluated at 60 points regularly spaced in the | |
49 * frequency domain. The sign change interval is | |
50 * subdivided 4 times to better track the root. The | |
51 * LSPs are found in the cosine domain [1,-1]. | |
52 * | |
53 * - If less than 10 roots are found, the LSPs from | |
54 * the past frame are used. | |
55 * Returns : void | |
56 * | |
57 ************************************************************************** | |
58 */ | |
59 void Az_lsp ( | |
60 Word16 a[], /* (i) : predictor coefficients (MP1) */ | |
61 Word16 lsp[], /* (o) : line spectral pairs (M) */ | |
62 Word16 old_lsp[] /* (i) : old lsp[] (in case not found 10 roots) (M)*/ | |
63 ); | |
64 | |
65 #endif |