1 /*
2  * Copyright (C) 2015-2020 Alibaba Group Holding Limited
3  */
4 #ifndef __VOICEACTIVITYDETECTION_H__
5 #define __VOICEACTIVITYDETECTION_H__
6 
7 #ifdef __cplusplus
8 extern "C" {
9 #endif
10 
11 typedef struct {
12     float     snrthd;
13 	float     energythd;
14 } VADConfig;
15 
16 struct VADState_;
17 
18 typedef struct VADState_ VADState;
19 
20 VADState *VAD_process_state_init(int32_t sample_rate, int32_t frame_size, const VADConfig *cfg);
21 
22 int32_t VAD_set_config(VADState *st, const VADConfig *cfg);
23 
24 short VAD_process_run(VADState *st, short *in);
25 
26 int32_t VAD_destroy(VADState *st);
27 
28 #ifdef __cplusplus
29 }
30 #endif
31 
32 #endif