decoder excitation now in 16-bit precision (was 32), which saves quite a bit
[speexdsp.git] / libspeex / exc_5_64_table.c
index b395d87..2c66d51 100644 (file)
@@ -1,64 +1,98 @@
-float exc_5_64_table[64][5]={{-0.0973333,0.178432,-0.601172,1.89742,-2.30989},
-{-1.8483,0.335521,1.55043,-1.24492,0.746452},
-{1.24789,0.524048,-0.976269,0.653535,-1.12829},
-{-0.823627,-0.560543,0.459714,1.05323,-1.0344},
-{-1.37095,0.542134,1.41313,0.103543,-1.01795},
-{-0.963277,-1.34539,2.0497,-0.107354,-0.326052},
-{1.18126,1.18711,0.655662,-0.623788,-0.847049},
-{-0.406767,-0.372742,-0.202805,0.601395,0.0477413},
-{-1.34565,1.01231,-0.47733,0.860824,-1.1144},
-{0.609635,-1.56932,2.094,-1.79074,1.02253},
-{-0.583327,1.47747,-1.97201,1.7975,-1.06984},
-{-1.16664,-0.0854779,-0.098075,-0.577273,-0.505967},
-{-1.18478,1.86676,-0.50806,-1.47168,1.29253},
-{0.963191,-2.23947,1.58898,0.0475762,-0.562043},
-{-0.25152,0.530101,-1.02094,0.838639,-0.623916},
-{-0.548056,-0.09046,-0.0639771,0.508831,1.62666},
-{0.76748,1.06137,-0.960383,-1.15317,0.80923},
-{0.565986,-0.701622,-1.41286,1.18456,1.14557},
-{-0.86658,0.778602,-0.165102,0.154966,0.0499164},
-{-0.74766,0.388835,0.115286,-0.953036,0.916808},
-{1.43007,-0.72117,0.342485,-0.205096,-1.00981},
-{-0.105402,-0.0428089,0.497009,-1.98782,2.401},
-{0.334982,-0.145939,0.118251,-0.53406,1.08765},
-{-2.38854,1.36543,0.175537,-0.0465703,0.351541},
-{0.00721192,1.6192,-0.906122,-0.239555,-0.459826},
-{-1.02974,0.078106,-0.852912,1.61492,0.233392},
-{-0.174771,-1.05761,1.01984,-0.611167,1.19224},
-{0.524598,1.0895,-2.4416,0.672587,0.632776},
-{1.26701,0.846419,0.969735,0.930293,0.799436},
-{0.0318987,-0.219377,1.58288,-1.36858,-1.14528},
-{0.79763,-0.380618,-1.71051,2.25003,-0.710723},
-{0.603795,-0.595349,-1.2425,-0.282374,-0.16075},
-{-0.0492163,0.204775,-0.079854,0.0334282,-0.751745},
-{-1.79543,2.38483,-1.36753,0.634718,-0.32093},
-{2.05278,0.0737022,-0.717423,-0.214518,0.190423},
-{-0.724955,1.44464,0.564552,-1.08432,-0.556555},
-{0.564067,0.423427,-0.642245,0.569679,0.44192},
-{0.913815,-1.52742,0.288179,1.65154,-1.6786},
-{0.837433,-0.876355,0.154768,0.285161,0.359109},
-{-0.459512,0.00986829,0.920758,-0.502616,0.0503464},
-{0.410356,0.289731,-0.553426,-1.6683,-0.904018},
-{-0.108048,0.542804,-1.33618,-0.589215,2.32569},
-{0.152471,1.05566,0.5173,0.915216,-0.577427},
-{0.783937,-0.684775,1.11417,-0.652885,0.265146},
-{-0.00840562,0.413891,0.0655512,-0.0465592,-2.17946},
-{0.627793,0.24361,0.0485797,-0.518829,-0.0912497},
-{-0.163037,-1.82413,0.29276,1.40467,0.363785},
-{-0.0518913,-1.0434,0.202549,-0.56384,-0.291985},
-{-0.31421,0.220815,-0.882671,-0.345301,0.481232},
-{1.94186,-1.56429,-0.586202,0.982648,-0.258558},
-{-0.400186,0.134464,1.10521,1.23818,0.655885},
-{-1.77482,-0.661518,0.502121,0.446352,0.46729},
-{2.00423,-1.77768,0.925443,-0.678358,0.598855},
-{0.542383,-0.474195,-0.292672,0.983825,-0.712478},
-{0.130237,1.23794,0.599625,-0.145036,0.772077},
-{-0.914536,-1.04875,-1.16803,-0.878548,-0.940863},
-{-0.947659,1.30248,-1.23304,0.34647,0.866395},
-{0.292906,-0.492186,0.958206,0.334719,-0.596865},
-{-0.68864,-1.38423,-0.80474,-0.0646713,0.821493},
-{1.19545,-0.909322,-0.623307,-0.424572,1.55574},
-{-0.229777,0.250926,1.23844,-2.26703,0.623464},
-{0.167444,-0.707621,1.35753,0.340287,-2.27245},
-{1.11752,-0.399492,0.43343,-1.54536,0.785914},
-{0.0120329,-0.0217694,0.10678,0.0193752,0.161495}};
+/* Copyright (C) 2002 Jean-Marc Valin 
+   File: exc_5_64_table.c
+   Codebook for excitation in narrowband CELP mode (9600 bps)
+
+   Redistribution and use in source and binary forms, with or without
+   modification, are permitted provided that the following conditions
+   are met:
+   
+   - Redistributions of source code must retain the above copyright
+   notice, this list of conditions and the following disclaimer.
+   
+   - 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.
+   
+   - Neither the name of the Xiph.org Foundation nor the names of its
+   contributors may be used to endorse or promote products derived from
+   this software without specific prior written permission.
+   
+   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+   ``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 FOUNDATION OR
+   CONTRIBUTORS 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 exc_5_64_table[320]={
+1,5,-15,49,-66,
+-48,-4,50,-44,7,
+37,16,-18,25,-26,
+-26,-15,19,19,-27,
+-47,28,57,5,-17,
+-32,-41,68,21,-2,
+64,56,8,-16,-13,
+-26,-9,-16,11,6,
+-39,25,-19,22,-31,
+20,-45,55,-43,10,
+-16,47,-40,40,-20,
+-51,3,-17,-14,-15,
+-24,53,-20,-46,46,
+27,-68,32,3,-18,
+-5,9,-31,16,-9,
+-10,-1,-23,48,95,
+47,25,-41,-32,-3,
+15,-25,-55,36,41,
+-27,20,5,13,14,
+-22,5,2,-23,18,
+46,-15,17,-18,-34,
+-5,-8,27,-55,73,
+16,2,-1,-17,40,
+-78,33,0,2,19,
+4,53,-16,-15,-16,
+-28,-3,-13,49,8,
+-7,-29,27,-13,32,
+20,32,-61,16,14,
+41,44,40,24,20,
+7,4,48,-60,-77,
+17,-6,-48,65,-15,
+32,-30,-71,-10,-3,
+-6,10,-2,-7,-29,
+-56,67,-30,7,-5,
+86,-6,-10,0,5,
+-31,60,34,-38,-3,
+24,10,-2,30,23,
+24,-41,12,70,-43,
+15,-17,6,13,16,
+-13,8,30,-15,-8,
+5,23,-34,-98,-4,
+-13,13,-48,-31,70,
+12,31,25,24,-24,
+26,-7,33,-16,8,
+5,-11,-14,-8,-65,
+13,10,-2,-9,0,
+-3,-68,5,35,7,
+0,-31,-1,-17,-9,
+-9,16,-37,-18,-1,
+69,-48,-28,22,-21,
+-11,5,49,55,23,
+-86,-36,16,2,13,
+63,-51,30,-11,13,
+24,-18,-6,14,-19,
+1,41,9,-5,27,
+-36,-44,-34,-37,-21,
+-26,31,-39,15,43,
+5,-8,29,20,-8,
+-20,-52,-28,-1,13,
+26,-34,-10,-9,27,
+-8,8,27,-66,4,
+12,-22,49,10,-77,
+32,-18,3,-38,12,
+-3,-1,2,2,0};