FreeCalypso > hg > gsm-codec-lib
annotate libgsmhr1/typedefs.h @ 553:ebcf414b7d99
doc/TFO-transform: describe details for FRv1, both modes
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Mon, 07 Oct 2024 08:24:24 +0000 |
parents | 446a4a2955ba |
children |
rev | line source |
---|---|
498
65f672c43dc8
libgsmhr1/typedefs.h: import original
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
1 /******************************************************************* |
65f672c43dc8
libgsmhr1/typedefs.h: import original
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
2 * |
65f672c43dc8
libgsmhr1/typedefs.h: import original
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
3 * typedef statements of types used in all half-rate GSM routines |
65f672c43dc8
libgsmhr1/typedefs.h: import original
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
4 * |
65f672c43dc8
libgsmhr1/typedefs.h: import original
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
5 ******************************************************************/ |
65f672c43dc8
libgsmhr1/typedefs.h: import original
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
6 |
65f672c43dc8
libgsmhr1/typedefs.h: import original
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
7 #ifndef __TYPEDEFS |
65f672c43dc8
libgsmhr1/typedefs.h: import original
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
8 #define __TYPEDEFS |
65f672c43dc8
libgsmhr1/typedefs.h: import original
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
9 |
499
446a4a2955ba
libgsmhr1/typedefs.h: initial port
Mychaela Falconia <falcon@freecalypso.org>
parents:
498
diff
changeset
|
10 #include <stdint.h> |
498
65f672c43dc8
libgsmhr1/typedefs.h: import original
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
11 |
65f672c43dc8
libgsmhr1/typedefs.h: import original
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
12 #define LW_SIGN (long)0x80000000 /* sign bit */ |
65f672c43dc8
libgsmhr1/typedefs.h: import original
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
13 #define LW_MIN (long)0x80000000 |
65f672c43dc8
libgsmhr1/typedefs.h: import original
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
14 #define LW_MAX (long)0x7fffffff |
65f672c43dc8
libgsmhr1/typedefs.h: import original
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
15 |
65f672c43dc8
libgsmhr1/typedefs.h: import original
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
16 #define SW_SIGN (short)0x8000 /* sign bit for Shortword type */ |
65f672c43dc8
libgsmhr1/typedefs.h: import original
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
17 #define SW_MIN (short)0x8000 /* smallest Ram */ |
65f672c43dc8
libgsmhr1/typedefs.h: import original
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
18 #define SW_MAX (short)0x7fff /* largest Ram */ |
65f672c43dc8
libgsmhr1/typedefs.h: import original
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
19 |
65f672c43dc8
libgsmhr1/typedefs.h: import original
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
20 /* Definition of Types * |
65f672c43dc8
libgsmhr1/typedefs.h: import original
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
21 ***********************/ |
65f672c43dc8
libgsmhr1/typedefs.h: import original
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
22 |
499
446a4a2955ba
libgsmhr1/typedefs.h: initial port
Mychaela Falconia <falcon@freecalypso.org>
parents:
498
diff
changeset
|
23 typedef int32_t Longword; /* 32 bit "accumulator" (L_*) */ |
446a4a2955ba
libgsmhr1/typedefs.h: initial port
Mychaela Falconia <falcon@freecalypso.org>
parents:
498
diff
changeset
|
24 typedef int16_t Shortword; /* 16 bit "register" (sw*) */ |
446a4a2955ba
libgsmhr1/typedefs.h: initial port
Mychaela Falconia <falcon@freecalypso.org>
parents:
498
diff
changeset
|
25 typedef int16_t ShortwordRom; /* 16 bit ROM data (sr*) */ |
446a4a2955ba
libgsmhr1/typedefs.h: initial port
Mychaela Falconia <falcon@freecalypso.org>
parents:
498
diff
changeset
|
26 typedef int32_t LongwordRom; /* 32 bit ROM data (L_r*) */ |
498
65f672c43dc8
libgsmhr1/typedefs.h: import original
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
27 |
65f672c43dc8
libgsmhr1/typedefs.h: import original
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
28 struct NormSw |
65f672c43dc8
libgsmhr1/typedefs.h: import original
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
29 { /* normalized Shortword fractional |
65f672c43dc8
libgsmhr1/typedefs.h: import original
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
30 * number snr.man precedes snr.sh (the |
65f672c43dc8
libgsmhr1/typedefs.h: import original
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
31 * shift count)i */ |
65f672c43dc8
libgsmhr1/typedefs.h: import original
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
32 Shortword man; /* "mantissa" stored in 16 bit |
65f672c43dc8
libgsmhr1/typedefs.h: import original
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
33 * location */ |
65f672c43dc8
libgsmhr1/typedefs.h: import original
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
34 Shortword sh; /* the shift count, stored in 16 bit |
65f672c43dc8
libgsmhr1/typedefs.h: import original
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
35 * location */ |
65f672c43dc8
libgsmhr1/typedefs.h: import original
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
36 }; |
65f672c43dc8
libgsmhr1/typedefs.h: import original
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
37 |
65f672c43dc8
libgsmhr1/typedefs.h: import original
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
38 /* Global constants * |
65f672c43dc8
libgsmhr1/typedefs.h: import original
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
39 ********************/ |
65f672c43dc8
libgsmhr1/typedefs.h: import original
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
40 |
65f672c43dc8
libgsmhr1/typedefs.h: import original
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
41 #define NP 10 /* order of the lpc filter */ |
65f672c43dc8
libgsmhr1/typedefs.h: import original
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
42 #define N_SUB 4 /* number of subframes */ |
65f672c43dc8
libgsmhr1/typedefs.h: import original
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
43 #define F_LEN 160 /* number of samples in a frame */ |
65f672c43dc8
libgsmhr1/typedefs.h: import original
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
44 #define S_LEN 40 /* number of samples in a subframe */ |
65f672c43dc8
libgsmhr1/typedefs.h: import original
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
45 #define A_LEN 170 /* LPC analysis length */ |
65f672c43dc8
libgsmhr1/typedefs.h: import original
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
46 #define OS_FCTR 6 /* maximum LTP lag oversampling |
65f672c43dc8
libgsmhr1/typedefs.h: import original
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
47 * factor */ |
65f672c43dc8
libgsmhr1/typedefs.h: import original
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
48 |
65f672c43dc8
libgsmhr1/typedefs.h: import original
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
49 #define OVERHANG 8 /* vad parameter */ |
65f672c43dc8
libgsmhr1/typedefs.h: import original
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
50 |
65f672c43dc8
libgsmhr1/typedefs.h: import original
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
51 #endif |