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

📄 tabgsmamr.c

📁 这是在PCA下的基于IPP库示例代码例子,在网上下了IPP的库之后,设置相关参数就可以编译该代码.
💻 C
📖 第 1 页 / 共 4 页
字号:
 -123,    -543,    -804,     447,    -748,    -324,    -897,   -1127,
 -737,    -501,    -789,    -713,     715,     777,    1239,     922,
 1949,    1939,    1368,     865,     730,     880,     758,     388,
 -871,     454,      17,    -251,    -381,    -810,   -1583,     239,
 -521,    -966,    -792,     259,    -890,   -1358,    -770,     -73,
  166,     349,    -212,     323,    -840,    -301,     473,     435,
 -679,    -464,     728,     351,    -156,    -199,     667,     432,
   29,    -252,     415,     480,    -731,    -379,     145,     559,
 -528,    -631,   -1158,    -159,     445,     273,     123,     639,
  373,    -126,     800,     568,      84,    -162,     720,     712,
 -830,    -536,    -185,     222,     408,     452,     501,     771,
 -897,   -1355,     -67,     442,    -792,   -1406,     566,     602,
  167,    -326,     509,     330,     -95,    -626,    -730,    -344,
 1668,    1217,     779,     455,    1316,     828,     584,     719,
  404,     -31,    1013,     789,      89,     107,     891,     549,
  871,    1581,     917,     671,     866,    1479,    1289,     854,
  391,    1068,    1122,     812,      78,    -562,     345,     563,
  429,    -103,     417,     787,    -122,    -437,     411,     788,
 -913,    -417,     602,     754,    -226,     -16,     151,     760,
 -700,     118,    -104,     -14,   -1128,      48,     284,     393,
 -390,    -419,    -639,    -116,    -910,     306,     316,     -13,
 1207,     984,     821,     669,   -1195,    -693,     140,    -213,
 -884,    -416,    -199,    -558,    -616,     245,    -404,    -664,
  262,      56,    -617,    -724,     -85,    -491,    -320,    -656,
 -570,    -831,    -129,    -528,   -1506,     -63,    -367,    -385,
 -358,    -321,       4,      51,    -366,    -214,     319,     511,
  146,     671,     -17,    -291,    -110,     464,    -139,    -496,
 -202,     220,    -312,    -631,    -660,     -73,    -655,    -820,
 -662,    -653,   -1288,    -857,    -430,    -953,    -959,    -264,
  -49,    -468,     -72,    -381,    -350,    -563,    -193,    -407,
   55,    -408,    -803,      11,    -309,     649,     188,    -198,
 -512,     461,     -79,    -458,   -1318,    -263,    -134,    -523,
-1657,    -435,    -495,    -765,      57,    -347,    -414,     434,
-1141,    -242,    -664,    -857,      34,     -68,    -707,    -338
};


//const short TableMeanLSF_5[10] = {1384, 2077, 3420, 5108, 6742, 8122, 9863, 11092, 12714, 13701};
__ALIGN32 CONST short TableMeanLSF_5[10] = {1384, 2077, 3420, 5108, 6742, 8122, 9863, 11092, 12714, 13701};

__ALIGN32 CONST short TableQuantGainPitch[16] = {
     0,  3277,  6556,  8192,
  9830, 11469, 12288, 13107,
 13926, 14746, 15565, 16384,
 17203, 18022, 18842, 19661
};

__ALIGN32 CONST short TableLSPInitData[LP_ORDER_SIZE] = {
    30000, 26000, 21000, 15000, 8000,  0, -8000, -15000, -21000, -26000
};

/********************************************************************************
*      Tables for ownPrm2Bits_GSMAMR and ownBits2Prm_GSMAMR
*********************************************************************************/

/* number of parameters per modes (values must be <= MAX_NUM_PRM!) */
enum _PRMNO_MR{
    PRMNO_MR475=17,
    PRMNO_MR515=19,
    PRMNO_MR59=19,
    PRMNO_MR67=19,
    PRMNO_MR74=19,
    PRMNO_MR795=23,
    PRMNO_MR102=39,
    PRMNO_MR122=57,
    PRMNO_MRDTX=5
};

/* number of parameters per modes (values must be <= MAX_NUM_PRM!) */
__ALIGN32 CONST short TableParamPerModes[N_MODES] = {
  PRMNO_MR475,  PRMNO_MR515,  PRMNO_MR59,  PRMNO_MR67,
  PRMNO_MR74,  PRMNO_MR795,  PRMNO_MR102,  PRMNO_MR122,
  PRMNO_MRDTX
};

static __ALIGN32 CONST short TblBit_M475[PRMNO_MR475] = {
   8, 8, 7,                                 /* LSP part */
   8, 7, 2, 8,                              /* 1 quarter of subframe  */
   4, 7, 2,                                 /* 2 quarter of subframe  */
   4, 7, 2, 8,                              /* 3 quarter of subframe  */
   4, 7, 2,                                 /* 4 quarter of subframe  */
};

static __ALIGN32 CONST short TblBit_M515[PRMNO_MR515] = {
   8, 8, 7,                                 /* LSP part */
   8, 7, 2, 6,                              /* 1 quarter of subframe  */
   4, 7, 2, 6,                              /* 2 quarter of subframe  */
   4, 7, 2, 6,                              /* 3 quarter of subframe  */
   4, 7, 2, 6,                              /* 4 quarter of subframe  */
};

static __ALIGN32 CONST short TblBit_M59[PRMNO_MR59] = {
   8, 9, 9,                                 /* LSP part */
   8, 9, 2, 6,                              /* 1 quarter of subframe  */
   4, 9, 2, 6,                              /* 2 quarter of subframe  */
   8, 9, 2, 6,                              /* 3 quarter of subframe  */
   4, 9, 2, 6,                              /* 4 quarter of subframe  */
};

static __ALIGN32 CONST short TblBit_M67[PRMNO_MR67] = {
   8, 9, 9,                                 /* LSP part */
   8, 11, 3, 7,                             /* 1 quarter of subframe  */
   4, 11, 3, 7,                             /* 2 quarter of subframe  */
   8, 11, 3, 7,                             /* 3 quarter of subframe  */
   4, 11, 3, 7,                             /* 4 quarter of subframe  */
};

static __ALIGN32 CONST short TblBit_M74[PRMNO_MR74] = {
   8, 9, 9,                                 /* LSP part */
   8, 13, 4, 7,                             /* 1 quarter of subframe  */
   5, 13, 4, 7,                             /* 2 quarter of subframe  */
   8, 13, 4, 7,                             /* 3 quarter of subframe  */
   5, 13, 4, 7,                             /* 4 quarter of subframe  */
};

static __ALIGN32 CONST short TblBit_M795[PRMNO_MR795] = {
   9, 9, 9,                                 /* LSP part */
   8, 13, 4, 4, 5,                          /* 1 quarter of subframe  */
   6, 13, 4, 4, 5,                          /* 2 quarter of subframe  */
   8, 13, 4, 4, 5,                          /* 3 quarter of subframe  */
   6, 13, 4, 4, 5,                          /* 4 quarter of subframe  */
};

static __ALIGN32 CONST short TblBit_M102[PRMNO_MR102] = {
   8, 9, 9,                                 /* LSP part */
   8, 1, 1, 1, 1, 10, 10, 7, 7,             /* 1 quarter of subframe  */
   5, 1, 1, 1, 1, 10, 10, 7, 7,             /* 2 quarter of subframe  */
   8, 1, 1, 1, 1, 10, 10, 7, 7,             /* 3 quarter of subframe  */
   5, 1, 1, 1, 1, 10, 10, 7, 7,             /* 4 quarter of subframe  */
};

static __ALIGN32 CONST short TblBit_M122[PRMNO_MR122] = {
   7, 8, 9, 8, 6,                           /* LSP part */
   9, 4, 4, 4, 4, 4, 4, 3, 3, 3, 3, 3, 5,   /* 1 quarter of subframe  */
   6, 4, 4, 4, 4, 4, 4, 3, 3, 3, 3, 3, 5,   /* 2 quarter of subframe  */
   9, 4, 4, 4, 4, 4, 4, 3, 3, 3, 3, 3, 5,   /* 3 quarter of subframe  */
   6, 4, 4, 4, 4, 4, 4, 3, 3, 3, 3, 3, 5    /* 4 quarter of subframe  */
};

static __ALIGN32 CONST short TblBit_MDTX[PRMNO_MRDTX] = {3, 8, 9, 9, 6};

__ALIGN32 CONST short *TableBitAllModes[N_MODES] = {
   TblBit_M475,
   TblBit_M515,
   TblBit_M59,
   TblBit_M67,
   TblBit_M74,
   TblBit_M795,
   TblBit_M102,
   TblBit_M122,
   TblBit_MDTX
};

__ALIGN32 CONST IppSpchBitRate mode2rates[N_MODES] = {
   IPP_SPCHBR_4750,
   IPP_SPCHBR_5150,
   IPP_SPCHBR_5900,
   IPP_SPCHBR_6700,
   IPP_SPCHBR_7400,
   IPP_SPCHBR_7950,
   IPP_SPCHBR_10200,
   IPP_SPCHBR_12200,
   IPP_SPCHBR_DTX
};

⌨️ 快捷键说明

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