void kill_filter_audio(Filter_Audio *f_a) { if (!f_a) { return; } WebRtcNsx_Free(f_a->noise_sup_x); WebRtcAgc_Free(f_a->gain_control); WebRtcAec_Free(f_a->echo_cancellation); WebRtcVad_Free(f_a->Vad_handle); speex_resampler_destroy(f_a->upsampler); speex_resampler_destroy(f_a->downsampler); speex_resampler_destroy(f_a->downsampler_echo); free(f_a); }
AudioDeviceImpl::~AudioDeviceImpl(){ if(resampler_in){ delete resampler_in; } if(resampler_out){ delete resampler_out; } if(input_buffer){ delete input_buffer; } if(output_buffer){ delete output_buffer; } if(audio){ audio->Terminate(); } if(vad){ WebRtcVad_Free(vad); } }