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

📄 dec_rom.c

📁 关于AMR-WB+语音压缩编码的实现代码
💻 C
📖 第 1 页 / 共 4 页
字号:
   -978, -217, -430, -400, 101, 261, 72,
   -929, -889, -357, -13, 463, 378, 236,
   -826, 56, 30, -299, -360, -128, -51,
   -878, -299, -111, 75, 65, 36, 3,
   817, 368, -25, 354, 697, 591, -173,
   309, 212, 222, 751, 484, 140, -56,
   593, 379, 70, -8, 258, 180, 110,
   165, -46, 255, 297, 219, 273, 105,
   160, -70, -358, -181, 379, 330, 319,
   -238, -369, -198, 740, 580, 319, -143,
   201, 109, -202, -456, 328, 276, -141,
   203, 170, 111, 42, 207, 360, 188,
   -345, -399, -513, -233, 650, 422, 81,
   -635, -961, -1220, 463, 539, 204, 209,
   202, -25, -194, -498, -787, 193, -143,
   -449, -538, 195, -106, -331, 68, 62,
   -228, -477, -840, -576, 317, 128, 283,
   -671, -937, -807, -114, 391, 335, -62,
   246, 2, -314, -679, -303, 180, -88,
   -107, -272, 90, -198, -28, 290, -112,
   885, 1149, 1021, 712, 496, 281, -83,
   269, 492, 787, 643, 347, 70, 124,
   336, 636, 499, 92, -229, -179, 191,
   26, 402, 564, 340, 149, -11, 135,
   -440, 561, 470, 204, -72, -186, 140,
   -720, 14, 355, 229, 68, -133, 465,
   110, 310, 103, 12, 106, 29, 158,
   -178, 113, 161, 142, 121, 115, 27,
   -651, -414, -645, -152, -164, -13, -429,
   -639, -944, -681, -104, -81, 52, -189,
   -663, -164, -316, -683, -954, -205, -83,
   -609, -669, -172, -517, -694, 283, -80,
   -646, -152, -383, -678, -246, -40, -143,
   -747, -796, -745, -390, -98, 43, 275,
   -599, -199, -398, -433, -436, -538, 31,
   -1107, -568, -376, -265, -126, -21, 1,
   847, 573, 308, 392, 305, 101, 55,
   273, 293, 201, 267, 346, 201, 123,
   727, 480, 226, 2, -65, -138, 164,
   273, 208, 173, 292, 12, 253, 174,
   340, 207, 180, 88, 116, 46, 475,
   -460, -166, -30, 13, 110, 173, 396,
   137, 88, 43, -137, -94, 34, 284,
   96, -14, 226, 40, 63, 70, 130,
   -467, -735, -1012, -1174, -307, 305, -67,
   -612, -920, -1146, -567, -8, 92, -25,
   -182, -271, -492, -754, -857, 287, -75,
   -494, -787, -689, -683, -709, 137, -326,
   -288, -550, -903, -1105, 334, 321, -62,
   -354, -653, -834, -445, 1, 377, -152,
   -162, -306, -608, -937, -297, 247, -192,
   -234, -477, -244, -488, -266, 342, -332
};
/*
 * 2nd stage codebook; 1st split: isf2_0 to isf2_2
 */
const Word16 D_ROM_dico21_isf[SIZE_BK21 * 3] = {
   329, 409, 249,
   -33, 505, 160,
   -29, -14, 582,
   -262, 127, 354,
   145, 237, 175,
   -152, 245, 122,
   27, 42, 340,
   -84, -93, 311,
   285, 222, -156,
   47, -43, -504,
   234, 121, 385,
   104, -317, 45,
   176, 195, 8,
   104, -59, -94,
   177, 53, 192,
   -34, -127, 152,
   570, 277, -34,
   -67, -329, -639,
   -157, -272, 462,
   -177, -462, 198,
   322, 179, 115,
   -386, 171, 19,
   19, -12, 195,
   -120, -252, 201,
   304, 36, -336,
   -128, -221, -380,
   171, -185, 296,
   -242, -312, 23,
   198, 39, 16,
   -3, -177, -111,
   111, -93, 76,
   -92, -223, 4,
   177, 406, -44,
   -168, 380, -149,
   -4, 273, 331,
   -420, 513, 277,
   21, 247, 47,
   -58, 131, -2,
   -3, 134, 180,
   -145, 40, 175,
   189, 74, -145,
   -27, -45, -325,
   370, -114, -21,
   -83, -415, -173,
   77, 95, -51,
   -40, -30, -67,
   71, 88, 86,
   -35, -98, 14,
   69, 197, -334,
   -196, 79, -231,
   -348, -137, 218,
   -352, -89, -85,
   47, 201, -130,
   -165, 37, -15,
   -43, 3, 86,
   -161, -108, 79,
   83, 21, -237,
   -81, -149, -238,
   150, -186, -251,
   -186, -249, -162,
   -19, 66, -139,
   -26, -50, -181,
   24, 11, 0,
   -130, -105, -98
};
/*
 * 2nd stage codebook; 2nd split: isf2_3 to isf2_5
 */
const Word16 D_ROM_dico22_isf[SIZE_BK22 * 3] = {
   -127, 310, 42,
   -242, 197, 5,
   -151, 84, -17,
   -214, 127, -149,
   -247, -131, 159,
   -268, -267, -95,
   -217, 1, -79,
   -271, -80, -185,
   -45, 436, 159,
   165, 199, 391,
   -33, 81, 187,
   -66, -42, 355,
   -298, -57, 343,
   -108, -537, 226,
   -144, -23, 193,
   176, -402, 87,
   53, 296, 25,
   -84, 253, -104,
   -58, 105, -126,
   -169, 174, -314,
   -48, 44, -294,
   -164, -417, -242,
   -139, 3, -194,
   -155, -207, -211,
   119, 322, 213,
   333, 50, 380,
   237, 247, -2,
   466, -16, 201,
   238, -255, -107,
   67, -440, -149,
   122, -88, -139,
   88, -247, -73,
   -41, 231, 167,
   -62, 155, 16,
   -65, 16, 77,
   -68, -2, -63,
   -151, -300, 160,
   -18, -333, 54,
   -56, -94, 5,
   2, -190, 14,
   92, 148, 209,
   108, 9, 272,
   108, 35, 110,
   142, -85, 145,
   47, -157, 279,
   3, -320, 246,
   43, -72, 68,
   86, -217, 135,
   36, 140, 79,
   56, 175, -49,
   26, 45, 3,
   73, 55, -101,
   109, -183, -242,
   -4, -283, -242,
   48, -68, -48,
   -6, -153, -122,
   161, 196, 96,
   232, 80, 190,
   165, 97, 11,
   258, -31, 71,
   267, -77, -91,
   311, -209, 87,
   152, -14, -22,
   150, -149, 9,
   -324, 557, 187,
   -384, 307, 46,
   -251, 27, 77,
   -365, 77, -52,
   -482, -84, 160,
   -424, -515, -64,
   -294, -120, -4,
   -476, -116, -109,
   -97, 318, 365,
   106, 627, 445,
   -190, 120, 287,
   -146, 65, 619,
   -427, 242, 363,
   -361, -371, 432,
   -347, 102, 168,
   -629, 195, -14,
   -65, 476, -47,
   -297, 320, -168,
   -55, 356, -264,
   -391, 82, -286,
   -51, -31, -556,
   -178, -399, -586,
   -205, -49, -360,
   -343, -238, -337,
   220, 457, 58,
   561, 467, 259,
   340, 270, -168,
   450, 77, -280,
   60, 167, -413,
   133, -252, -492,
   216, 157, -290,
   282, 0, -495,
   -226, 293, 183,
   -157, 135, 122,
   -158, -59, 39,
   -133, -118, -97,
   -332, -309, 113,
   -160, -425, -6,
   -149, -211, 24,
   -80, -277, -90,
   -11, 125, 338,
   130, -71, 465,
   5, -45, 184,
   237, -95, 253,
   -139, -197, 297,
   -19, -300, 511,
   -63, -152, 139,
   250, -289, 336,
   124, 339, -150,
   34, 176, -208,
   171, 166, -116,
   94, 38, -229,
   75, -65, -339,
   -78, -205, -385,
   0, -30, -163,
   -56, -110, -242,
   321, 244, 194,
   505, 238, -1,
   317, 116, 65,
   309, 88, -74,
   452, -51, -50,
   334, -217, -290,
   211, 41, -152,
   238, -55, -260
};
/*
 * 2nd stage codebook; 3rd split: isf2_6 to isf2_8
 */
const Word16 D_ROM_dico23_isf[SIZE_BK23 * 3] = {
   -10, 151, 359,
   136, 298, 223,
   255, -104, 290,
   423, 6, 183,
   -270, -269, -98,
   -52, -82, 13,
   -82, -274, -97,
   90, -246, -72,
   -299, -70, 421,
   -88, 365, 430,
   187, -318, 381,
   380, 37, 488,
   -373, -316, 79,
   -308, -101, 5,
   -135, -451, 8,
   72, -421, -154,
   180, 170, -121,
   62, 177, -40,
   326, 80, -105,
   248, 263, -5,
   -168, -181, -221,
   -2, -23, -158,
   -14, -149, -121,
   119, -91, -147,
   119, 332, -153,
   49, 303, 34,
   442, -55, -69,
   217, 454, 58,
   -359, -187, -375,
   -42, 50, -274,
   -8, -267, -249,
   85, -86, -346,
   -77, -40, 345,
   89, 134, 219,
   156, -80, 160,
   108, 40, 116,
   -158, -206, 29,
   5, -32, 175,
   -65, -158, 146,
   55, -78, 73,
   -114, -222, 353,
   -47, 81, 211,
   49, -151, 268,
   105, 4, 302,
   -263, -132, 183,
   -151, -28, 201,
   -177, -307, 166,
   101, -221, 130,
   74, 58, -98,
   32, 44, 13,
   194, 30, -142,
   170, 96, 8,
   -136, -119, -91,
   -65, 8, -55,
   3, -188, 12,
   45, -63, -49,
   149, -21, -19,
   24, 144, 95,
   254, -22, 60,
   161, 196, 96,
   -158, -61, 48,
   -70, 33, 82,
   -23, -321, 58,
   155, -147, 5,
   -364, 328, 77,
   -21, 453, 173,
   -108, 82, 630,
   367, 263, 208,
   -300, -62, -176,
   -205, 143, -158,
   -169, -410, -264,
   257, -269, -100,
   -636, 289, -2,
   -292, 627, 173,
   -382, -363, 387,
   248, 524, 447,
   -521, -111, -107,
   -395, 118, -274,
   -343, -680, -125,
   -172, -447, -663,
   75, 148, -367,
   -79, 263, -94,
   249, 148, -286,
   380, 271, -162,
   -142, -4, -186,
   -57, 111, -125,
   -35, -108, -254,
   100, 29, -242,
   -80, 303, -264,
   -78, 464, -57,
   248, -22, -494,
   661, 662, 44,
   -193, -40, -330,
   -178, 145, -337,
   -90, -199, -400,
   -40, -23, -498,
   -192, 114, 315,
   -41, 244, 190,
   88, -97, 485,
   241, 80, 212,
   -246, 40, 87,
   -156, 147, 134,
   -2, -334, 239,
   308, -203, 110,
   -459, 251, 422,
   -218, 310, 228,
   -86, -346, 654,
   184, 175, 425,
   -481, -63, 169,
   -349, 117, 188,
   -125, -560, 310,
   158, -416, 94,
   46, 171, -192,
   -63, 157, 14,
   256, -35, -271,
   322, 123, 53,
   -214, 4, -76,
   -156, 86, -18,
   128, -197, -232,
   265, -90, -98,
   -308, 332, -145,
   -131, 308, 58,
   509, 59, -339,
   562, 196, -14,
   -378, 100, -47,
   -234, 202, 1,
   104, -270, -493,
   319, -210, -325
};
/*
 * 2nd stage codebook; 4th split: isf2_9 to isf2_11
 */
const Word16 D_ROM_dico24_isf[SIZE_BK24 * 3] = {
   -79, -89, -4,
   -171, 77, -211,
   160, -193, 98,
   120, -103, 323,
   32, -22, -129,
   72, 78, -268,
   182, -76, -66,
   309, 99, -145,
   -229, -157, -84,
   -383, 98, -71,
   -90, -352, 12,
   -284, -178, 178,
   -65, -125, -166,
   -87, -175, -351,
   42, -198, -48,
   154, -140, -243,
   -77, 18, 108,
   -39, 355, 91,
   87, 8, 155,
   -4, 158, 239,
   128, 95, -54,
   7, 246, -124,
   258, 15, 89,
   206, 216, 98,
   -201, 9, 18,
   -312, 233, 204,
   -39, -174, 155,
   -144, -9, 284,
   -57, 70, -69,
   -157, 187, 18,
   54, -30, 23,
   24, 135, 55
};
/*
 * 2nd stage codebook; 5th split: isf2_12 to isf2_15
 */
const Word16 D_ROM_dico25_isf[SIZE_BK25 * 4] = {
   169, 142, -119, 115,
   206, -20, 94, 226,
   -106, 313, -21, 16,
   -62, 161, 71, 255,
   -89, 101, -185, 125,
   72, -30, -201, 344,
   -258, 33, -8, 81,
   -104, -154, 72, 296,
   144, -68, -268, -25,
   81, -78, -87, 106,
   22, 155, -186, -119,
   -46, -28, 27, 91,
   -114, -37, -175, -33,
   -94, -222, -189, 122,
   -132, -119, -191, -270,
   -172, -173, 18, -43,
   279, 135, -42, -128,
   187, -86, 229, -138,
   159, 240, 140, 46,
   69, 25, 227, 77,
   21, 115, 13, 8,
   68, -248, 126, 81,
   -150, 137, 207, -9,
   -154, -133, 289, 67,
   143, -37, -86, -326,
   180, -32, 19, -23,
   26, 168, 116, -233,
   -32, -26, 118, -78,
   3, -8, -45, -115,
   57, -215, -54, -83,
   -209, 112, -22, -167,
   -91, -151, 168, -262
};
/*
 * isf codebooks: two-stage VQ with split-by-3 in 2nd stage
 *                1st stage is kept the same as the 46 bit quantizer
 *
 *  codebook   vector dimension    number of vectors
 *  ~~~~~~~~   ~~~~~~~~~~~~~~~~    ~~~~~~~~~~~~~~~~~
 *     1_1            9                  256
 *     1_2            7                  256
 *     2_1            5                  128
 *     2_2            4                  128
 *     2_3            7                  64
 */
const Word16 D_ROM_dico21_isf_36b[SIZE_BK21_36b * 5] = {
   -52, -96, 212, 315, -73,
   82, -204, 363, 136, -197,
   -126, -331, 183, 218, 143,
   -49, -41, 557, 230, 72,
   2, -73, 163, 377, 221,
   133, 111, 278, 215, -110,
   -102, -20, 284, 113, 273,
   84, 319, 290, 18, 85,
   -25, -5, 125, 132, -204,
   -38, -5, 286, -9, -356,
   -140, -256, 92, 117, -189,
   -144, 191, 313, 51, -98,
   167, -10, 44, 247, 36,
   381, 197, 238, 74, 6,
   38, -408, 29, -3, -85,
   92, 266, 157, -25, -200,
   161, -121, 70, 84, -140,
   -16, -86, 112, -94, -189,
   -269, -270, 351, 107, -24,
   -68, -67, 492, -103, -155,
   -53, -131, 62, 122, 10,
   135, 84, 283, -55, -120,
   -12, -219, 331, -81, 167,
   220, -136, 147, -172, -42,
   140, -95, -109, -88, -194,
   0, -2, -4, -33, -381,
   -66, -217, 152, -186, -402,
   244, 108, 156, -140, -395,
   113, -136, -196, 110, -24,
   214, 118, 11, -64, -131,
   -110, -286, -6, -332, 16,
   94, 97, 79, -291, -205,
   -5, -39, -20, 252, -96,
   76, 174, 101, 163, 61,
   -69, -239, -55, 399, 6,
   -115, 319, 164, 275, 196,

⌨️ 快捷键说明

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