melp_lpc.asv
Upload User: xxy784
Upload Date: 2015-01-28
Package Size: 726k
Code Size: 1k
Development Platform:

Matlab

  1. %线性预测分析
  2. %输入: 一帧200个样点的数据 "1+a1..."
  3. %输出: LPC系数
  4. function f=melp_lpc(s)
  5. global ham_win;
  6. %w=0.54-0.46*cos(2*pi*((1:200)-1)/199);
  7. v=s.*ham_win;                                   %Add a window
  8. %for i=1:11
  9.  %  r(i)=sum(v(i:200).*v(1:201-i))/200;
  10. %end %Autocorrelation
  11. %a=-r(2)/r(1);
  12. %b=(1-a^2)*r(1);
  13. %for i=1:9
  14. %   k=-(r(i+2)+sum(r(2:i+1).*fliplr(a)))/b;
  15. %   b=b*(1-k^2);
  16. %   a=[a,0]+k*[fliplr(a),1]; %Levinson-Durbin algorithm
  17. %end
  18. %a=levinson(r,10);
  19. a=lpc(v,10);
  20. a
  21. f=a.*0.994.^(1:10);                 %Bandwidth expansion coefficient