Speex  1.2~beta4
speex_preprocess.h
Go to the documentation of this file.
1 /* Copyright (C) 2003 Epic Games
2  Written by Jean-Marc Valin */
9 /*
10  Redistribution and use in source and binary forms, with or without
11  modification, are permitted provided that the following conditions are
12  met:
13 
14  1. Redistributions of source code must retain the above copyright notice,
15  this list of conditions and the following disclaimer.
16 
17  2. Redistributions in binary form must reproduce the above copyright
18  notice, this list of conditions and the following disclaimer in the
19  documentation and/or other materials provided with the distribution.
20 
21  3. The name of the author may not be used to endorse or promote products
22  derived from this software without specific prior written permission.
23 
24  THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
25  IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
26  OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
27  DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT,
28  INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
29  (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
30  SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
31  HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
32  STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
33  ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
34  POSSIBILITY OF SUCH DAMAGE.
35 */
36 
37 #ifndef SPEEX_PREPROCESS_H
38 #define SPEEX_PREPROCESS_H
39 
46 #include "speex/speex_types.h"
47 
48 #ifdef __cplusplus
49 extern "C" {
50 #endif
51 
53 struct SpeexPreprocessState_;
54 
56 typedef struct SpeexPreprocessState_ SpeexPreprocessState;
57 
58 
65 SpeexPreprocessState *speex_preprocess_state_init(int frame_size, int sampling_rate);
66 
71 
77 int speex_preprocess_run(SpeexPreprocessState *st, spx_int16_t *x);
78 
80 int speex_preprocess(SpeexPreprocessState *st, spx_int16_t *x, spx_int32_t *echo);
81 
87 
94 int speex_preprocess_ctl(SpeexPreprocessState *st, int request, void *ptr);
95 
96 
97 
99 #define SPEEX_PREPROCESS_SET_DENOISE 0
100 
101 #define SPEEX_PREPROCESS_GET_DENOISE 1
102 
104 #define SPEEX_PREPROCESS_SET_AGC 2
105 
106 #define SPEEX_PREPROCESS_GET_AGC 3
107 
109 #define SPEEX_PREPROCESS_SET_VAD 4
110 
111 #define SPEEX_PREPROCESS_GET_VAD 5
112 
114 #define SPEEX_PREPROCESS_SET_AGC_LEVEL 6
115 
116 #define SPEEX_PREPROCESS_GET_AGC_LEVEL 7
117 
119 #define SPEEX_PREPROCESS_SET_DEREVERB 8
120 
121 #define SPEEX_PREPROCESS_GET_DEREVERB 9
122 
124 #define SPEEX_PREPROCESS_SET_DEREVERB_LEVEL 10
125 
126 #define SPEEX_PREPROCESS_GET_DEREVERB_LEVEL 11
127 
129 #define SPEEX_PREPROCESS_SET_DEREVERB_DECAY 12
130 
131 #define SPEEX_PREPROCESS_GET_DEREVERB_DECAY 13
132 
134 #define SPEEX_PREPROCESS_SET_PROB_START 14
135 
136 #define SPEEX_PREPROCESS_GET_PROB_START 15
137 
139 #define SPEEX_PREPROCESS_SET_PROB_CONTINUE 16
140 
141 #define SPEEX_PREPROCESS_GET_PROB_CONTINUE 17
142 
144 #define SPEEX_PREPROCESS_SET_NOISE_SUPPRESS 18
145 
146 #define SPEEX_PREPROCESS_GET_NOISE_SUPPRESS 19
147 
149 #define SPEEX_PREPROCESS_SET_ECHO_SUPPRESS 20
150 
151 #define SPEEX_PREPROCESS_GET_ECHO_SUPPRESS 21
152 
154 #define SPEEX_PREPROCESS_SET_ECHO_SUPPRESS_ACTIVE 22
155 
156 #define SPEEX_PREPROCESS_GET_ECHO_SUPPRESS_ACTIVE 23
157 
159 #define SPEEX_PREPROCESS_SET_ECHO_STATE 24
160 
161 #define SPEEX_PREPROCESS_GET_ECHO_STATE 25
162 
164 #define SPEEX_PREPROCESS_SET_AGC_INCREMENT 26
165 
167 #define SPEEX_PREPROCESS_GET_AGC_INCREMENT 27
168 
170 #define SPEEX_PREPROCESS_SET_AGC_DECREMENT 28
171 
173 #define SPEEX_PREPROCESS_GET_AGC_DECREMENT 29
174 
176 #define SPEEX_PREPROCESS_SET_AGC_MAX_GAIN 30
177 
179 #define SPEEX_PREPROCESS_GET_AGC_MAX_GAIN 31
180 
181 /* Can't set loudness */
183 #define SPEEX_PREPROCESS_GET_AGC_LOUDNESS 33
184 
185 /* Can't set gain */
187 #define SPEEX_PREPROCESS_GET_AGC_GAIN 35
188 
189 /* Can't set spectrum size */
191 #define SPEEX_PREPROCESS_GET_PSD_SIZE 37
192 
193 /* Can't set power spectrum */
195 #define SPEEX_PREPROCESS_GET_PSD 39
196 
197 /* Can't set noise size */
199 #define SPEEX_PREPROCESS_GET_NOISE_PSD_SIZE 41
200 
201 /* Can't set noise estimate */
203 #define SPEEX_PREPROCESS_GET_NOISE_PSD 43
204 
205 /* Can't set speech probability */
207 #define SPEEX_PREPROCESS_GET_PROB 45
208 
210 #define SPEEX_PREPROCESS_SET_AGC_TARGET 46
211 
212 #define SPEEX_PREPROCESS_GET_AGC_TARGET 47
213 
214 #ifdef __cplusplus
215 }
216 #endif
217 
219 #endif
speex_preprocess_estimate_update
void speex_preprocess_estimate_update(SpeexPreprocessState *st, spx_int16_t *x)
SpeexPreprocessState
struct SpeexPreprocessState_ SpeexPreprocessState
Definition: speex_preprocess.h:56
speex_types.h
Speex types.
speex_preprocess_state_destroy
void speex_preprocess_state_destroy(SpeexPreprocessState *st)
speex_preprocess_state_init
SpeexPreprocessState * speex_preprocess_state_init(int frame_size, int sampling_rate)
speex_preprocess_ctl
int speex_preprocess_ctl(SpeexPreprocessState *st, int request, void *ptr)
speex_preprocess
int speex_preprocess(SpeexPreprocessState *st, spx_int16_t *x, spx_int32_t *echo)
speex_preprocess_run
int speex_preprocess_run(SpeexPreprocessState *st, spx_int16_t *x)