ph_disp_tab.cpp revision 1ead790eadd0e09a118308caccc7ac37d36f43f3
1/* ------------------------------------------------------------------
2 * Copyright (C) 1998-2009 PacketVideo
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 *      http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
13 * express or implied.
14 * See the License for the specific language governing permissions
15 * and limitations under the License.
16 * -------------------------------------------------------------------
17 */
18/****************************************************************************************
19Portions of this file are derived from the following 3GPP standard:
20
21    3GPP TS 26.073
22    ANSI-C code for the Adaptive Multi-Rate (AMR) speech codec
23    Available from http://www.3gpp.org
24
25(C) 2004, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TTA, TTC)
26Permission to distribute, modify and use this file under the standard license
27terms listed above has been obtained from the copyright holder.
28****************************************************************************************/
29/*
30
31 Filename: /audio/gsm_amr/c/src/ph_disp_tab.c
32
33------------------------------------------------------------------------------
34 REVISION HISTORY
35
36 Description: Added #ifdef __cplusplus and removed "extern" from table
37              definition.
38
39 Description: Put "extern" back.
40
41 Who:                       Date:
42 Description:
43
44------------------------------------------------------------------------------
45 MODULE DESCRIPTION
46
47 This file contains the table of impulse responses of the phase dispersion
48 filters. All impulse responses are in Q15
49
50------------------------------------------------------------------------------
51*/
52
53/*----------------------------------------------------------------------------
54; INCLUDES
55----------------------------------------------------------------------------*/
56#include    "typedef.h"
57
58/*--------------------------------------------------------------------------*/
59#ifdef __cplusplus
60extern "C"
61{
62#endif
63
64    /*----------------------------------------------------------------------------
65    ; MACROS
66    ; [Define module specific macros here]
67    ----------------------------------------------------------------------------*/
68
69    /*----------------------------------------------------------------------------
70    ; DEFINES
71    ; [Include all pre-processor statements here. Include conditional
72    ; compile variables also.]
73    ----------------------------------------------------------------------------*/
74
75    /*----------------------------------------------------------------------------
76    ; LOCAL FUNCTION DEFINITIONS
77    ; [List function prototypes here]
78    ----------------------------------------------------------------------------*/
79
80    /*----------------------------------------------------------------------------
81    ; LOCAL VARIABLE DEFINITIONS
82    ; [Variable declaration - defined here and used outside this module]
83    ----------------------------------------------------------------------------*/
84    extern const Word16 ph_imp_low_MR795[];
85    const Word16 ph_imp_low_MR795[40] =
86    {
87        26777,    801,   2505,   -683,  -1382,    582,    604,  -1274,   3511,  -5894,
88        4534,   -499,  -1940,   3011,  -5058,   5614,  -1990,  -1061,  -1459,   4442,
89        -700,  -5335,   4609,    452,   -589,  -3352,   2953,   1267,  -1212,  -2590,
90        1731,   3670,  -4475,   -975,   4391,  -2537,    949,  -1363,   -979,   5734
91    };
92    extern const Word16 ph_imp_mid_MR795[];
93    const Word16 ph_imp_mid_MR795[40] =
94    {
95        30274,   3831,  -4036,   2972,  -1048,  -1002,   2477,  -3043,   2815,  -2231,
96        1753,  -1611,   1714,  -1775,   1543,  -1008,    429,   -169,    472,  -1264,
97        2176,  -2706,   2523,  -1621,    344,    826,  -1529,   1724,  -1657,   1701,
98        -2063,   2644,  -3060,   2897,  -1978,    557,    780,  -1369,    842,    655
99    };
100
101    extern const Word16 ph_imp_low[];
102    const Word16 ph_imp_low[40] =
103    {
104        14690,  11518,   1268,  -2761,  -5671,   7514,    -35,  -2807,  -3040,   4823,
105        2952,  -8424,   3785,   1455,   2179,  -8637,   8051,  -2103,  -1454,    777,
106        1108,  -2385,   2254,   -363,   -674,  -2103,   6046,  -5681,   1072,   3123,
107        -5058,   5312,  -2329,  -3728,   6924,  -3889,    675,  -1775,     29,  10145
108    };
109    extern const Word16 ph_imp_mid[];
110    const Word16 ph_imp_mid[40] =
111    {
112        30274,   3831,  -4036,   2972,  -1048,  -1002,   2477,  -3043,   2815,  -2231,
113        1753,  -1611,   1714,  -1775,   1543,  -1008,    429,   -169,    472,  -1264,
114        2176,  -2706,   2523,  -1621,    344,    826,  -1529,   1724,  -1657,   1701,
115        -2063,   2644,  -3060,   2897,  -1978,    557,    780,  -1369,    842,    655
116    };
117
118    /*--------------------------------------------------------------------------*/
119#ifdef __cplusplus
120}
121#endif
122
123/*
124------------------------------------------------------------------------------
125 FUNCTION NAME:
126------------------------------------------------------------------------------
127 INPUT AND OUTPUT DEFINITIONS
128
129 Inputs:
130    None
131
132 Outputs:
133    None
134
135 Returns:
136    None
137
138 Global Variables Used:
139    None
140
141 Local Variables Needed:
142    None
143
144------------------------------------------------------------------------------
145 FUNCTION DESCRIPTION
146
147 None
148
149------------------------------------------------------------------------------
150 REQUIREMENTS
151
152 None
153
154------------------------------------------------------------------------------
155 REFERENCES
156
157 [1] ph_disp.tab, UMTS GSM AMR speech codec, R99 - Version 3.2.0, March 2, 2001
158
159------------------------------------------------------------------------------
160 PSEUDO-CODE
161
162
163------------------------------------------------------------------------------
164 RESOURCES USED [optional]
165
166 When the code is written for a specific target processor the
167 the resources used should be documented below.
168
169 HEAP MEMORY USED: x bytes
170
171 STACK MEMORY USED: x bytes
172
173 CLOCK CYCLES: (cycle count equation for this function) + (variable
174                used to represent cycle count for each subroutine
175                called)
176     where: (cycle count variable) = cycle count for [subroutine
177                                     name]
178
179------------------------------------------------------------------------------
180 CAUTION [optional]
181 [State any special notes, constraints or cautions for users of this function]
182
183------------------------------------------------------------------------------
184*/
185
186/*----------------------------------------------------------------------------
187; FUNCTION CODE
188----------------------------------------------------------------------------*/
189
190
191
192
193