FreeCalypso > hg > gsm-codec-lib
annotate libtwamr/c8_31pf.h @ 529:79cd992de3ad
libgsmfr2: API definitions for TFO transform
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Thu, 19 Sep 2024 08:07:26 +0000 |
parents | dfd5f159574b |
children |
rev | line source |
---|---|
323
dfd5f159574b
libtwamr: integrate c8_31pf.c
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
1 /* |
dfd5f159574b
libtwamr: integrate c8_31pf.c
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
2 ******************************************************************************** |
dfd5f159574b
libtwamr: integrate c8_31pf.c
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
3 * |
dfd5f159574b
libtwamr: integrate c8_31pf.c
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
4 * GSM AMR-NB speech codec R98 Version 7.6.0 December 12, 2001 |
dfd5f159574b
libtwamr: integrate c8_31pf.c
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
5 * R99 Version 3.3.0 |
dfd5f159574b
libtwamr: integrate c8_31pf.c
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
6 * REL-4 Version 4.1.0 |
dfd5f159574b
libtwamr: integrate c8_31pf.c
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
7 * |
dfd5f159574b
libtwamr: integrate c8_31pf.c
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
8 ******************************************************************************** |
dfd5f159574b
libtwamr: integrate c8_31pf.c
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
9 * |
dfd5f159574b
libtwamr: integrate c8_31pf.c
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
10 * File : c8_31pf.h |
dfd5f159574b
libtwamr: integrate c8_31pf.c
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
11 * Purpose : Searches a 31 bit algebraic codebook containing |
dfd5f159574b
libtwamr: integrate c8_31pf.c
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
12 * : 8 pulses in a frame of 40 samples. |
dfd5f159574b
libtwamr: integrate c8_31pf.c
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
13 * |
dfd5f159574b
libtwamr: integrate c8_31pf.c
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
14 ******************************************************************************** |
dfd5f159574b
libtwamr: integrate c8_31pf.c
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
15 */ |
dfd5f159574b
libtwamr: integrate c8_31pf.c
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
16 #ifndef c8_31pf_h |
dfd5f159574b
libtwamr: integrate c8_31pf.c
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
17 #define c8_31pf_h "$Id $" |
dfd5f159574b
libtwamr: integrate c8_31pf.c
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
18 |
dfd5f159574b
libtwamr: integrate c8_31pf.c
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
19 /* |
dfd5f159574b
libtwamr: integrate c8_31pf.c
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
20 ******************************************************************************** |
dfd5f159574b
libtwamr: integrate c8_31pf.c
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
21 * INCLUDE FILES |
dfd5f159574b
libtwamr: integrate c8_31pf.c
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
22 ******************************************************************************** |
dfd5f159574b
libtwamr: integrate c8_31pf.c
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
23 */ |
dfd5f159574b
libtwamr: integrate c8_31pf.c
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
24 #include "typedef.h" |
dfd5f159574b
libtwamr: integrate c8_31pf.c
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
25 |
dfd5f159574b
libtwamr: integrate c8_31pf.c
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
26 /* |
dfd5f159574b
libtwamr: integrate c8_31pf.c
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
27 ******************************************************************************** |
dfd5f159574b
libtwamr: integrate c8_31pf.c
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
28 * DEFINITION OF DATA TYPES |
dfd5f159574b
libtwamr: integrate c8_31pf.c
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
29 ******************************************************************************** |
dfd5f159574b
libtwamr: integrate c8_31pf.c
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
30 */ |
dfd5f159574b
libtwamr: integrate c8_31pf.c
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
31 |
dfd5f159574b
libtwamr: integrate c8_31pf.c
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
32 /* |
dfd5f159574b
libtwamr: integrate c8_31pf.c
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
33 ******************************************************************************** |
dfd5f159574b
libtwamr: integrate c8_31pf.c
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
34 * DECLARATION OF PROTOTYPES |
dfd5f159574b
libtwamr: integrate c8_31pf.c
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
35 ******************************************************************************** |
dfd5f159574b
libtwamr: integrate c8_31pf.c
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
36 */ |
dfd5f159574b
libtwamr: integrate c8_31pf.c
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
37 void code_8i40_31bits ( |
dfd5f159574b
libtwamr: integrate c8_31pf.c
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
38 Word16 x[], /* i : target vector */ |
dfd5f159574b
libtwamr: integrate c8_31pf.c
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
39 Word16 cn[], /* i : residual after long term prediction */ |
dfd5f159574b
libtwamr: integrate c8_31pf.c
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
40 Word16 h[], /* i : impulse response of weighted synthesis |
dfd5f159574b
libtwamr: integrate c8_31pf.c
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
41 filter */ |
dfd5f159574b
libtwamr: integrate c8_31pf.c
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
42 Word16 cod[], /* o : algebraic (fixed) codebook excitation */ |
dfd5f159574b
libtwamr: integrate c8_31pf.c
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
43 Word16 y[], /* o : filtered fixed codebook excitation */ |
dfd5f159574b
libtwamr: integrate c8_31pf.c
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
44 Word16 indx[] /* o : 7 Word16, index of 8 pulses (signs+positions) */ |
dfd5f159574b
libtwamr: integrate c8_31pf.c
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
45 ); |
dfd5f159574b
libtwamr: integrate c8_31pf.c
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
46 |
dfd5f159574b
libtwamr: integrate c8_31pf.c
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
47 #endif |