1*28e138c6SAndroid Build Coastguard Worker #ifdef HAVE_CONFIG_H
2*28e138c6SAndroid Build Coastguard Worker #include "config.h"
3*28e138c6SAndroid Build Coastguard Worker #endif
4*28e138c6SAndroid Build Coastguard Worker
5*28e138c6SAndroid Build Coastguard Worker #include "speex/speex_preprocess.h"
6*28e138c6SAndroid Build Coastguard Worker #include <stdio.h>
7*28e138c6SAndroid Build Coastguard Worker
8*28e138c6SAndroid Build Coastguard Worker #define NN 160
9*28e138c6SAndroid Build Coastguard Worker
main()10*28e138c6SAndroid Build Coastguard Worker int main()
11*28e138c6SAndroid Build Coastguard Worker {
12*28e138c6SAndroid Build Coastguard Worker short in[NN];
13*28e138c6SAndroid Build Coastguard Worker int i;
14*28e138c6SAndroid Build Coastguard Worker SpeexPreprocessState *st;
15*28e138c6SAndroid Build Coastguard Worker int count=0;
16*28e138c6SAndroid Build Coastguard Worker float f;
17*28e138c6SAndroid Build Coastguard Worker
18*28e138c6SAndroid Build Coastguard Worker st = speex_preprocess_state_init(NN, 8000);
19*28e138c6SAndroid Build Coastguard Worker i=1;
20*28e138c6SAndroid Build Coastguard Worker speex_preprocess_ctl(st, SPEEX_PREPROCESS_SET_DENOISE, &i);
21*28e138c6SAndroid Build Coastguard Worker i=0;
22*28e138c6SAndroid Build Coastguard Worker speex_preprocess_ctl(st, SPEEX_PREPROCESS_SET_AGC, &i);
23*28e138c6SAndroid Build Coastguard Worker i=8000;
24*28e138c6SAndroid Build Coastguard Worker speex_preprocess_ctl(st, SPEEX_PREPROCESS_SET_AGC_LEVEL, &i);
25*28e138c6SAndroid Build Coastguard Worker i=0;
26*28e138c6SAndroid Build Coastguard Worker speex_preprocess_ctl(st, SPEEX_PREPROCESS_SET_DEREVERB, &i);
27*28e138c6SAndroid Build Coastguard Worker f=.0;
28*28e138c6SAndroid Build Coastguard Worker speex_preprocess_ctl(st, SPEEX_PREPROCESS_SET_DEREVERB_DECAY, &f);
29*28e138c6SAndroid Build Coastguard Worker f=.0;
30*28e138c6SAndroid Build Coastguard Worker speex_preprocess_ctl(st, SPEEX_PREPROCESS_SET_DEREVERB_LEVEL, &f);
31*28e138c6SAndroid Build Coastguard Worker while (1)
32*28e138c6SAndroid Build Coastguard Worker {
33*28e138c6SAndroid Build Coastguard Worker int vad;
34*28e138c6SAndroid Build Coastguard Worker fread(in, sizeof(short), NN, stdin);
35*28e138c6SAndroid Build Coastguard Worker if (feof(stdin))
36*28e138c6SAndroid Build Coastguard Worker break;
37*28e138c6SAndroid Build Coastguard Worker vad = speex_preprocess_run(st, in);
38*28e138c6SAndroid Build Coastguard Worker /*fprintf (stderr, "%d\n", vad);*/
39*28e138c6SAndroid Build Coastguard Worker fwrite(in, sizeof(short), NN, stdout);
40*28e138c6SAndroid Build Coastguard Worker count++;
41*28e138c6SAndroid Build Coastguard Worker }
42*28e138c6SAndroid Build Coastguard Worker speex_preprocess_state_destroy(st);
43*28e138c6SAndroid Build Coastguard Worker return 0;
44*28e138c6SAndroid Build Coastguard Worker }
45