speex的预处理包括自动增益控制(AGC)、静音检测(VAD)、回声消除、重采样、噪声抑制。
开源库下载地址:
API简介
常用API
speex_preprocess_state_init
【功能】
预处理器初始化
【原型】
SpeexPreprocessState *speex_preprocess_state_init(int frame_size, int sampling_rate);
【参数】
Frmae_size [in]每帧的大小(建议帧长为20ms)
Sample_rate [in]采样率(支持8k、16k、44k)
【备注】
假如是16k的语音数据,帧长20ms等于320个采样
speex_preprocess_run
【原型】
int speex_preprocess_run(SpeexPreprocessState *st, spx_int16_t *x);
【功能】
处理一帧音频数据
【返回值】
如果VAD打开,返回值为1表示有语音,为0表示静音或者噪音
speex_preprocess_ctl
【原型】
int speex_preprocess_ctl(SpeexPreprocessState *st, int request, void *ptr);
【功能】
预处理器相关参数设置
【参数】
调用speex_preprocess_state_init返回的指针;
ctl宏,查看头文件speex_preprocess.h
value值
speex_preprocess_state_destroy
【原型】
void speex_preprocess_state_destroy(SpeexPreprocessState *st);
【功能】
销毁资源
其它API
speex_preprocess_estimate_update
speex_preprocess
其它链接: