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