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

📄 mload.c

📁 基于DSP的用C语言实现语音编码解码
💻 C
字号:
/******************************************************************
*
*	MLOAD Version 48
*
******************************************************************
*
*  Load a covariance matrix
*
*  Inputs:
*    ORDER            - Analysis order
*    AWINS            - Analysis window start
*    AWINF            - Analysis window finish
*    SPEECH(AWINF)    - Speech buffer
*  Outputs:
*    PHI(ORDER,ORDER) - Covariance matrix
*    PSI(ORDER)       - Prediction vector
*/

#include "lpcdefs.h"

void mload(awinf, speech, phi, psi )
int awinf;
float speech[], phi[ORDER][ORDER], psi[];  
{
int r, c, i, start;


/*   Load first column of triangular covariance matrix PHI	*/

start = 1 + ORDER;
for(r=1;r<=ORDER;r++)	{
	phi[r-1][0] = 0.;
	for(i=start;i<=awinf;i++)  {
		phi[r-1][0] += speech[i-1]*speech[i-r];
	}
}

/*   Load last element of vector PSI	*/

psi[ORDER] = 0.;
for(i=start;i<=awinf;i++)
	psi[ORDER] += speech[i]*speech[i-ORDER];
	

/*   End correct to get additional columns of PHI	*/

for(r=2;r<=ORDER;r++)
	for(c=2;c<=r;c++)
		phi[r-1][c-1] = phi[r-2][c-2]
                       - speech[awinf+1-r]*speech[awinf+1-c]
                         + speech[start-r]*speech[start-c];
								
/*   End correct to get additional elements of PSI	*/

for(c=1;c<ORDER;c++)
	psi[c] = phi[c][0] - speech[start-1]*speech[start-1-c]
                               + speech[awinf]*speech[awinf-c];
										

}

⌨️ 快捷键说明

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