xref: /aosp_15_r20/external/speex/libspeexdsp/testdenoise.c (revision 28e138c64d234588b5cd2a8a403b584bd3036e4e)
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