mirror of
https://github.com/UberGames/ioef.git
synced 2024-11-30 16:01:46 +00:00
360 lines
8.1 KiB
C
360 lines
8.1 KiB
C
/* Copyright (C) 2002 Jean-Marc Valin
|
|
File: lsp_tables_nb.c
|
|
Codebooks for LSPs in narrowband CELP mode
|
|
|
|
Redistribution and use in source and binary forms, with or without
|
|
modification, are permitted provided that the following conditions are
|
|
met:
|
|
|
|
1. Redistributions of source code must retain the above copyright notice,
|
|
this list of conditions and the following disclaimer.
|
|
|
|
2. Redistributions in binary form must reproduce the above copyright
|
|
notice, this list of conditions and the following disclaimer in the
|
|
documentation and/or other materials provided with the distribution.
|
|
|
|
3. The name of the author may not be used to endorse or promote products
|
|
derived from this software without specific prior written permission.
|
|
|
|
THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
|
|
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
|
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
|
DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT,
|
|
INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
|
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
|
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
|
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
|
|
STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
|
|
ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
|
POSSIBILITY OF SUCH DAMAGE.
|
|
*/
|
|
|
|
const signed char cdbk_nb[640]={
|
|
30,19,38,34,40,32,46,43,58,43,
|
|
5,-18,-25,-40,-33,-55,-52,20,34,28,
|
|
-20,-63,-97,-92,61,53,47,49,53,75,
|
|
-14,-53,-77,-79,0,-3,-5,19,22,26,
|
|
-9,-53,-55,66,90,72,85,68,74,52,
|
|
-4,-41,-58,-31,-18,-31,27,32,30,18,
|
|
24,3,8,5,-12,-3,26,28,74,63,
|
|
-2,-39,-67,-77,-106,-74,59,59,73,65,
|
|
44,40,71,72,82,83,98,88,89,60,
|
|
-6,-31,-47,-48,-13,-39,-9,7,2,79,
|
|
-1,-39,-60,-17,87,81,65,50,45,19,
|
|
-21,-67,-91,-87,-41,-50,7,18,39,74,
|
|
10,-31,-28,39,24,13,23,5,56,45,
|
|
29,10,-5,-13,-11,-35,-18,-8,-10,-8,
|
|
-25,-71,-77,-21,2,16,50,63,87,87,
|
|
5,-32,-40,-51,-68,0,12,6,54,34,
|
|
5,-12,32,52,68,64,69,59,65,45,
|
|
14,-16,-31,-40,-65,-67,41,49,47,37,
|
|
-11,-52,-75,-84,-4,57,48,42,42,33,
|
|
-11,-51,-68,-6,13,0,8,-8,26,32,
|
|
-23,-53,0,36,56,76,97,105,111,97,
|
|
-1,-28,-39,-40,-43,-54,-44,-40,-18,35,
|
|
16,-20,-19,-28,-42,29,47,38,74,45,
|
|
3,-29,-48,-62,-80,-104,-33,56,59,59,
|
|
10,17,46,72,84,101,117,123,123,106,
|
|
-7,-33,-49,-51,-70,-67,-27,-31,70,67,
|
|
-16,-62,-85,-20,82,71,86,80,85,74,
|
|
-19,-58,-75,-45,-29,-33,-18,-25,45,57,
|
|
-12,-42,-5,12,28,36,52,64,81,82,
|
|
13,-9,-27,-28,22,3,2,22,26,6,
|
|
-6,-44,-51,2,15,10,48,43,49,34,
|
|
-19,-62,-84,-89,-102,-24,8,17,61,68,
|
|
39,24,23,19,16,-5,12,15,27,15,
|
|
-8,-44,-49,-60,-18,-32,-28,52,54,62,
|
|
-8,-48,-77,-70,66,101,83,63,61,37,
|
|
-12,-50,-75,-64,33,17,13,25,15,77,
|
|
1,-42,-29,72,64,46,49,31,61,44,
|
|
-8,-47,-54,-46,-30,19,20,-1,-16,0,
|
|
16,-12,-18,-9,-26,-27,-10,-22,53,45,
|
|
-10,-47,-75,-82,-105,-109,8,25,49,77,
|
|
50,65,114,117,124,118,115,96,90,61,
|
|
-9,-45,-63,-60,-75,-57,8,11,20,29,
|
|
0,-35,-49,-43,40,47,35,40,55,38,
|
|
-24,-76,-103,-112,-27,3,23,34,52,75,
|
|
8,-29,-43,12,63,38,35,29,24,8,
|
|
25,11,1,-15,-18,-43,-7,37,40,21,
|
|
-20,-56,-19,-19,-4,-2,11,29,51,63,
|
|
-2,-44,-62,-75,-89,30,57,51,74,51,
|
|
50,46,68,64,65,52,63,55,65,43,
|
|
18,-9,-26,-35,-55,-69,3,6,8,17,
|
|
-15,-61,-86,-97,1,86,93,74,78,67,
|
|
-1,-38,-66,-48,48,39,29,25,17,-1,
|
|
13,13,29,39,50,51,69,82,97,98,
|
|
-2,-36,-46,-27,-16,-30,-13,-4,-7,-4,
|
|
25,-5,-11,-6,-25,-21,33,12,31,29,
|
|
-8,-38,-52,-63,-68,-89,-33,-1,10,74,
|
|
-2,-15,59,91,105,105,101,87,84,62,
|
|
-7,-33,-50,-35,-54,-47,25,17,82,81,
|
|
-13,-56,-83,21,58,31,42,25,72,65,
|
|
-24,-66,-91,-56,9,-2,21,10,69,75,
|
|
2,-24,11,22,25,28,38,34,48,33,
|
|
7,-29,-26,17,15,-1,14,0,-2,0,
|
|
-6,-41,-67,6,-2,-9,19,2,85,74,
|
|
-22,-67,-84,-71,-50,3,11,-9,2,62};
|
|
|
|
const signed char cdbk_nb_low1[320]={
|
|
-34,-52,-15,45,2,
|
|
23,21,52,24,-33,
|
|
-9,-1,9,-44,-41,
|
|
-13,-17,44,22,-17,
|
|
-6,-4,-1,22,38,
|
|
26,16,2,50,27,
|
|
-35,-34,-9,-41,6,
|
|
0,-16,-34,51,8,
|
|
-14,-31,-49,15,-33,
|
|
45,49,33,-11,-37,
|
|
-62,-54,45,11,-5,
|
|
-72,11,-1,-12,-11,
|
|
24,27,-11,-43,46,
|
|
43,33,-12,-9,-1,
|
|
1,-4,-23,-57,-71,
|
|
11,8,16,17,-8,
|
|
-20,-31,-41,53,48,
|
|
-16,3,65,-24,-8,
|
|
-23,-32,-37,-32,-49,
|
|
-10,-17,6,38,5,
|
|
-9,-17,-46,8,52,
|
|
3,6,45,40,39,
|
|
-7,-6,-34,-74,31,
|
|
8,1,-16,43,68,
|
|
-11,-19,-31,4,6,
|
|
0,-6,-17,-16,-38,
|
|
-16,-30,2,9,-39,
|
|
-16,-1,43,-10,48,
|
|
3,3,-16,-31,-3,
|
|
62,68,43,13,3,
|
|
-10,8,20,-56,12,
|
|
12,-2,-18,22,-15,
|
|
-40,-36,1,7,41,
|
|
0,1,46,-6,-62,
|
|
-4,-12,-2,-11,-83,
|
|
-13,-2,91,33,-10,
|
|
0,4,-11,-16,79,
|
|
32,37,14,9,51,
|
|
-21,-28,-56,-34,0,
|
|
21,9,-26,11,28,
|
|
-42,-54,-23,-2,-15,
|
|
31,30,8,-39,-66,
|
|
-39,-36,31,-28,-40,
|
|
-46,35,40,22,24,
|
|
33,48,23,-34,14,
|
|
40,32,17,27,-3,
|
|
25,26,-13,-61,-17,
|
|
11,4,31,60,-6,
|
|
-26,-41,-64,13,16,
|
|
-26,54,31,-11,-23,
|
|
-9,-11,-34,-71,-21,
|
|
-34,-35,55,50,29,
|
|
-22,-27,-50,-38,57,
|
|
33,42,57,48,26,
|
|
11,0,-49,-31,26,
|
|
-4,-14,5,78,37,
|
|
17,0,-49,-12,-23,
|
|
26,14,2,2,-43,
|
|
-17,-12,10,-8,-4,
|
|
8,18,12,-6,20,
|
|
-12,-6,-13,-25,34,
|
|
15,40,49,7,8,
|
|
13,20,20,-19,-22,
|
|
-2,-8,2,51,-51};
|
|
|
|
const signed char cdbk_nb_low2[320]={
|
|
-6,53,-21,-24,4,
|
|
26,17,-4,-37,25,
|
|
17,-36,-13,31,3,
|
|
-6,27,15,-10,31,
|
|
28,26,-10,-10,-40,
|
|
16,-7,15,13,41,
|
|
-9,0,-4,50,-6,
|
|
-7,14,38,22,0,
|
|
-48,2,1,-13,-19,
|
|
32,-3,-60,11,-17,
|
|
-1,-24,-34,-1,35,
|
|
-5,-27,28,44,13,
|
|
25,15,42,-11,15,
|
|
51,35,-36,20,8,
|
|
-4,-12,-29,19,-47,
|
|
49,-15,-4,16,-29,
|
|
-39,14,-30,4,25,
|
|
-9,-5,-51,-14,-3,
|
|
-40,-32,38,5,-9,
|
|
-8,-4,-1,-22,71,
|
|
-3,14,26,-18,-22,
|
|
24,-41,-25,-24,6,
|
|
23,19,-10,39,-26,
|
|
-27,65,45,2,-7,
|
|
-26,-8,22,-12,16,
|
|
15,16,-35,-5,33,
|
|
-21,-8,0,23,33,
|
|
34,6,21,36,6,
|
|
-7,-22,8,-37,-14,
|
|
31,38,11,-4,-3,
|
|
-39,-32,-8,32,-23,
|
|
-6,-12,16,20,-28,
|
|
-4,23,13,-52,-1,
|
|
22,6,-33,-40,-6,
|
|
4,-62,13,5,-26,
|
|
35,39,11,2,57,
|
|
-11,9,-20,-28,-33,
|
|
52,-5,-6,-2,22,
|
|
-14,-16,-48,35,1,
|
|
-58,20,13,33,-1,
|
|
-74,56,-18,-22,-31,
|
|
12,6,-14,4,-2,
|
|
-9,-47,10,-3,29,
|
|
-17,-5,61,14,47,
|
|
-12,2,72,-39,-17,
|
|
92,64,-53,-51,-15,
|
|
-30,-38,-41,-29,-28,
|
|
27,9,36,9,-35,
|
|
-42,81,-21,20,25,
|
|
-16,-5,-17,-35,21,
|
|
15,-28,48,2,-2,
|
|
9,-19,29,-40,30,
|
|
-18,-18,18,-16,-57,
|
|
15,-20,-12,-15,-37,
|
|
-15,33,-39,21,-22,
|
|
-13,35,11,13,-38,
|
|
-63,29,23,-27,32,
|
|
18,3,-26,42,33,
|
|
-64,-66,-17,16,56,
|
|
2,36,3,31,21,
|
|
-41,-39,8,-57,14,
|
|
37,-2,19,-36,-19,
|
|
-23,-29,-16,1,-3,
|
|
-8,-10,31,64,-65};
|
|
|
|
const signed char cdbk_nb_high1[320]={
|
|
-26,-8,29,21,4,
|
|
19,-39,33,-7,-36,
|
|
56,54,48,40,29,
|
|
-4,-24,-42,-66,-43,
|
|
-60,19,-2,37,41,
|
|
-10,-37,-60,-64,18,
|
|
-22,77,73,40,25,
|
|
4,19,-19,-66,-2,
|
|
11,5,21,14,26,
|
|
-25,-86,-4,18,1,
|
|
26,-37,10,37,-1,
|
|
24,-12,-59,-11,20,
|
|
-6,34,-16,-16,42,
|
|
19,-28,-51,53,32,
|
|
4,10,62,21,-12,
|
|
-34,27,4,-48,-48,
|
|
-50,-49,31,-7,-21,
|
|
-42,-25,-4,-43,-22,
|
|
59,2,27,12,-9,
|
|
-6,-16,-8,-32,-58,
|
|
-16,-29,-5,41,23,
|
|
-30,-33,-46,-13,-10,
|
|
-38,52,52,1,-17,
|
|
-9,10,26,-25,-6,
|
|
33,-20,53,55,25,
|
|
-32,-5,-42,23,21,
|
|
66,5,-28,20,9,
|
|
75,29,-7,-42,-39,
|
|
15,3,-23,21,6,
|
|
11,1,-29,14,63,
|
|
10,54,26,-24,-51,
|
|
-49,7,-23,-51,15,
|
|
-66,1,60,25,10,
|
|
0,-30,-4,-15,17,
|
|
19,59,40,4,-5,
|
|
33,6,-22,-58,-70,
|
|
-5,23,-6,60,44,
|
|
-29,-16,-47,-29,52,
|
|
-19,50,28,16,35,
|
|
31,36,0,-21,6,
|
|
21,27,22,42,7,
|
|
-66,-40,-8,7,19,
|
|
46,0,-4,60,36,
|
|
45,-7,-29,-6,-32,
|
|
-39,2,6,-9,33,
|
|
20,-51,-34,18,-6,
|
|
19,6,11,5,-19,
|
|
-29,-2,42,-11,-45,
|
|
-21,-55,57,37,2,
|
|
-14,-67,-16,-27,-38,
|
|
69,48,19,2,-17,
|
|
20,-20,-16,-34,-17,
|
|
-25,-61,10,73,45,
|
|
16,-40,-64,-17,-29,
|
|
-22,56,17,-39,8,
|
|
-11,8,-25,-18,-13,
|
|
-19,8,54,57,36,
|
|
-17,-26,-4,6,-21,
|
|
40,42,-4,20,31,
|
|
53,10,-34,-53,31,
|
|
-17,35,0,15,-6,
|
|
-20,-63,-73,22,25,
|
|
29,17,8,-29,-39,
|
|
-69,18,15,-15,-5};
|
|
|
|
const signed char cdbk_nb_high2[320]={
|
|
11,47,16,-9,-46,
|
|
-32,26,-64,34,-5,
|
|
38,-7,47,20,2,
|
|
-73,-99,-3,-45,20,
|
|
70,-52,15,-6,-7,
|
|
-82,31,21,47,51,
|
|
39,-3,9,0,-41,
|
|
-7,-15,-54,2,0,
|
|
27,-31,9,-45,-22,
|
|
-38,-24,-24,8,-33,
|
|
23,5,50,-36,-17,
|
|
-18,-51,-2,13,19,
|
|
43,12,-15,-12,61,
|
|
38,38,7,13,0,
|
|
6,-1,3,62,9,
|
|
27,22,-33,38,-35,
|
|
-9,30,-43,-9,-32,
|
|
-1,4,-4,1,-5,
|
|
-11,-8,38,31,11,
|
|
-10,-42,-21,-37,1,
|
|
43,15,-13,-35,-19,
|
|
-18,15,23,-26,59,
|
|
1,-21,53,8,-41,
|
|
-50,-14,-28,4,21,
|
|
25,-28,-40,5,-40,
|
|
-41,4,51,-33,-8,
|
|
-8,1,17,-60,12,
|
|
25,-41,17,34,43,
|
|
19,45,7,-37,24,
|
|
-15,56,-2,35,-10,
|
|
48,4,-47,-2,5,
|
|
-5,-54,5,-3,-33,
|
|
-10,30,-2,-44,-24,
|
|
-38,9,-9,42,4,
|
|
6,-56,44,-16,9,
|
|
-40,-26,18,-20,10,
|
|
28,-41,-21,-4,13,
|
|
-18,32,-30,-3,37,
|
|
15,22,28,50,-40,
|
|
3,-29,-64,7,51,
|
|
-19,-11,17,-27,-40,
|
|
-64,24,-12,-7,-27,
|
|
3,37,48,-1,2,
|
|
-9,-38,-34,46,1,
|
|
27,-6,19,-13,26,
|
|
10,34,20,25,40,
|
|
50,-6,-7,30,9,
|
|
-24,0,-23,71,-61,
|
|
22,58,-34,-4,2,
|
|
-49,-33,25,30,-8,
|
|
-6,-16,77,2,38,
|
|
-8,-35,-6,-30,56,
|
|
78,31,33,-20,13,
|
|
-39,20,22,4,21,
|
|
-8,4,-6,10,-83,
|
|
-41,9,-25,-43,15,
|
|
-7,-12,-34,-39,-37,
|
|
-33,19,30,16,-33,
|
|
42,-25,25,-68,44,
|
|
-15,-11,-4,23,50,
|
|
14,4,-39,-43,20,
|
|
-30,60,9,-20,7,
|
|
16,19,-33,37,29,
|
|
16,-35,7,38,-27};
|