⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ec.h

📁 EC的语音编解码
💻 H
字号:
// file: echoc.h//// this file defines an echo canceller class. this is a faithful implementation// of the following application note:////	Messerschmitt, David; Hedberg, David; Cole, Christopher;//	Haoui, Amine; Winship, Peter; "Digital Voice Echo Canceller//	with a TMS32020," in Digital Signal Processing Applications//	with the TMS320 Family, pp. 415-437, Texas Instruments, Inc., 1986.//// the code parallels the description of this algorithm quite closely,// including parameter names.// // make sure definitions are only made once//#ifndef __ECHOC#define __ECHOC// local include files//#include "cb.h"// class definition//class Echo_canceller {  //---------------------------------------------------------------------------  //  // protected data  //  //---------------------------------------------------------------------------protected:  // filter coefficients  //  double *a_d;  // absolute time  //  int i_d;  double start_speech_d;    // pre-computed constants  //  double gamma_d;  int N_d;  int M_d;  double beta1_d;  double beta2_d;  double tau_d;  int flag_d;  double sigma_Ly_d;  double sigma_Lu_d;  double alpha_st_d;  double alpha_yt_d;  double CUTOFF_d;  int HANGT_d;  double SUPPR_d;  // declare memory for the high-pass filter  //  double s_i_d;  double sdc_d;  double sdc_im1_d;  // circular buffers  //  Circular_buffer y_d;  Circular_buffer s_d;  Circular_buffer u_d;  Circular_buffer e_d;  Circular_buffer y_tilde_d;  // declare accumulators for power computations  //  double Ly_d;  double Lu_d;  // declare an accumulator for the near-end signal detector  //  double s_tilde_d;  int HCNTR_d;  //---------------------------------------------------------------------------  //  // public methods  //  //---------------------------------------------------------------------------public:  // constructors/destructors  //  Echo_canceller();  ~Echo_canceller();  // initialization  //  void init_cc(double gamma, int N, int M, double beta1,	       double sigma_ly, double sigma_lu,	       double alpha_st, double alpha_yt, double cutoff,	       int hangt, double suppr, double alpha1);  // computation  //  double process_cc(double y, double u);  // miscellaneous methods  //  int max_cc(int x, int y);  double max_cc(double x, double y);  short int clip_cc(double value);  //---------------------------------------------------------------------------  //  // private methods  //  //---------------------------------------------------------------------------private:  // none};//// end of include file#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -