xref: /aosp_15_r20/external/libxaac/decoder/ixheaacd_mps_macro_def.h (revision 15dc779a375ca8b5125643b829a8aa4b70d7f451)
1*15dc779aSAndroid Build Coastguard Worker /******************************************************************************
2*15dc779aSAndroid Build Coastguard Worker  *
3*15dc779aSAndroid Build Coastguard Worker  * Copyright (C) 2023 The Android Open Source Project
4*15dc779aSAndroid Build Coastguard Worker  *
5*15dc779aSAndroid Build Coastguard Worker  * Licensed under the Apache License, Version 2.0 (the "License");
6*15dc779aSAndroid Build Coastguard Worker  * you may not use this file except in compliance with the License.
7*15dc779aSAndroid Build Coastguard Worker  * You may obtain a copy of the License at:
8*15dc779aSAndroid Build Coastguard Worker  *
9*15dc779aSAndroid Build Coastguard Worker  * http://www.apache.org/licenses/LICENSE-2.0
10*15dc779aSAndroid Build Coastguard Worker  *
11*15dc779aSAndroid Build Coastguard Worker  * Unless required by applicable law or agreed to in writing, software
12*15dc779aSAndroid Build Coastguard Worker  * distributed under the License is distributed on an "AS IS" BASIS,
13*15dc779aSAndroid Build Coastguard Worker  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14*15dc779aSAndroid Build Coastguard Worker  * See the License for the specific language governing permissions and
15*15dc779aSAndroid Build Coastguard Worker  * limitations under the License.
16*15dc779aSAndroid Build Coastguard Worker  *
17*15dc779aSAndroid Build Coastguard Worker  *****************************************************************************
18*15dc779aSAndroid Build Coastguard Worker  * Originally developed and contributed by Ittiam Systems Pvt. Ltd, Bangalore
19*15dc779aSAndroid Build Coastguard Worker */
20*15dc779aSAndroid Build Coastguard Worker #ifndef IXHEAACD_MPS_MACRO_DEF_H
21*15dc779aSAndroid Build Coastguard Worker #define IXHEAACD_MPS_MACRO_DEF_H
22*15dc779aSAndroid Build Coastguard Worker 
23*15dc779aSAndroid Build Coastguard Worker #define SQRT_TWO_Q15 (46341)
24*15dc779aSAndroid Build Coastguard Worker #define SQRT_THREE_Q15 (56784)
25*15dc779aSAndroid Build Coastguard Worker 
26*15dc779aSAndroid Build Coastguard Worker #define ONE_BY_THREE_Q15 (10923)
27*15dc779aSAndroid Build Coastguard Worker #define TWO_BY_THREE_Q15 (21845)
28*15dc779aSAndroid Build Coastguard Worker #define MINUS_ONE_BY_THREE_Q15 (-10923)
29*15dc779aSAndroid Build Coastguard Worker #define ONE_BY_SQRT_2_Q15 (23170)
30*15dc779aSAndroid Build Coastguard Worker #define ONE_BY_SQRT_8_Q15 (11585)
31*15dc779aSAndroid Build Coastguard Worker #define ONE_BY_FIVE_Q16 (13107)
32*15dc779aSAndroid Build Coastguard Worker #define TWO_PI_IN_Q15 (205887)
33*15dc779aSAndroid Build Coastguard Worker #define MINUS_PI_BY_EIGHT_Q15 (-12868)
34*15dc779aSAndroid Build Coastguard Worker #define TWO_PI_BY_FIFTEEN_Q15 (13726)
35*15dc779aSAndroid Build Coastguard Worker #define THIRTYONE_BY_TWO_IN_Q25 (520093696)
36*15dc779aSAndroid Build Coastguard Worker 
37*15dc779aSAndroid Build Coastguard Worker #define MINUS_ONE_IN_Q15 (-32768)
38*15dc779aSAndroid Build Coastguard Worker #define MINUS_ONE_IN_Q14 (-16384)
39*15dc779aSAndroid Build Coastguard Worker #define ONE_IN_Q13 (8192)
40*15dc779aSAndroid Build Coastguard Worker #define ONE_IN_Q14 (16384)
41*15dc779aSAndroid Build Coastguard Worker #define ONE_IN_Q15 (32768)
42*15dc779aSAndroid Build Coastguard Worker #define ONE_IN_Q16 (65536)
43*15dc779aSAndroid Build Coastguard Worker #define ONE_IN_Q30 (1073741824)
44*15dc779aSAndroid Build Coastguard Worker #define FOUR_IN_Q15 (131072)
45*15dc779aSAndroid Build Coastguard Worker #define ONE_BY_SQRT_3_Q15 (18919)
46*15dc779aSAndroid Build Coastguard Worker #define ONE_BY_NINE_Q16 (7282)
47*15dc779aSAndroid Build Coastguard Worker #define MINUS_SQRT_2_Q30 (-1518500250)
48*15dc779aSAndroid Build Coastguard Worker #define THIRTY_IN_Q16 (1966080)
49*15dc779aSAndroid Build Coastguard Worker 
50*15dc779aSAndroid Build Coastguard Worker #define ONE_IN_Q28 (268435456)
51*15dc779aSAndroid Build Coastguard Worker 
52*15dc779aSAndroid Build Coastguard Worker #define ONE_IN_Q25 (33554432)
53*15dc779aSAndroid Build Coastguard Worker 
54*15dc779aSAndroid Build Coastguard Worker #define ONE_FORTYNINE_Q15 (4882432)
55*15dc779aSAndroid Build Coastguard Worker 
56*15dc779aSAndroid Build Coastguard Worker #define MINUS_POINT_NINE_EIGHT_Q15 (-32113)
57*15dc779aSAndroid Build Coastguard Worker 
58*15dc779aSAndroid Build Coastguard Worker #define MINUS_POINT_NINE_NINE_Q15 (-32440)
59*15dc779aSAndroid Build Coastguard Worker 
60*15dc779aSAndroid Build Coastguard Worker #define POINT_THREE_THREE_Q15 (10813)
61*15dc779aSAndroid Build Coastguard Worker 
62*15dc779aSAndroid Build Coastguard Worker #define POINT_EIGHT_Q15 (26214)
63*15dc779aSAndroid Build Coastguard Worker 
64*15dc779aSAndroid Build Coastguard Worker #define ONE_BY_SQRT_TWO_Q30 (759250125)
65*15dc779aSAndroid Build Coastguard Worker 
66*15dc779aSAndroid Build Coastguard Worker #define POINT_FOUR_TWO_Q15 (13763)
67*15dc779aSAndroid Build Coastguard Worker 
68*15dc779aSAndroid Build Coastguard Worker #define POINT_ONE_Q15 (3277)
69*15dc779aSAndroid Build Coastguard Worker 
70*15dc779aSAndroid Build Coastguard Worker #define POINT_NINE_Q15 (29491)
71*15dc779aSAndroid Build Coastguard Worker 
72*15dc779aSAndroid Build Coastguard Worker #define SUM_SIZE (2048)
73*15dc779aSAndroid Build Coastguard Worker 
74*15dc779aSAndroid Build Coastguard Worker #define RES_CHXQMFXTSX4 (184320)
75*15dc779aSAndroid Build Coastguard Worker 
76*15dc779aSAndroid Build Coastguard Worker #define RES_CHXQMFXTS (46080)
77*15dc779aSAndroid Build Coastguard Worker 
78*15dc779aSAndroid Build Coastguard Worker #define NR_QMF_BANDS_LFXTS (216)
79*15dc779aSAndroid Build Coastguard Worker 
80*15dc779aSAndroid Build Coastguard Worker #define QMF_BANDSXTSX6 (27648)
81*15dc779aSAndroid Build Coastguard Worker 
82*15dc779aSAndroid Build Coastguard Worker #define LOOP_COUNTER (32)
83*15dc779aSAndroid Build Coastguard Worker 
84*15dc779aSAndroid Build Coastguard Worker #define MAX_PSXPB (224)
85*15dc779aSAndroid Build Coastguard Worker 
86*15dc779aSAndroid Build Coastguard Worker #define SYN_BUFFER_SIZE (18432)
87*15dc779aSAndroid Build Coastguard Worker 
88*15dc779aSAndroid Build Coastguard Worker #define QBXTSX2 (9216)
89*15dc779aSAndroid Build Coastguard Worker 
90*15dc779aSAndroid Build Coastguard Worker #define PARAMETER_BANDSX2 (56)
91*15dc779aSAndroid Build Coastguard Worker 
92*15dc779aSAndroid Build Coastguard Worker #define PARAMETER_BANDSX3 (84)
93*15dc779aSAndroid Build Coastguard Worker 
94*15dc779aSAndroid Build Coastguard Worker #define PARAMETER_BANDSX1_5 (42)
95*15dc779aSAndroid Build Coastguard Worker 
96*15dc779aSAndroid Build Coastguard Worker #define QMF_BANDSX8 (512)
97*15dc779aSAndroid Build Coastguard Worker 
98*15dc779aSAndroid Build Coastguard Worker #define QBXTS (4608)
99*15dc779aSAndroid Build Coastguard Worker 
100*15dc779aSAndroid Build Coastguard Worker #define QBXTSX3 (13824)
101*15dc779aSAndroid Build Coastguard Worker 
102*15dc779aSAndroid Build Coastguard Worker #define TWO_BY_TWENTYFIVE_Q16 (5243)
103*15dc779aSAndroid Build Coastguard Worker 
104*15dc779aSAndroid Build Coastguard Worker #define QBX48 (3072)
105*15dc779aSAndroid Build Coastguard Worker 
106*15dc779aSAndroid Build Coastguard Worker #define TSXHB (5112)
107*15dc779aSAndroid Build Coastguard Worker 
108*15dc779aSAndroid Build Coastguard Worker #define MAX_TIMESLOTSX2 (144)
109*15dc779aSAndroid Build Coastguard Worker 
110*15dc779aSAndroid Build Coastguard Worker #define RESHAPE_OFFSET_1 (18)
111*15dc779aSAndroid Build Coastguard Worker 
112*15dc779aSAndroid Build Coastguard Worker #define RESHAPE_OFFSET_2 (54)
113*15dc779aSAndroid Build Coastguard Worker 
114*15dc779aSAndroid Build Coastguard Worker #define PB_OFFSET (9)
115*15dc779aSAndroid Build Coastguard Worker 
116*15dc779aSAndroid Build Coastguard Worker #define SCRATCH_OFFSET_SMOOTHING (176)
117*15dc779aSAndroid Build Coastguard Worker 
118*15dc779aSAndroid Build Coastguard Worker #define MAX_TIME_SLOTSX12 (864)
119*15dc779aSAndroid Build Coastguard Worker 
120*15dc779aSAndroid Build Coastguard Worker #define INPUT_CHX2 (12)
121*15dc779aSAndroid Build Coastguard Worker 
122*15dc779aSAndroid Build Coastguard Worker #define INPUT_CHX1_5 (9)
123*15dc779aSAndroid Build Coastguard Worker 
124*15dc779aSAndroid Build Coastguard Worker #define OUTPUT_CHX1_5 (20)
125*15dc779aSAndroid Build Coastguard Worker 
126*15dc779aSAndroid Build Coastguard Worker #define OUTPUT_CHX3 (41)
127*15dc779aSAndroid Build Coastguard Worker 
128*15dc779aSAndroid Build Coastguard Worker #define IN_CH_2XOUT_CH (32)
129*15dc779aSAndroid Build Coastguard Worker 
130*15dc779aSAndroid Build Coastguard Worker #define IN_CHXBP_SIZE (150)
131*15dc779aSAndroid Build Coastguard Worker 
132*15dc779aSAndroid Build Coastguard Worker #define OUT_CHXQB (512)
133*15dc779aSAndroid Build Coastguard Worker 
134*15dc779aSAndroid Build Coastguard Worker #define MAX_PARAMETER_BANDS_PLUS_1 (29)
135*15dc779aSAndroid Build Coastguard Worker 
136*15dc779aSAndroid Build Coastguard Worker #define PARAMETER_BANDSX52 (1456)
137*15dc779aSAndroid Build Coastguard Worker 
138*15dc779aSAndroid Build Coastguard Worker #define PARAMETER_BANDSX16 (448)
139*15dc779aSAndroid Build Coastguard Worker 
140*15dc779aSAndroid Build Coastguard Worker #define PARAMETER_BANDSX18 (504)
141*15dc779aSAndroid Build Coastguard Worker 
142*15dc779aSAndroid Build Coastguard Worker #define PARAMETER_BANDSX15 (420)
143*15dc779aSAndroid Build Coastguard Worker 
144*15dc779aSAndroid Build Coastguard Worker #define PARAMETER_BANDSX32 (896)
145*15dc779aSAndroid Build Coastguard Worker 
146*15dc779aSAndroid Build Coastguard Worker #define PARAMETER_BANDSX12 (336)
147*15dc779aSAndroid Build Coastguard Worker 
148*15dc779aSAndroid Build Coastguard Worker #define PARAMETER_BANDSX56 (1568)
149*15dc779aSAndroid Build Coastguard Worker 
150*15dc779aSAndroid Build Coastguard Worker #define PARAMETER_BANDSX24 (672)
151*15dc779aSAndroid Build Coastguard Worker 
152*15dc779aSAndroid Build Coastguard Worker #define PREV_GAINAT (5824)
153*15dc779aSAndroid Build Coastguard Worker 
154*15dc779aSAndroid Build Coastguard Worker #define ARBDMX_ALPHA (24)
155*15dc779aSAndroid Build Coastguard Worker 
156*15dc779aSAndroid Build Coastguard Worker #define M1_PREV (5376)
157*15dc779aSAndroid Build Coastguard Worker 
158*15dc779aSAndroid Build Coastguard Worker #define M2_PREV_RESID (2128)
159*15dc779aSAndroid Build Coastguard Worker 
160*15dc779aSAndroid Build Coastguard Worker #define M2_PREV_DECOR (1680)
161*15dc779aSAndroid Build Coastguard Worker 
162*15dc779aSAndroid Build Coastguard Worker #define QMF_DELAY_INPUT (7680)
163*15dc779aSAndroid Build Coastguard Worker 
164*15dc779aSAndroid Build Coastguard Worker #define ANA_BUF_SIZE (15360)
165*15dc779aSAndroid Build Coastguard Worker 
166*15dc779aSAndroid Build Coastguard Worker #define SYN_BUF_SIZE (18432 + sizeof(ia_mps_dec_synthesis_interface))
167*15dc779aSAndroid Build Coastguard Worker 
168*15dc779aSAndroid Build Coastguard Worker #define PBXPS (224)
169*15dc779aSAndroid Build Coastguard Worker 
170*15dc779aSAndroid Build Coastguard Worker #define MAX_NUM_DEN_LENGTH (21)
171*15dc779aSAndroid Build Coastguard Worker 
172*15dc779aSAndroid Build Coastguard Worker #define HYB_FILTER_STATE_SIZE sizeof(ia_mps_dec_thyb_filter_state_struct) * 16
173*15dc779aSAndroid Build Coastguard Worker 
174*15dc779aSAndroid Build Coastguard Worker #define TONALITY_STATE_SIZE sizeof(ia_mps_dec_tonality_state_struct)
175*15dc779aSAndroid Build Coastguard Worker 
176*15dc779aSAndroid Build Coastguard Worker #define SMOOTHING_STATE_SIZE sizeof(ia_mps_dec_smoothing_state_struct)
177*15dc779aSAndroid Build Coastguard Worker 
178*15dc779aSAndroid Build Coastguard Worker #define RESHAPE_STATE_SIZE sizeof(ia_mps_dec_reshape_bb_env_state_struct)
179*15dc779aSAndroid Build Coastguard Worker 
180*15dc779aSAndroid Build Coastguard Worker #define SUBBAND_TP_SIZE sizeof(ia_mps_dec_subband_tp_params_struct)
181*15dc779aSAndroid Build Coastguard Worker 
182*15dc779aSAndroid Build Coastguard Worker #define BLIND_DECODER_SIZE sizeof(ia_mps_dec_blind_decoder_struct)
183*15dc779aSAndroid Build Coastguard Worker 
184*15dc779aSAndroid Build Coastguard Worker #define ARRAY_STRUCT_SIZE sizeof(ia_mps_dec_reuse_array_struct)
185*15dc779aSAndroid Build Coastguard Worker 
186*15dc779aSAndroid Build Coastguard Worker #define QMF_RES_BUF_SIZE (368640)
187*15dc779aSAndroid Build Coastguard Worker 
188*15dc779aSAndroid Build Coastguard Worker #define QMF_BUF_SIZE (110592)
189*15dc779aSAndroid Build Coastguard Worker 
190*15dc779aSAndroid Build Coastguard Worker #define BUF_SIZE (163584)
191*15dc779aSAndroid Build Coastguard Worker 
192*15dc779aSAndroid Build Coastguard Worker #define MDCT_RES_BUF_SIZE (327680)
193*15dc779aSAndroid Build Coastguard Worker 
194*15dc779aSAndroid Build Coastguard Worker #define PCXQB (320)
195*15dc779aSAndroid Build Coastguard Worker 
196*15dc779aSAndroid Build Coastguard Worker #define RFX2XMDCTCOEF (8192)
197*15dc779aSAndroid Build Coastguard Worker 
198*15dc779aSAndroid Build Coastguard Worker #define MDCTCOEFX2 (2048)
199*15dc779aSAndroid Build Coastguard Worker 
200*15dc779aSAndroid Build Coastguard Worker #define TSXHBX5 (25560)
201*15dc779aSAndroid Build Coastguard Worker 
202*15dc779aSAndroid Build Coastguard Worker #define INCHXPBXPS (1344)
203*15dc779aSAndroid Build Coastguard Worker 
204*15dc779aSAndroid Build Coastguard Worker #define ONE_BIT_MASK (0x00000001)
205*15dc779aSAndroid Build Coastguard Worker #define TWO_BIT_MASK (0x00000003)
206*15dc779aSAndroid Build Coastguard Worker #define THREE_BIT_MASK (0x00000007)
207*15dc779aSAndroid Build Coastguard Worker #define FOUR_BIT_MASK (0x0000000F)
208*15dc779aSAndroid Build Coastguard Worker #define FIVE_BIT_MASK (0x0000001F)
209*15dc779aSAndroid Build Coastguard Worker #define SIX_BIT_MASK (0x0000003F)
210*15dc779aSAndroid Build Coastguard Worker #define SEVEN_BIT_MASK (0x0000007F)
211*15dc779aSAndroid Build Coastguard Worker #define WORD_LENGTH (32)
212*15dc779aSAndroid Build Coastguard Worker 
213*15dc779aSAndroid Build Coastguard Worker #define COS_PI_BY_8 (0x7642)
214*15dc779aSAndroid Build Coastguard Worker #define SIN_PI_BY_8 (0x30fc)
215*15dc779aSAndroid Build Coastguard Worker 
216*15dc779aSAndroid Build Coastguard Worker #endif /* IXHEAACD_MPS_MACRO_DEF_H */
217