?? sp_rom.c
字號:
/**************************************************************************
*
* File Name: sp_rom.c
*
* Purpose: Contains all globally available constant (ROM) data
* used by the speech codec: quantization tables, codebooks, etc.
* Some ROM is defined within the file where it is used. In those
* cases, the scope of the ROM variables is limited to the file
*
**************************************************************************/
/*_________________________________________________________________________
| |
| Include Files |
|_________________________________________________________________________|
*/
#include "mathhalf.h"
#include "sp_rom.h"
/*_________________________________________________________________________
| |
| Global Data |
| (scope is global to the entire program) |
|_________________________________________________________________________|
*/
/* gsp0 vector quantizer */
/*-----------------------*/
/* THE GSP0 ERROR TERM VECTORS FOR 5 BITS FOLLOW
THE GSP0 TABLE WAS READ FROM THE FILES gsp0_1_*.qnt_97CQ_4
ET VALUES WRITTEN WERE SCALED BY 4 */
ShortwordRom pppsrGsp0
[GSP0_NUM_OF_TABLES][GSP0_NUM][GSP0_VECTOR_SIZE] =
{
{
{33, 34, 0, 0, 0}, /* Table 1, Centroid # 1 */
{58, 63, 0, 0, 0}, /* Table 1, Centroid # 2 */
{85, 89, 0, 0, 0}, /* Table 1, Centroid # 3 */
{139, 149, -1, -1, -1}, /* Table 1, Centroid # 4 */
{233, 235, -3, -2, -2}, /* Table 1, Centroid # 5 */
{313, 329, -6, -3, -3}, /* Table 1, Centroid # 6 */
{440, 456, -12, -6, -6}, /* Table 1, Centroid # 7 */
{703, 530, -23, -15, -9}, /* Table 1, Centroid # 8 */
{892, 767, -42, -24, -18}, /* Table 1, Centroid # 9 */
{963, 1329, -78, -28, -54}, /* Table 1, Centroid # 10 */
{1447, 1165, -103, -64, -41}, /* Table 1, Centroid # 11 */
{1894, 1362, -157, -109, -57}, /* Table 1, Centroid # 12 */
{1639, 2194, -219, -82, -147}, /* Table 1, Centroid # 13 */
{2120, 3211, -415, -137, -315}, /* Table 1, Centroid # 14 */
{2994, 2147, -392, -274, -141}, /* Table 1, Centroid # 15 */
{4132, 2566, -647, -521, -201}, /* Table 1, Centroid # 16 */
{3040, 4009, -744, -282, -490}, /* Table 1, Centroid # 17 */
{4012, 5316, -1302, -491, -862}, /* Table 1, Centroid # 18 */
{5356, 3752, -1226, -875, -430}, /* Table 1, Centroid # 19 */
{7068, 4287, -1850, -1525, -561}, /* Table 1, Centroid # 20 */
{4927, 7072, -2127, -741, -1526}, /* Table 1, Centroid # 21 */
{6996, 7304, -3118, -1493, -1628}, /* Table 1, Centroid # 22 */
{9047, 6154, -3398, -2498, -1156}, /* Table 1, Centroid # 23 */
{11747, 6009, -4309, -4211, -1102},/* Table 1, Centroid # 24 */
{5144, 10368, -3255, -808, -3280}, /* Table 1, Centroid # 25 */
{7677, 12151, -5693, -1798, -4506},/* Table 1, Centroid # 26 */
{8796, 9286, -4986, -2361, -2632}, /* Table 1, Centroid # 27 */
{11323, 9802, -6774, -3912, -2932},/* Table 1, Centroid # 28 */
{10555, 15059, -9701, -3400, -6920}, /* Table 1, Centroid # 29 */
{17566, 15641, -16769, -9417, -7465}, /* Table 1, Centroid # 30 */
{13934, 9966, -8476, -5925, -3031},/* Table 1, Centroid # 31 */
{17646, 8051, -8672, -9503, -1978},/* Table 1, Centroid # 32 */
},
{
{65, 62, 0, 0, 0}, /* Table 2, Centroid # 1 */
{199, 174, -2, -1, -1}, /* Table 2, Centroid # 2 */
{526, 613, -20, -8, -11}, /* Table 2, Centroid # 3 */
{705, 1191, -51, -15, -43}, /* Table 2, Centroid # 4 */
{1695, 1067, -110, -88, -35}, /* Table 2, Centroid # 5 */
{2176, 1897, -252, -144, -110}, /* Table 2, Centroid # 6 */
{848, 3038, -157, -22, -282}, /* Table 2, Centroid # 7 */
{2105, 3693, -474, -135, -416}, /* Table 2, Centroid # 8 */
{3483, 1605, -341, -370, -79}, /* Table 2, Centroid # 9 */
{3552, 3236, -702, -385, -320}, /* Table 2, Centroid # 10 */
{4869, 2028, -603, -723, -126}, /* Table 2, Centroid # 11 */
{6296, 2220, -853, -1210, -150}, /* Table 2, Centroid # 12 */
{1425, 5682, -494, -62, -985}, /* Table 2, Centroid # 13 */
{3538, 5556, -1200, -382, -942}, /* Table 2, Centroid # 14 */
{1468, 8528, -764, -66, -2219}, /* Table 2, Centroid # 15 */
{4805, 8004, -2347, -705, -1955}, /* Table 2, Centroid # 16 */
{5189, 4143, -1312, -822, -524}, /* Table 2, Centroid # 17 */
{6409, 5573, -2180, -1254, -948}, /* Table 2, Centroid # 18 */
{7493, 2955, -1351, -1713, -266}, /* Table 2, Centroid # 19 */
{8902, 2344, -1274, -2418, -168}, /* Table 2, Centroid # 20 */
{8212, 5266, -2639, -2058, -846}, /* Table 2, Centroid # 21 */
{10190, 5396, -3356, -3169, -889}, /* Table 2, Centroid # 22 */
{10556, 3007, -1938, -3401, -276}, /* Table 2, Centroid # 23 */
{12517, 2934, -2242, -4781, -263}, /* Table 2, Centroid # 24 */
{5383, 11357, -3731, -884, -3936}, /* Table 2, Centroid # 25 */
{9432, 9038, -5203, -2715, -2493}, /* Table 2, Centroid # 26 */
{7993, 17273, -8426, -1950, -9105},/* Table 2, Centroid # 27 */
{16236, 12894, -12778, -8045, -5073}, /* Table 2, Centroid # 28 */
{12832, 6896, -5401, -5025, -1451},/* Table 2, Centroid # 29 */
{14842, 4024, -3645, -6723, -494}, /* Table 2, Centroid # 30 */
{18013, 7332, -8062, -9902, -1641},/* Table 2, Centroid # 31 */
{19019, 3737, -4338, -11039, -426},/* Table 2, Centroid # 32 */
},
{
{1004, 731, -45, -31, -16}, /* Table 3, Centroid # 1 */
{1412, 1843, -159, -61, -104}, /* Table 3, Centroid # 2 */
{2700, 1489, -245, -222, -68}, /* Table 3, Centroid # 3 */
{2785, 2657, -452, -237, -215}, /* Table 3, Centroid # 4 */
{4054, 1682, -416, -502, -86}, /* Table 3, Centroid # 5 */
{4499, 2664, -732, -618, -217}, /* Table 3, Centroid # 6 */
{5155, 1429, -450, -811, -62}, /* Table 3, Centroid # 7 */
{6006, 1561, -572, -1101, -74}, /* Table 3, Centroid # 8 */
{3421, 4218, -881, -357, -543}, /* Table 3, Centroid # 9 */
{4313, 5518, -1452, -568, -929}, /* Table 3, Centroid # 10 */
{5540, 3384, -1144, -937, -350}, /* Table 3, Centroid # 11 */
{6832, 3531, -1472, -1424, -381}, /* Table 3, Centroid # 12 */
{6382, 2333, -909, -1243, -166}, /* Table 3, Centroid # 13 */
{7417, 1574, -713, -1679, -76}, /* Table 3, Centroid # 14 */
{8037, 2688, -1319, -1971, -221}, /* Table 3, Centroid # 15 */
{9014, 1637, -900, -2479, -82}, /* Table 3, Centroid # 16 */
{6141, 6173, -2314, -1151, -1163}, /* Table 3, Centroid # 17 */
{7883, 4573, -2201, -1896, -638}, /* Table 3, Centroid # 18 */
{8608, 7132, -3747, -2261, -1552}, /* Table 3, Centroid # 19 */
{10098, 4698, -2896, -3112, -674}, /* Table 3, Centroid # 20 */
{9036, 3633, -2004, -2492, -403}, /* Table 3, Centroid # 21 */
{9953, 2317, -1408, -3023, -164}, /* Table 3, Centroid # 22 */
{11108, 3228, -2188, -3766, -318}, /* Table 3, Centroid # 23 */
{11570, 1843, -1302, -4085, -104}, /* Table 3, Centroid # 24 */
{11706, 6610, -4723, -4182, -1333},/* Table 3, Centroid # 25 */
{13128, 4692, -3760, -5260, -672}, /* Table 3, Centroid # 26 */
{12725, 2951, -2292, -4942, -266}, /* Table 3, Centroid # 27 */
{14028, 2325, -1990, -6005, -165}, /* Table 3, Centroid # 28 */
{16126, 7702, -7580, -7936, -1810},/* Table 3, Centroid # 29 */
{15583, 4486, -4267, -7411, -614}, /* Table 3, Centroid # 30 */
{16137, 2609, -2569, -7947, -208}, /* Table 3, Centroid # 31 */
{19264, 3907, -4593, -11325, -466},/* Table 3, Centroid # 32 */
},
{
{1900, 1716, -199, -110, -90}, /* Table 4, Centroid # 1 */
{2946, 979, -176, -265, -29}, /* Table 4, Centroid # 2 */
{3683, 842, -189, -414, -22}, /* Table 4, Centroid # 3 */
{4395, 1025, -275, -589, -32}, /* Table 4, Centroid # 4 */
{3540, 2364, -511, -382, -171}, /* Table 4, Centroid # 5 */
{5001, 1944, -594, -763, -115}, /* Table 4, Centroid # 6 */
{5189, 852, -270, -822, -22}, /* Table 4, Centroid # 7 */
{5862, 1050, -376, -1049, -34}, /* Table 4, Centroid # 8 */
{5221, 2984, -951, -832, -272}, /* Table 4, Centroid # 9 */
{6189, 3184, -1203, -1169, -309}, /* Table 4, Centroid # 10 */
{6408, 1263, -494, -1253, -49}, /* Table 4, Centroid # 11 */
{7032, 1044, -448, -1509, -33}, /* Table 4, Centroid # 12 */
{6965, 2270, -965, -1481, -157}, /* Table 4, Centroid # 13 */
{7875, 2276, -1094, -1893, -158}, /* Table 4, Centroid # 14 */
{7691, 1181, -554, -1805, -43}, /* Table 4, Centroid # 15 */
{8365, 944, -482, -2135, -27}, /* Table 4, Centroid # 16 */
{7657, 4252, -1987, -1789, -552}, /* Table 4, Centroid # 17 */
{8878, 2876, -1559, -2405, -253}, /* Table 4, Centroid # 18 */
{8733, 1813, -966, -2328, -100}, /* Table 4, Centroid # 19 */
{9279, 1167, -661, -2628, -42}, /* Table 4, Centroid # 20 */
{9894, 3465, -2092, -2988, -366}, /* Table 4, Centroid # 21 */
{10615, 2340, -1516, -3439, -167}, /* Table 4, Centroid # 22 */
{10057, 1444, -886, -3087, -64}, /* Table 4, Centroid # 23 */
{10975, 1209, -810, -3676, -45}, /* Table 4, Centroid # 24 */
{11358, 4510, -3127, -3937, -621}, /* Table 4, Centroid # 25 */
{12248, 2748, -2054, -4578, -230}, /* Table 4, Centroid # 26 */
{11824, 1559, -1125, -4267, -74}, /* Table 4, Centroid # 27 */
{12838, 1441, -1129, -5030, -63}, /* Table 4, Centroid # 28 */
{13808, 3978, -3353, -5819, -483}, /* Table 4, Centroid # 29 */
{14250, 1928, -1677, -6197, -113}, /* Table 4, Centroid # 30 */
{16642, 3962, -4025, -8452, -479}, /* Table 4, Centroid # 31 */
{16641, 1762, -1790, -8451, -95}, /* Table 4, Centroid # 32 */
}
};
/* unvoiced code vectors */
/*-----------------------*/
ShortwordRom pppsrUvCodeVec
[UVCODEVEC_NUM_OF_CODE_BOOKS][UVCODEVEC_NUM_OF_CODE_BITS][S_LEN] =
{
{
{
12, 11, -49, -53, 9, /* File# 1, Vec# 1, 1- 5 */
-45, -19, -59, -88, 43, /* File# 1, Vec# 1, 6-10 */
2, -15, 17, -18, 30, /* File# 1, Vec# 1, 11-15 */
71, 19, 22, 30, 1, /* File# 1, Vec# 1, 16-20 */
38, 1, -17, -22, -34, /* File# 1, Vec# 1, 21-25 */
17, -21, -37, -45, -19, /* File# 1, Vec# 1, 26-30 */
23, 5, 40, 40, 14, /* File# 1, Vec# 1, 31-35 */
25, 21, 2, -12, 24 /* File# 1, Vec# 1, 36-40 */
},
{
4, -31, 50, -3, -36, /* File# 1, Vec# 2, 1- 5 */
22, 28, 3, -18, -5, /* File# 1, Vec# 2, 6-10 */
0, 7, 77, 7, -54, /* File# 1, Vec# 2, 11-15 */
42, -29, -48, -11, -3, /* File# 1, Vec# 2, 16-20 */
-18, -34, -4, -47, -61, /* File# 1, Vec# 2, 21-25 */
1, -26, -4, 13, -46, /* File# 1, Vec# 2, 26-30 */
7, -21, -24, 36, 22, /* File# 1, Vec# 2, 31-35 */
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -