public static void postfilter_mgc(double mgc[],int m,double alpha,double beta){
  if (beta > 0.0 && m > 1) {
    double[] postfilter_buff=new double[m + 1];
    mc2b(mgc,postfilter_buff,m,alpha);
    double e1=b2en(postfilter_buff,m,alpha);
    postfilter_buff[1]-=beta * alpha * mgc[2];
    for (int k=2; k < m; k++)     postfilter_buff[k]*=(1.0 + beta);
    double e2=b2en(postfilter_buff,m,alpha);
    postfilter_buff[0]+=Math.log(e1 / e2) / 2;
    b2mc(postfilter_buff,mgc,m,alpha);
  }
}

public static void postfilter_mgc ( double mgc [ ] , int m , double alpha , double beta ) { if ( beta > 0.0 && m > 1 ) { double [ ] postfilter_buff = new double [ m + 1 ] ; mc2b ( mgc , postfilter_buff , m , alpha ) ; double e1 = b2en ( postfilter_buff , m , alpha ) ; postfilter_buff [ 1 ] -= beta * alpha * mgc [ 2 ] ; for ( int k = 2 ; k < m ; k ++ ) postfilter_buff [ k ] *= ( 1.0 + beta ) ; double e2 = b2en ( postfilter_buff , m , alpha ) ; postfilter_buff [ 0 ] += Math . log ( e1 / e2 ) / 2 ; b2mc ( postfilter_buff , mgc , m , alpha ) ; } }
posfilter : postfilter for mel - cepstrum . it uses alpha and beta defined in hmmdata
