FreeCalypso > hg > gsm-codec-lib
annotate libgsmfr2/pp_state.c @ 272:19db59c9dc07
libgsmfr2: integrate table.c from libgsm
| author | Mychaela Falconia <falcon@freecalypso.org> | 
|---|---|
| date | Sun, 14 Apr 2024 02:36:08 +0000 | 
| parents | 573afa985df6 | 
| children | 3a617e4e9b27 | 
| rev | line source | 
|---|---|
| 3 
3cd5ad24b1d4
libgsmfrp: implement internal state
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1 /* | 
| 
3cd5ad24b1d4
libgsmfrp: implement internal state
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2 * In this module we implement allocation and initialization | 
| 
3cd5ad24b1d4
libgsmfrp: implement internal state
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 3 * of state structures for our GSM FR preprocessor. | 
| 
3cd5ad24b1d4
libgsmfrp: implement internal state
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 4 */ | 
| 
3cd5ad24b1d4
libgsmfrp: implement internal state
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 5 | 
| 4 
286d5f097eb4
libgsmfrp: implement comfort noise generation
 Mychaela Falconia <falcon@freecalypso.org> parents: 
3diff
changeset | 6 #include <stdint.h> | 
| 3 
3cd5ad24b1d4
libgsmfrp: implement internal state
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 7 #include <stdlib.h> | 
| 
3cd5ad24b1d4
libgsmfrp: implement internal state
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 8 #include <string.h> | 
| 256 
a33edf624061
libgsmfr2: start with API definition and port of libgsmfrp code
 Mychaela Falconia <falcon@freecalypso.org> parents: 
4diff
changeset | 9 #include "tw_gsmfr.h" | 
| 262 
573afa985df6
libgsmfr2: split pp_state.h from pp_internal.h
 Mychaela Falconia <falcon@freecalypso.org> parents: 
256diff
changeset | 10 #include "pp_state.h" | 
| 3 
3cd5ad24b1d4
libgsmfrp: implement internal state
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 11 | 
| 
3cd5ad24b1d4
libgsmfrp: implement internal state
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 12 struct gsmfr_preproc_state *gsmfr_preproc_create(void) | 
| 
3cd5ad24b1d4
libgsmfrp: implement internal state
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 13 { | 
| 
3cd5ad24b1d4
libgsmfrp: implement internal state
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 14 struct gsmfr_preproc_state *st; | 
| 
3cd5ad24b1d4
libgsmfrp: implement internal state
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 15 | 
| 
3cd5ad24b1d4
libgsmfrp: implement internal state
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 16 st = malloc(sizeof(struct gsmfr_preproc_state)); | 
| 
3cd5ad24b1d4
libgsmfrp: implement internal state
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 17 if (st) | 
| 
3cd5ad24b1d4
libgsmfrp: implement internal state
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 18 gsmfr_preproc_reset(st); | 
| 
3cd5ad24b1d4
libgsmfrp: implement internal state
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 19 return st; | 
| 
3cd5ad24b1d4
libgsmfrp: implement internal state
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 20 } | 
| 
3cd5ad24b1d4
libgsmfrp: implement internal state
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 21 | 
| 
3cd5ad24b1d4
libgsmfrp: implement internal state
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 22 void gsmfr_preproc_reset(struct gsmfr_preproc_state *st) | 
| 
3cd5ad24b1d4
libgsmfrp: implement internal state
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 23 { | 
| 
3cd5ad24b1d4
libgsmfrp: implement internal state
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 24 memset(st, 0, sizeof(struct gsmfr_preproc_state)); | 
| 4 
286d5f097eb4
libgsmfrp: implement comfort noise generation
 Mychaela Falconia <falcon@freecalypso.org> parents: 
3diff
changeset | 25 st->cn_random_lfsr = PN_INITIAL_SEED; | 
| 3 
3cd5ad24b1d4
libgsmfrp: implement internal state
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 26 } | 
