Go to the source code of this file.
◆ ivfilt_()
Definition at line 89 of file ivfilt.c.
   91{
   92    
   94 
   95    
   97    real r__[3], pc1, pc2;
 
   98 
   99
  100
  101
  102
  103
  104    
  105    --ivbuf;
  106    --lpbuf;
  107    --ivrc;
  108 
  109    
  110    for (i__ = 1; i__ <= 3; ++i__) {
  111    r__[i__ - 1] = 0.f;
  112    k = (i__ - 1) << 2;
  114    for (j = (i__ << 2) + *
len - *nsamp; j <= i__1; j += 2) {
 
  115        r__[i__ - 1] += lpbuf[j] * lpbuf[j - k];
  116    }
  117    }
  118
  119    pc1 = 0.f;
  120    pc2 = 0.f;
  121    ivrc[1] = 0.f;
  122    ivrc[2] = 0.f;
  123    if (r__[0] > 1e-10f) {
  124    ivrc[1] = r__[1] / r__[0];
  125    ivrc[2] = (r__[2] - ivrc[1] * r__[1]) / (r__[0] - ivrc[1] * r__[1]);
  126    pc1 = ivrc[1] - ivrc[1] * ivrc[2];
  127    pc2 = ivrc[2];
  128    }
  129
  131    for (i__ = *
len + 1 - *nsamp; i__ <= i__1; ++i__) {
 
  132    ivbuf[i__] = lpbuf[i__] - pc1 * lpbuf[i__ - 4] - pc2 * lpbuf[i__ - 8];
  133    }
  134    return 0;
  135} 
static int len(struct ast_channel *chan, const char *cmd, char *data, char *buf, size_t buflen)
References len().
Referenced by analys_().