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

📄 anafilter.c

📁 PA1688网络电话机全部源程序
💻 C
字号:
    
   /****************************************************************** 
    
       iLBC Speech Coder ANSI-C Source Code 
    
       anaFilter.c  
    
       Copyright (c) 2001, 
       Global IP Sound AB. 
       All rights reserved. 
    
   ******************************************************************/ 
    
   #include <string.h> 
   #include "iLBC_define.h" 
    
   /*----------------------------------------------------------------* 
    *  LP analysis filter. 
    *---------------------------------------------------------------*/ 
        
   void anaFilter( 
       float *In,  /* (i) Signal to be filtered */ 
       float *a,   /* (i) LP parameters */ 
       int len,/* (i) Length of signal */ 
       float *Out, /* (o) Filtered signal */ 
       float *mem  /* (i/o) Filter state */ 
   ){ 
       int i, j; 
       float *po, *pi, *pm, *pa; 
    
       po = Out; 
     
    
    
    
       /* Filter first part using memory from past */ 
        
       for (i=0; i<LPC_FILTERORDER; i++) { 
    
           pi = &In[i]; 
           pm = &mem[LPC_FILTERORDER-1]; 
           pa = a; 
           *po=0.0; 
           for (j=0; j<=i; j++) { 
               *po+=(*pa++)*(*pi--); 
           } 
           for (j=i+1; j<LPC_FILTERORDER+1; j++) { 
               *po+=(*pa++)*(*pm--); 
           } 
           po++; 
       } 
    
       /* Filter last part where the state is entierly  
          in the input vector */ 
    
       for (i=LPC_FILTERORDER; i<len; i++) { 
           pi = &In[i]; 
           pa = a; 
           *po=0.0; 
           for (j=0; j<LPC_FILTERORDER+1; j++) { 
               *po+=(*pa++)*(*pi--); 
           } 
           po++; 
       } 
    
       /* Update state vector */ 
    
       memcpy(mem, &In[len-LPC_FILTERORDER],  
           LPC_FILTERORDER*sizeof(float)); 
} 
    
    

⌨️ 快捷键说明

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