g729e解码算法在做后向LP分析时,对原始信号进行了窗化处理(同g728)。采用了著名的Levinson_Durbin算法来解决。 混合窗应用于第m个样点以前的所有的信号,混合窗由递归和非递归两部分组成,最后n点为递归窗。
我们用n=m-k做自变量 N=36
n>35或n=35时,f(n)=ba^(n-35)
n<35时,f(n)=sin(c*n)
CL告诉我,加窗就是乘以一个数,加窗的作用可以看作是分帧。在g729标准函数中,对于加混合窗的函数autocorr_hyb_window的解释中说:
对于一段语音数据 s(n),加窗。
当n<或=35时,s(n) * sin(c*n)
当n>35时,s(n) * b * e^[(n-35)*log(a)]=s(n) * b * (e^loga)^(n-35)
跟上述一样。
标准g729e是使用定点数,要特别注意运算过程中是否有溢出。一般看不出来。所以程序中有在大量的做一件事,就是判断数据是否溢出,并进行溢出保护。