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

📄 tabld8cp.c

📁 语音编码G.729 语音编码G.729
💻 C
字号:
/*   ITU-T G.729 Annex C+ - Reference C code for floating point                         implementation of G.729 Annex C+                         (integration of Annexes B, D and E)                          Version 2.1 of October 1999*//* File : TABLD8CP.C*/#include <stdio.h>#include <stdlib.h>#include "typedef.h"#include "ld8k.h"#include "ld8cp.h"#include "tabld8cp.h"/*-----------------------------------------------------* | Tables for routine bits().                          | -----------------------------------------------------*/const int bitsno_B[PRM_SIZE_SID] = {1, /* SID Lsp : MA  */                     5, /* SID Lsp : 1st stage */                     4, /* SID Lsp : 2nd stage */                     5 };  /* SID gain */const int bitsno_D[PRM_SIZE_D] = {1+NC0_B, /* MA + 1st stage */                                 NC1_B*2, /* 2nd stage */                                 8,  9,2, 6, /* first subframe  */                                 4,  9,2, 6}; /* second subframe */const int bitsno_E_fwd[PRM_SIZE_E_fwd-1] =    {1+NC0_B,             /* MA + 1st stage */     NC1_B*2,             /* 2nd stage */     8,1, 7,7,7,7,7, 7,   /* first subframe  */     5,   7,7,7,7,7, 7};  /* second subframe */const int bitsno_E_bwd[PRM_SIZE_E_bwd-1] =    {     8,1, 13,10,7,7,7, 7,   /* first subframe  */     5, 13,10,7,7,7, 7};  /* second subframe */const int ipos[16]={0,1,2,3,4,0,1,2,3,4,0,1,2,3,4,0};/* anti-sparseness post-processing */const FLOAT ph_imp_low[L_SUBFR]={ (F)0.4483, (F)0.3515, (F)0.0387,-(F)0.0843,-(F)0.1731, (F)0.2293,-(F)0.0011, (F)-0.0857,(F)-0.0928, (F)0.1472, (F)0.0901,(F)-0.2571, (F)0.1155, (F)0.0444, (F)0.0665,(F)-0.2636, (F)0.2457,(F)-0.0642,(F)-0.0444, (F)0.0237, (F)0.0338, (F)-0.0728, (F)0.0688,(F)-0.0111,(F)-0.0206,(F)-0.0642, (F)0.1845,(F)-0.1734, (F)0.0327, (F)0.0953,(F)-0.1544, (F)0.1621,(F)-0.0711,(F)-0.1138, (F)0.2113, (F)-0.1187, (F)0.0206,(F)-0.0542, (F)0.0009,(F)0.3096};const FLOAT ph_imp_mid[L_SUBFR]={ (F)0.9239, (F)0.1169, (F)-0.1232, (F)0.0907, (F)-0.0320, (F)-0.0306, (F)0.0756, (F)-0.0929, (F)0.0859, (F)-0.0681, (F)0.0535, (F)-0.0492, (F)0.0523, (F)-0.0542, (F)0.0471, (F)-0.0308, (F)0.0131, (F)-0.0052, (F)0.0144, (F)-0.0386, (F)0.0664, (F)-0.0826, (F)0.0770, (F)-0.0495, (F)0.0105, (F)0.0252, (F)-0.0467, (F)0.0526, (F)-0.0506, (F)0.0519, (F)-0.0630, (F)0.0807, (F)-0.0934, (F)0.0884, (F)-0.0604, (F)0.0170, (F)0.0238, (F)-0.0418, (F)0.0257, (F)0.0200};const FLOAT ph_imp_high[L_SUBFR]={ (F)1.0, (F)0.0, (F)0.0, (F)0.0, (F)0.0, (F)0.0, (F)0.0, (F)0.0, (F)0.0, (F)0.0, (F)0.0, (F)0.0, (F)0.0, (F)0.0, (F)0.0, (F)0.0, (F)0.0, (F)0.0, (F)0.0, (F)0.0, (F)0.0, (F)0.0, (F)0.0, (F)0.0, (F)0.0, (F)0.0, (F)0.0, (F)0.0, (F)0.0, (F)0.0, (F)0.0, (F)0.0, (F)0.0, (F)0.0, (F)0.0, (F)0.0, (F)0.0, (F)0.0, (F)0.0, (F)0.0}; const FLOAT freq_prev_reset[M] = {  /* previous LSP vector(init) */ (F)0.285599,  (F)0.571199,  (F)0.856798,  (F)1.142397,  (F)1.427997, (F)1.713596,  (F)1.999195,  (F)2.284795,  (F)2.570394,  (F)2.855993};     /* PI*(float)(j+1)/(float)(M+1) */const FLOAT lwindow[M+2] = {(F)0.99879038,(F)0.99546894,(F)0.98995779,(F)0.98229335,(F)0.97252620,(F)0.96072035,(F)0.94695264,(F)0.93131180,(F)0.91389754,(F)0.89481964,(F)0.87419660,(F)0.85215437};

⌨️ 快捷键说明

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