FreeCalypso > hg > gsm-codec-lib
comparison libtwamr/bgnscd.h @ 308:8dfb7cbe6b59
libtwamr: integrated up to bgnscd.c
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Tue, 16 Apr 2024 17:57:21 +0000 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
307:6b33f3ba4289 | 308:8dfb7cbe6b59 |
---|---|
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 : bgnscd.h | |
11 * Purpose : Background noise source charateristic detector (SCD) | |
12 * | |
13 ******************************************************************************** | |
14 */ | |
15 #ifndef bgnscd_h | |
16 #define bgnscd_h "$Id $" | |
17 | |
18 /* | |
19 ******************************************************************************** | |
20 * INCLUDE FILES | |
21 ******************************************************************************** | |
22 */ | |
23 #include "typedef.h" | |
24 #include "cnst.h" | |
25 | |
26 /* | |
27 ******************************************************************************** | |
28 * LOCAL VARIABLES AND TABLES | |
29 ******************************************************************************** | |
30 */ | |
31 #define L_ENERGYHIST 60 | |
32 #define INV_L_FRAME 102 | |
33 | |
34 | |
35 /* 2*(160*x)^2 / 65536 where x is FLP values 150,5 and 50 */ | |
36 #define FRAMEENERGYLIMIT 17578 /* 150 */ | |
37 #define LOWERNOISELIMIT 20 /* 5 */ | |
38 #define UPPERNOISELIMIT 1953 /* 50 */ | |
39 | |
40 /* | |
41 ******************************************************************************** | |
42 * DEFINITION OF DATA TYPES | |
43 ******************************************************************************** | |
44 */ | |
45 typedef struct{ | |
46 /* history vector of past synthesis speech energy */ | |
47 Word16 frameEnergyHist[L_ENERGYHIST]; | |
48 | |
49 /* state flags */ | |
50 Word16 bgHangover; /* counter; number of frames after last speech frame */ | |
51 | |
52 } Bgn_scdState; | |
53 | |
54 /* | |
55 ******************************************************************************** | |
56 * DECLARATION OF PROTOTYPES | |
57 ******************************************************************************** | |
58 */ | |
59 /* | |
60 ************************************************************************** | |
61 * | |
62 * Function : Bgn_scd_reset | |
63 * Purpose : Resets state memory | |
64 * Returns : 0 on success | |
65 * | |
66 ************************************************************************** | |
67 */ | |
68 void Bgn_scd_reset (Bgn_scdState *st); | |
69 | |
70 /* | |
71 ************************************************************************** | |
72 * | |
73 * Function : Bgn_scd | |
74 * Purpose : Charaterice synthesis speech and detect background noise | |
75 * Returns : background noise decision; 0 = bgn, 1 = no bgn | |
76 * | |
77 ************************************************************************** | |
78 */ | |
79 Word16 Bgn_scd (Bgn_scdState *st, /* i : State variables for bgn SCD */ | |
80 Word16 ltpGainHist[], /* i : LTP gain history */ | |
81 Word16 speech[], /* o : synthesis speech frame */ | |
82 Word16 *voicedHangover /* o : # of frames after last voiced frame */ | |
83 ); | |
84 | |
85 #endif |