blob: a827c8f755f8521798e5b5cda17782869eae9e4b [file] [log] [blame]
/******************************************************************************
* *
* Copyright (C) 2018 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at:
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*
*****************************************************************************
* Originally developed and contributed by Ittiam Systems Pvt. Ltd, Bangalore
*/
#include <string.h>
#include "ixheaacd_sbr_common.h"
#include <ixheaacd_type_def.h>
#include "ixheaacd_defines.h"
#include "ixheaacd_bitbuffer.h"
#include "ixheaacd_pns.h"
#include <ixheaacd_aac_rom.h>
#include "ixheaacd_pulsedata.h"
#include "ixheaacd_drc_data_struct.h"
#include "ixheaacd_lt_predict.h"
#include "ixheaacd_channelinfo.h"
#include "ixheaacd_drc_dec.h"
#include "ixheaacd_sbrdecoder.h"
#include "ixheaacd_sbr_const.h"
#include "ixheaacd_sbrdecsettings.h"
#include "ixheaacd_sbr_scale.h"
#include "ixheaacd_lpp_tran.h"
#include "ixheaacd_env_extr_part.h"
#include <ixheaacd_sbr_rom.h>
#include "ixheaacd_hybrid.h"
#include "ixheaacd_ps_dec.h"
#include "ixheaacd_env_extr.h"
#include "ixheaacd_common_rom.h"
#include "ixheaacd_qmf_dec.h"
const ia_env_calc_tables_struct ixheaacd_aac_dec_env_calc_tables = {
{(WORD16)0x4027, 0, (WORD16)0x4000, 1, (WORD16)0x7fb2, 1, (WORD16)0x56bc,
67},
// const WORD16 sbr_lim_bands_per_octave_q13[4] =
{(WORD16)0x2000, (WORD16)0x2666, (WORD16)0x4000, (WORD16)0x6000},
// const WORD16 sbr_smooth_filter[4] =
{(WORD16)0x5555, (WORD16)0x461d, (WORD16)0x3387, (WORD16)0x1bb8},
// const WORD16 sbr_inv_int_table[INV_INT_TABLE_SIZE] =
{(WORD16)0x7fff, (WORD16)0x7fff, (WORD16)0x4000, (WORD16)0x2aab,
(WORD16)0x2000, (WORD16)0x199a, (WORD16)0x1555, (WORD16)0x1249,
(WORD16)0x1000, (WORD16)0x0e39, (WORD16)0x0ccd, (WORD16)0x0ba3,
(WORD16)0x0aab, (WORD16)0x09d9, (WORD16)0x0925, (WORD16)0x0889,
(WORD16)0x0800, (WORD16)0x0788, (WORD16)0x071c, (WORD16)0x06bd,
(WORD16)0x0666, (WORD16)0x0618, (WORD16)0x05d1, (WORD16)0x0591,
(WORD16)0x0555, (WORD16)0x051f, (WORD16)0x04ec, (WORD16)0x04be,
(WORD16)0x0492, (WORD16)0x046a, (WORD16)0x0444, (WORD16)0x0421,
(WORD16)0x0400, (WORD16)0x03e1, (WORD16)0x03c4, (WORD16)0x03a8,
(WORD16)0x038e, (WORD16)0x0376, (WORD16)0x035e, (WORD16)0x0348,
(WORD16)0x0333, (WORD16)0x031f, (WORD16)0x030c, (WORD16)0x02fa,
(WORD16)0x02e9, (WORD16)0x02d8, (WORD16)0x02c8, (WORD16)0x02b9},
// const WORD32 sbr_rand_ph[SBR_NF_NO_RANDOM_VAL + MAX_FREQ_COEFFS] =
{((WORD32)0xf801 << 16) | ((WORD32)0xfb3e & 0xFFFF),
((WORD32)0x07c5 << 16) | ((WORD32)0xfa99 & 0xFFFF),
((WORD32)0x0121 << 16) | ((WORD32)0xf865 & 0xFFFF),
((WORD32)0xfc3d << 16) | ((WORD32)0xfd03 & 0xFFFF),
((WORD32)0x0675 << 16) | ((WORD32)0x025f & 0xFFFF),
((WORD32)0xfce2 << 16) | ((WORD32)0x072a & 0xFFFF),
((WORD32)0xffea << 16) | ((WORD32)0xfaa5 & 0xFFFF),
((WORD32)0xf8b3 << 16) | ((WORD32)0xff14 & 0xFFFF),
((WORD32)0x0463 << 16) | ((WORD32)0x0605 & 0xFFFF),
((WORD32)0x0333 << 16) | ((WORD32)0xf816 & 0xFFFF),
((WORD32)0xf803 << 16) | ((WORD32)0xf8f3 & 0xFFFF),
((WORD32)0xf85c << 16) | ((WORD32)0x0746 & 0xFFFF),
((WORD32)0xfc58 << 16) | ((WORD32)0xfb76 & 0xFFFF),
((WORD32)0xfa2a << 16) | ((WORD32)0xf829 & 0xFFFF),
((WORD32)0x060d << 16) | ((WORD32)0x01ad & 0xFFFF),
((WORD32)0x0091 << 16) | ((WORD32)0xf9bd & 0xFFFF),
((WORD32)0x05f6 << 16) | ((WORD32)0xf8b5 & 0xFFFF),
((WORD32)0xf849 << 16) | ((WORD32)0xf86c & 0xFFFF),
((WORD32)0x026f << 16) | ((WORD32)0xfc0c & 0xFFFF),
((WORD32)0x0553 << 16) | ((WORD32)0x052c & 0xFFFF),
((WORD32)0x0756 << 16) | ((WORD32)0x0167 & 0xFFFF),
((WORD32)0xfa57 << 16) | ((WORD32)0x0434 & 0xFFFF),
((WORD32)0xfa65 << 16) | ((WORD32)0xfc5f & 0xFFFF),
((WORD32)0xf80a << 16) | ((WORD32)0xf8cb & 0xFFFF),
((WORD32)0x07da << 16) | ((WORD32)0xf9ce & 0xFFFF),
((WORD32)0xfba0 << 16) | ((WORD32)0xffcb & 0xFFFF),
((WORD32)0xffdd << 16) | ((WORD32)0x0006 & 0xFFFF),
((WORD32)0xf91c << 16) | ((WORD32)0x0367 & 0xFFFF),
((WORD32)0xf817 << 16) | ((WORD32)0xf8f8 & 0xFFFF),
((WORD32)0x0424 << 16) | ((WORD32)0x055b & 0xFFFF),
((WORD32)0xf807 << 16) | ((WORD32)0xfb5a & 0xFFFF),
((WORD32)0xf801 << 16) | ((WORD32)0x07df & 0xFFFF),
((WORD32)0x046c << 16) | ((WORD32)0x04c2 & 0xFFFF),
((WORD32)0x02c4 << 16) | ((WORD32)0x0797 & 0xFFFF),
((WORD32)0x0503 << 16) | ((WORD32)0xfa0c & 0xFFFF),
((WORD32)0xf9d4 << 16) | ((WORD32)0xfd4a & 0xFFFF),
((WORD32)0xf8ac << 16) | ((WORD32)0x004c & 0xFFFF),
((WORD32)0xf9e6 << 16) | ((WORD32)0xf8b1 & 0xFFFF),
((WORD32)0x0662 << 16) | ((WORD32)0xf88c & 0xFFFF),
((WORD32)0x045c << 16) | ((WORD32)0xff0c & 0xFFFF),
((WORD32)0xf926 << 16) | ((WORD32)0x0365 & 0xFFFF),
((WORD32)0xf892 << 16) | ((WORD32)0x023b & 0xFFFF),
((WORD32)0xff10 << 16) | ((WORD32)0xf804 & 0xFFFF),
((WORD32)0x01b5 << 16) | ((WORD32)0xf8be & 0xFFFF),
((WORD32)0xf9e8 << 16) | ((WORD32)0x07fb & 0xFFFF),
((WORD32)0x07d9 << 16) | ((WORD32)0xf855 & 0xFFFF),
((WORD32)0xf920 << 16) | ((WORD32)0x07a9 & 0xFFFF),
((WORD32)0xf889 << 16) | ((WORD32)0x03f4 & 0xFFFF),
((WORD32)0x0270 << 16) | ((WORD32)0xfa5b & 0xFFFF),
((WORD32)0x06d3 << 16) | ((WORD32)0x03be & 0xFFFF),
((WORD32)0x074e << 16) | ((WORD32)0xf803 & 0xFFFF),
((WORD32)0xff87 << 16) | ((WORD32)0x05a9 & 0xFFFF),
((WORD32)0x0246 << 16) | ((WORD32)0x02c5 & 0xFFFF),
((WORD32)0x079f << 16) | ((WORD32)0xfb9c & 0xFFFF),
((WORD32)0xf9b7 << 16) | ((WORD32)0xf9f4 & 0xFFFF),
((WORD32)0xf856 << 16) | ((WORD32)0xfe5e & 0xFFFF),
((WORD32)0x0698 << 16) | ((WORD32)0x07bb & 0xFFFF),
((WORD32)0xfac9 << 16) | ((WORD32)0xf8e7 & 0xFFFF),
((WORD32)0xf882 << 16) | ((WORD32)0x07fd & 0xFFFF),
((WORD32)0x0750 << 16) | ((WORD32)0xf823 & 0xFFFF),
((WORD32)0xfa5e << 16) | ((WORD32)0x04b4 & 0xFFFF),
((WORD32)0x000c << 16) | ((WORD32)0x04f1 & 0xFFFF),
((WORD32)0x0720 << 16) | ((WORD32)0x0439 & 0xFFFF),
((WORD32)0xfa81 << 16) | ((WORD32)0x0677 & 0xFFFF),
((WORD32)0x05c6 << 16) | ((WORD32)0xfa76 & 0xFFFF),
((WORD32)0xfaf7 << 16) | ((WORD32)0x0117 & 0xFFFF),
((WORD32)0x0265 << 16) | ((WORD32)0xfc51 & 0xFFFF),
((WORD32)0xf8a8 << 16) | ((WORD32)0xfa14 & 0xFFFF),
((WORD32)0x07f2 << 16) | ((WORD32)0x0344 & 0xFFFF),
((WORD32)0x0697 << 16) | ((WORD32)0xfa14 & 0xFFFF),
((WORD32)0xf81e << 16) | ((WORD32)0xf801 & 0xFFFF),
((WORD32)0xf854 << 16) | ((WORD32)0xf810 & 0xFFFF),
((WORD32)0xfe4a << 16) | ((WORD32)0xf887 & 0xFFFF),
((WORD32)0xfa7f << 16) | ((WORD32)0xfdd9 & 0xFFFF),
((WORD32)0x0759 << 16) | ((WORD32)0x00c0 & 0xFFFF),
((WORD32)0xf851 << 16) | ((WORD32)0x02e3 & 0xFFFF),
((WORD32)0x0422 << 16) | ((WORD32)0xfa4a & 0xFFFF),
((WORD32)0x04e4 << 16) | ((WORD32)0x03c2 & 0xFFFF),
((WORD32)0x03c9 << 16) | ((WORD32)0xfdd0 & 0xFFFF),
((WORD32)0x0748 << 16) | ((WORD32)0x07bd & 0xFFFF),
((WORD32)0x0396 << 16) | ((WORD32)0x07f0 & 0xFFFF),
((WORD32)0x0554 << 16) | ((WORD32)0x07ba & 0xFFFF),
((WORD32)0x05fe << 16) | ((WORD32)0xf8cf & 0xFFFF),
((WORD32)0xf809 << 16) | ((WORD32)0x0439 & 0xFFFF),
((WORD32)0x07cb << 16) | ((WORD32)0xfea7 & 0xFFFF),
((WORD32)0x05d1 << 16) | ((WORD32)0xfc28 & 0xFFFF),
((WORD32)0x07a2 << 16) | ((WORD32)0x0582 & 0xFFFF),
((WORD32)0xfa2a << 16) | ((WORD32)0xf9df & 0xFFFF),
((WORD32)0xf92c << 16) | ((WORD32)0x0719 & 0xFFFF),
((WORD32)0xf97d << 16) | ((WORD32)0xf834 & 0xFFFF),
((WORD32)0xf8f7 << 16) | ((WORD32)0x05fb & 0xFFFF),
((WORD32)0xfa46 << 16) | ((WORD32)0xf81d & 0xFFFF),
((WORD32)0x06af << 16) | ((WORD32)0x06b2 & 0xFFFF),
((WORD32)0xfc27 << 16) | ((WORD32)0xf818 & 0xFFFF),
((WORD32)0x07c5 << 16) | ((WORD32)0x0668 & 0xFFFF),
((WORD32)0x0429 << 16) | ((WORD32)0x066b & 0xFFFF),
((WORD32)0xffef << 16) | ((WORD32)0xf9de & 0xFFFF),
((WORD32)0xfa60 << 16) | ((WORD32)0x046e & 0xFFFF),
((WORD32)0xf854 << 16) | ((WORD32)0xfc8a & 0xFFFF),
((WORD32)0x07c4 << 16) | ((WORD32)0x00bf & 0xFFFF),
((WORD32)0xf89c << 16) | ((WORD32)0x06d7 & 0xFFFF),
((WORD32)0xfa71 << 16) | ((WORD32)0x07e4 & 0xFFFF),
((WORD32)0x0220 << 16) | ((WORD32)0x05dd & 0xFFFF),
((WORD32)0x023e << 16) | ((WORD32)0x012a & 0xFFFF),
((WORD32)0xfa12 << 16) | ((WORD32)0x07f2 & 0xFFFF),
((WORD32)0xffdc << 16) | ((WORD32)0xf964 & 0xFFFF),
((WORD32)0xfb97 << 16) | ((WORD32)0xf817 & 0xFFFF),
((WORD32)0x07d6 << 16) | ((WORD32)0xf87a & 0xFFFF),
((WORD32)0xf810 << 16) | ((WORD32)0x055d & 0xFFFF),
((WORD32)0xfa96 << 16) | ((WORD32)0x0103 & 0xFFFF),
((WORD32)0x00bb << 16) | ((WORD32)0xfe5b & 0xFFFF),
((WORD32)0xfa44 << 16) | ((WORD32)0xf82d & 0xFFFF),
((WORD32)0x067b << 16) | ((WORD32)0x044c & 0xFFFF),
((WORD32)0x0340 << 16) | ((WORD32)0xfde2 & 0xFFFF),
((WORD32)0xfa96 << 16) | ((WORD32)0x078f & 0xFFFF),
((WORD32)0x06f3 << 16) | ((WORD32)0xfe89 & 0xFFFF),
((WORD32)0xf80a << 16) | ((WORD32)0xffca & 0xFFFF),
((WORD32)0x06bf << 16) | ((WORD32)0x00d5 & 0xFFFF),
((WORD32)0xff43 << 16) | ((WORD32)0x0590 & 0xFFFF),
((WORD32)0x07ff << 16) | ((WORD32)0xff03 & 0xFFFF),
((WORD32)0xf99f << 16) | ((WORD32)0xf8ac & 0xFFFF),
((WORD32)0x07b5 << 16) | ((WORD32)0x07bb & 0xFFFF),
((WORD32)0xf99b << 16) | ((WORD32)0x0525 & 0xFFFF),
((WORD32)0xff13 << 16) | ((WORD32)0x0249 & 0xFFFF),
((WORD32)0xfcce << 16) | ((WORD32)0x0788 & 0xFFFF),
((WORD32)0x07ed << 16) | ((WORD32)0xf8a3 & 0xFFFF),
((WORD32)0x024a << 16) | ((WORD32)0xf8b8 & 0xFFFF),
((WORD32)0xf956 << 16) | ((WORD32)0xfa9d & 0xFFFF),
((WORD32)0x07a2 << 16) | ((WORD32)0x03ef & 0xFFFF),
((WORD32)0xff7c << 16) | ((WORD32)0x0043 & 0xFFFF),
((WORD32)0xf809 << 16) | ((WORD32)0x0364 & 0xFFFF),
((WORD32)0xfac3 << 16) | ((WORD32)0x069b & 0xFFFF),
((WORD32)0xf980 << 16) | ((WORD32)0xfbdf & 0xFFFF),
((WORD32)0xf807 << 16) | ((WORD32)0x06c2 & 0xFFFF),
((WORD32)0x0006 << 16) | ((WORD32)0x052e & 0xFFFF),
((WORD32)0x059d << 16) | ((WORD32)0xfe5d & 0xFFFF),
((WORD32)0x07b5 << 16) | ((WORD32)0x0342 & 0xFFFF),
((WORD32)0xfa7d << 16) | ((WORD32)0x074f & 0xFFFF),
((WORD32)0xfd36 << 16) | ((WORD32)0x05b8 & 0xFFFF),
((WORD32)0x075c << 16) | ((WORD32)0x0552 & 0xFFFF),
((WORD32)0xf814 << 16) | ((WORD32)0x06df & 0xFFFF),
((WORD32)0x0582 << 16) | ((WORD32)0x0474 & 0xFFFF),
((WORD32)0xf80b << 16) | ((WORD32)0xfe65 & 0xFFFF),
((WORD32)0x078a << 16) | ((WORD32)0xf806 & 0xFFFF),
((WORD32)0xfa9b << 16) | ((WORD32)0x03f7 & 0xFFFF),
((WORD32)0xfc36 << 16) | ((WORD32)0xf921 & 0xFFFF),
((WORD32)0x0125 << 16) | ((WORD32)0xf878 & 0xFFFF),
((WORD32)0xfda9 << 16) | ((WORD32)0x0076 & 0xFFFF),
((WORD32)0x0381 << 16) | ((WORD32)0xf9b0 & 0xFFFF),
((WORD32)0xfd18 << 16) | ((WORD32)0x0531 & 0xFFFF),
((WORD32)0xff4d << 16) | ((WORD32)0x07d1 & 0xFFFF),
((WORD32)0xf848 << 16) | ((WORD32)0xfbaf & 0xFFFF),
((WORD32)0x0471 << 16) | ((WORD32)0x0650 & 0xFFFF),
((WORD32)0x05e2 << 16) | ((WORD32)0x07b7 & 0xFFFF),
((WORD32)0xfd87 << 16) | ((WORD32)0xf98c & 0xFFFF),
((WORD32)0x0049 << 16) | ((WORD32)0xf837 & 0xFFFF),
((WORD32)0x07e6 << 16) | ((WORD32)0x03df & 0xFFFF),
((WORD32)0xf977 << 16) | ((WORD32)0xf8bc & 0xFFFF),
((WORD32)0x056e << 16) | ((WORD32)0x0681 & 0xFFFF),
((WORD32)0xfebc << 16) | ((WORD32)0x06d3 & 0xFFFF),
((WORD32)0x0675 << 16) | ((WORD32)0xfe06 & 0xFFFF),
((WORD32)0x03d3 << 16) | ((WORD32)0xfc4b & 0xFFFF),
((WORD32)0x07b6 << 16) | ((WORD32)0x0314 & 0xFFFF),
((WORD32)0xf812 << 16) | ((WORD32)0xfe01 & 0xFFFF),
((WORD32)0x06a6 << 16) | ((WORD32)0xf86b & 0xFFFF),
((WORD32)0xfb4d << 16) | ((WORD32)0x001a & 0xFFFF),
((WORD32)0x07a5 << 16) | ((WORD32)0xf928 & 0xFFFF),
((WORD32)0xf848 << 16) | ((WORD32)0xfae1 & 0xFFFF),
((WORD32)0xf837 << 16) | ((WORD32)0x00fe & 0xFFFF),
((WORD32)0x0750 << 16) | ((WORD32)0x04a3 & 0xFFFF),
((WORD32)0xf802 << 16) | ((WORD32)0x05b0 & 0xFFFF),
((WORD32)0xf90d << 16) | ((WORD32)0xfe60 & 0xFFFF),
((WORD32)0xfde7 << 16) | ((WORD32)0xfa8a & 0xFFFF),
((WORD32)0xfe07 << 16) | ((WORD32)0xf8fd & 0xFFFF),
((WORD32)0x0031 << 16) | ((WORD32)0x022d & 0xFFFF),
((WORD32)0x0691 << 16) | ((WORD32)0xf931 & 0xFFFF),
((WORD32)0x0715 << 16) | ((WORD32)0xf8d4 & 0xFFFF),
((WORD32)0xfe8c << 16) | ((WORD32)0xfde8 & 0xFFFF),
((WORD32)0x00c0 << 16) | ((WORD32)0x0463 & 0xFFFF),
((WORD32)0xfba0 << 16) | ((WORD32)0x07ae & 0xFFFF),
((WORD32)0x02f7 << 16) | ((WORD32)0xfb35 & 0xFFFF),
((WORD32)0xfa5f << 16) | ((WORD32)0x074c & 0xFFFF),
((WORD32)0xfd3b << 16) | ((WORD32)0xf80b & 0xFFFF),
((WORD32)0xfa7f << 16) | ((WORD32)0xfd95 & 0xFFFF),
((WORD32)0xfdda << 16) | ((WORD32)0x06a6 & 0xFFFF),
((WORD32)0x03ed << 16) | ((WORD32)0xfc5f & 0xFFFF),
((WORD32)0x031e << 16) | ((WORD32)0x07a4 & 0xFFFF),
((WORD32)0xf82e << 16) | ((WORD32)0x006d & 0xFFFF),
((WORD32)0xfe9d << 16) | ((WORD32)0xf894 & 0xFFFF),
((WORD32)0x07ff << 16) | ((WORD32)0x04aa & 0xFFFF),
((WORD32)0xface << 16) | ((WORD32)0x057e & 0xFFFF),
((WORD32)0xff0a << 16) | ((WORD32)0xfb6e & 0xFFFF),
((WORD32)0xfb49 << 16) | ((WORD32)0xfd36 & 0xFFFF),
((WORD32)0xfca8 << 16) | ((WORD32)0x014d & 0xFFFF),
((WORD32)0x07fe << 16) | ((WORD32)0x00e4 & 0xFFFF),
((WORD32)0xfb78 << 16) | ((WORD32)0xf8c3 & 0xFFFF),
((WORD32)0x0788 << 16) | ((WORD32)0x02d3 & 0xFFFF),
((WORD32)0xf9f1 << 16) | ((WORD32)0x044b & 0xFFFF),
((WORD32)0x01a5 << 16) | ((WORD32)0xf872 & 0xFFFF),
((WORD32)0x0800 << 16) | ((WORD32)0x0663 & 0xFFFF),
((WORD32)0x0254 << 16) | ((WORD32)0x02d5 & 0xFFFF),
((WORD32)0xfaf9 << 16) | ((WORD32)0x031a & 0xFFFF),
((WORD32)0x037a << 16) | ((WORD32)0xf81e & 0xFFFF),
((WORD32)0xf823 << 16) | ((WORD32)0x01af & 0xFFFF),
((WORD32)0x0190 << 16) | ((WORD32)0xf876 & 0xFFFF),
((WORD32)0xf85d << 16) | ((WORD32)0x07df & 0xFFFF),
((WORD32)0x0778 << 16) | ((WORD32)0xfa54 & 0xFFFF),
((WORD32)0xf92e << 16) | ((WORD32)0xff55 & 0xFFFF),
((WORD32)0xf916 << 16) | ((WORD32)0xfc56 & 0xFFFF),
((WORD32)0x031c << 16) | ((WORD32)0x07c8 & 0xFFFF),
((WORD32)0x075d << 16) | ((WORD32)0xfb01 & 0xFFFF),
((WORD32)0x0722 << 16) | ((WORD32)0x0465 & 0xFFFF),
((WORD32)0xfd0e << 16) | ((WORD32)0x07b7 & 0xFFFF),
((WORD32)0x0783 << 16) | ((WORD32)0xf8cd & 0xFFFF),
((WORD32)0x07f1 << 16) | ((WORD32)0xffb3 & 0xFFFF),
((WORD32)0xf87a << 16) | ((WORD32)0x034e & 0xFFFF),
((WORD32)0x07fb << 16) | ((WORD32)0xfea7 & 0xFFFF),
((WORD32)0xfd21 << 16) | ((WORD32)0xfc45 & 0xFFFF),
((WORD32)0x006b << 16) | ((WORD32)0xfdf3 & 0xFFFF),
((WORD32)0x02f0 << 16) | ((WORD32)0xfce8 & 0xFFFF),
((WORD32)0x0755 << 16) | ((WORD32)0xfd8e & 0xFFFF),
((WORD32)0x0585 << 16) | ((WORD32)0x0747 & 0xFFFF),
((WORD32)0xfce8 << 16) | ((WORD32)0x07f6 & 0xFFFF),
((WORD32)0xfda9 << 16) | ((WORD32)0x02ff & 0xFFFF),
((WORD32)0xfb2f << 16) | ((WORD32)0x06f1 & 0xFFFF),
((WORD32)0xf835 << 16) | ((WORD32)0x07b8 & 0xFFFF),
((WORD32)0x0714 << 16) | ((WORD32)0x049a & 0xFFFF),
((WORD32)0x006a << 16) | ((WORD32)0x01b4 & 0xFFFF),
((WORD32)0xfbb8 << 16) | ((WORD32)0x07c8 & 0xFFFF),
((WORD32)0xfc0c << 16) | ((WORD32)0x07db & 0xFFFF),
((WORD32)0xf816 << 16) | ((WORD32)0xfcc8 & 0xFFFF),
((WORD32)0xf827 << 16) | ((WORD32)0xfa2c & 0xFFFF),
((WORD32)0xfdd0 << 16) | ((WORD32)0x07ff & 0xFFFF),
((WORD32)0x0081 << 16) | ((WORD32)0xfba3 & 0xFFFF),
((WORD32)0xfe5d << 16) | ((WORD32)0xfedd & 0xFFFF),
((WORD32)0x054c << 16) | ((WORD32)0x05cd & 0xFFFF),
((WORD32)0xf938 << 16) | ((WORD32)0x0031 & 0xFFFF),
((WORD32)0xf8e0 << 16) | ((WORD32)0x071c & 0xFFFF),
((WORD32)0x07ac << 16) | ((WORD32)0x0624 & 0xFFFF),
((WORD32)0x05e1 << 16) | ((WORD32)0xffb3 & 0xFFFF),
((WORD32)0xfd76 << 16) | ((WORD32)0xfd0e & 0xFFFF),
((WORD32)0xfd45 << 16) | ((WORD32)0x0338 & 0xFFFF),
((WORD32)0x03d3 << 16) | ((WORD32)0xfcd9 & 0xFFFF),
((WORD32)0x07dd << 16) | ((WORD32)0x0029 & 0xFFFF),
((WORD32)0xfd86 << 16) | ((WORD32)0xfe8e & 0xFFFF),
((WORD32)0x0800 << 16) | ((WORD32)0xfde6 & 0xFFFF),
((WORD32)0xf88c << 16) | ((WORD32)0xf823 & 0xFFFF),
((WORD32)0x07fe << 16) | ((WORD32)0xf997 & 0xFFFF),
((WORD32)0xfdeb << 16) | ((WORD32)0xf9ec & 0xFFFF),
((WORD32)0xfd25 << 16) | ((WORD32)0x018b & 0xFFFF),
((WORD32)0xf802 << 16) | ((WORD32)0x05f9 & 0xFFFF),
((WORD32)0x06ed << 16) | ((WORD32)0x0473 & 0xFFFF),
((WORD32)0x02ac << 16) | ((WORD32)0x06e5 & 0xFFFF),
((WORD32)0x07ec << 16) | ((WORD32)0x005e & 0xFFFF),
((WORD32)0xfaaa << 16) | ((WORD32)0xf8ab & 0xFFFF),
((WORD32)0x051f << 16) | ((WORD32)0x0141 & 0xFFFF),
((WORD32)0x07f7 << 16) | ((WORD32)0x03ab & 0xFFFF),
((WORD32)0xfaed << 16) | ((WORD32)0x01b0 & 0xFFFF),
((WORD32)0xff62 << 16) | ((WORD32)0xf8d5 & 0xFFFF),
((WORD32)0x07e3 << 16) | ((WORD32)0x070f & 0xFFFF),
((WORD32)0x0668 << 16) | ((WORD32)0xfd0d & 0xFFFF),
((WORD32)0x0645 << 16) | ((WORD32)0x03a4 & 0xFFFF),
((WORD32)0x00b2 << 16) | ((WORD32)0x067a & 0xFFFF),
((WORD32)0xf90e << 16) | ((WORD32)0x0326 & 0xFFFF),
((WORD32)0xfcd8 << 16) | ((WORD32)0xfaa8 & 0xFFFF),
((WORD32)0x07d4 << 16) | ((WORD32)0xfa34 & 0xFFFF),
((WORD32)0xf866 << 16) | ((WORD32)0x072a & 0xFFFF),
((WORD32)0x015c << 16) | ((WORD32)0x0460 & 0xFFFF),
((WORD32)0xf9d9 << 16) | ((WORD32)0xf84d & 0xFFFF),
((WORD32)0x07fb << 16) | ((WORD32)0x036a & 0xFFFF),
((WORD32)0x07a3 << 16) | ((WORD32)0x07c3 & 0xFFFF),
((WORD32)0x07f7 << 16) | ((WORD32)0xfbac & 0xFFFF),
((WORD32)0x023f << 16) | ((WORD32)0xf92c & 0xFFFF),
((WORD32)0x06d2 << 16) | ((WORD32)0xfad6 & 0xFFFF),
((WORD32)0xfbf4 << 16) | ((WORD32)0xfabb & 0xFFFF),
((WORD32)0xf839 << 16) | ((WORD32)0xfe27 & 0xFFFF),
((WORD32)0x07a2 << 16) | ((WORD32)0xf810 & 0xFFFF),
((WORD32)0xf83f << 16) | ((WORD32)0x05e7 & 0xFFFF),
((WORD32)0x0278 << 16) | ((WORD32)0x0352 & 0xFFFF),
((WORD32)0xfe0a << 16) | ((WORD32)0x050e & 0xFFFF),
((WORD32)0xfd4c << 16) | ((WORD32)0xfce8 & 0xFFFF),
((WORD32)0xff89 << 16) | ((WORD32)0xff72 & 0xFFFF),
((WORD32)0xfe2b << 16) | ((WORD32)0x07c4 & 0xFFFF),
((WORD32)0xfe85 << 16) | ((WORD32)0x03ce & 0xFFFF),
((WORD32)0xff29 << 16) | ((WORD32)0xf8fa & 0xFFFF),
((WORD32)0xfa40 << 16) | ((WORD32)0x063e & 0xFFFF),
((WORD32)0x07fc << 16) | ((WORD32)0x0734 & 0xFFFF),
((WORD32)0x049b << 16) | ((WORD32)0xf8b8 & 0xFFFF),
((WORD32)0x0250 << 16) | ((WORD32)0x07b4 & 0xFFFF),
((WORD32)0x0360 << 16) | ((WORD32)0x03da & 0xFFFF),
((WORD32)0x0778 << 16) | ((WORD32)0xfc84 & 0xFFFF),
((WORD32)0xf83c << 16) | ((WORD32)0x06ee & 0xFFFF),
((WORD32)0x02f0 << 16) | ((WORD32)0x0539 & 0xFFFF),
((WORD32)0xf983 << 16) | ((WORD32)0x00b4 & 0xFFFF),
((WORD32)0xfde7 << 16) | ((WORD32)0xf894 & 0xFFFF),
((WORD32)0x06b8 << 16) | ((WORD32)0x0478 & 0xFFFF),
((WORD32)0xf802 << 16) | ((WORD32)0xf851 & 0xFFFF),
((WORD32)0x05f9 << 16) | ((WORD32)0x00f9 & 0xFFFF),
((WORD32)0xfa05 << 16) | ((WORD32)0xfdd9 & 0xFFFF),
((WORD32)0x07aa << 16) | ((WORD32)0xf9ad & 0xFFFF),
((WORD32)0x07a3 << 16) | ((WORD32)0xff50 & 0xFFFF),
((WORD32)0x03e6 << 16) | ((WORD32)0x0800 & 0xFFFF),
((WORD32)0x03b5 << 16) | ((WORD32)0x00e1 & 0xFFFF),
((WORD32)0xf9e1 << 16) | ((WORD32)0x0723 & 0xFFFF),
((WORD32)0x0497 << 16) | ((WORD32)0x02d3 & 0xFFFF),
((WORD32)0x0608 << 16) | ((WORD32)0x07bd & 0xFFFF),
((WORD32)0xfb44 << 16) | ((WORD32)0xf8d9 & 0xFFFF),
((WORD32)0x0602 << 16) | ((WORD32)0xfda2 & 0xFFFF),
((WORD32)0xf81d << 16) | ((WORD32)0x0201 & 0xFFFF),
((WORD32)0xfcbd << 16) | ((WORD32)0xf8cc & 0xFFFF),
((WORD32)0x055b << 16) | ((WORD32)0x07e4 & 0xFFFF),
((WORD32)0xf834 << 16) | ((WORD32)0xfffc & 0xFFFF),
((WORD32)0x0736 << 16) | ((WORD32)0x07fc & 0xFFFF),
((WORD32)0xf905 << 16) | ((WORD32)0x07f0 & 0xFFFF),
((WORD32)0xf8ad << 16) | ((WORD32)0xfebe & 0xFFFF),
((WORD32)0xffbc << 16) | ((WORD32)0xfd06 & 0xFFFF),
((WORD32)0x0094 << 16) | ((WORD32)0xf8e5 & 0xFFFF),
((WORD32)0x07f6 << 16) | ((WORD32)0x07c4 & 0xFFFF),
((WORD32)0xfa02 << 16) | ((WORD32)0x0800 & 0xFFFF),
((WORD32)0x005e << 16) | ((WORD32)0x07fc & 0xFFFF),
((WORD32)0xf8e0 << 16) | ((WORD32)0xfd75 & 0xFFFF),
((WORD32)0xf94c << 16) | ((WORD32)0x07d0 & 0xFFFF),
((WORD32)0x02ad << 16) | ((WORD32)0xf91a & 0xFFFF),
((WORD32)0xf806 << 16) | ((WORD32)0x0776 & 0xFFFF),
((WORD32)0xfe2c << 16) | ((WORD32)0x0183 & 0xFFFF),
((WORD32)0x0561 << 16) | ((WORD32)0xffb5 & 0xFFFF),
((WORD32)0xff97 << 16) | ((WORD32)0xf898 & 0xFFFF),
((WORD32)0x07ff << 16) | ((WORD32)0x077d & 0xFFFF),
((WORD32)0x055b << 16) | ((WORD32)0x07ea & 0xFFFF),
((WORD32)0xf808 << 16) | ((WORD32)0xfc6d & 0xFFFF),
((WORD32)0x0692 << 16) | ((WORD32)0x07f7 & 0xFFFF),
((WORD32)0x07ef << 16) | ((WORD32)0x05c3 & 0xFFFF),
((WORD32)0xfac7 << 16) | ((WORD32)0x042d & 0xFFFF),
((WORD32)0x0783 << 16) | ((WORD32)0xfa02 & 0xFFFF),
((WORD32)0x07bd << 16) | ((WORD32)0x0745 & 0xFFFF),
((WORD32)0xfe39 << 16) | ((WORD32)0x0492 & 0xFFFF),
((WORD32)0xfc78 << 16) | ((WORD32)0xf896 & 0xFFFF),
((WORD32)0xf925 << 16) | ((WORD32)0x071c & 0xFFFF),
((WORD32)0x0758 << 16) | ((WORD32)0xfc4b & 0xFFFF),
((WORD32)0x05ce << 16) | ((WORD32)0xf802 & 0xFFFF),
((WORD32)0xf806 << 16) | ((WORD32)0x04a8 & 0xFFFF),
((WORD32)0x0636 << 16) | ((WORD32)0x078c & 0xFFFF),
((WORD32)0x009e << 16) | ((WORD32)0x04b1 & 0xFFFF),
((WORD32)0xfb84 << 16) | ((WORD32)0x069a & 0xFFFF),
((WORD32)0x07df << 16) | ((WORD32)0x0328 & 0xFFFF),
((WORD32)0x03ce << 16) | ((WORD32)0x057d & 0xFFFF),
((WORD32)0x0541 << 16) | ((WORD32)0x0177 & 0xFFFF),
((WORD32)0x0043 << 16) | ((WORD32)0xfa01 & 0xFFFF),
((WORD32)0xfce8 << 16) | ((WORD32)0x041b & 0xFFFF),
((WORD32)0xf836 << 16) | ((WORD32)0xf847 & 0xFFFF),
((WORD32)0xfbbd << 16) | ((WORD32)0xf8b0 & 0xFFFF),
((WORD32)0x07fc << 16) | ((WORD32)0x04e4 & 0xFFFF),
((WORD32)0xfbfb << 16) | ((WORD32)0xf8e5 & 0xFFFF),
((WORD32)0x0029 << 16) | ((WORD32)0x06d1 & 0xFFFF),
((WORD32)0x07ff << 16) | ((WORD32)0x0791 & 0xFFFF),
((WORD32)0x06a2 << 16) | ((WORD32)0xff7e & 0xFFFF),
((WORD32)0xfb4f << 16) | ((WORD32)0x07bf & 0xFFFF),
((WORD32)0xfe98 << 16) | ((WORD32)0xfc26 & 0xFFFF),
((WORD32)0x06ad << 16) | ((WORD32)0xfef5 & 0xFFFF),
((WORD32)0x007a << 16) | ((WORD32)0x01a4 & 0xFFFF),
((WORD32)0x0685 << 16) | ((WORD32)0xf86d & 0xFFFF),
((WORD32)0xfc67 << 16) | ((WORD32)0x0346 & 0xFFFF),
((WORD32)0xf8d2 << 16) | ((WORD32)0x07fd & 0xFFFF),
((WORD32)0x032d << 16) | ((WORD32)0xfa03 & 0xFFFF),
((WORD32)0xff65 << 16) | ((WORD32)0x05ed & 0xFFFF),
((WORD32)0x061c << 16) | ((WORD32)0x0357 & 0xFFFF),
((WORD32)0xfa0a << 16) | ((WORD32)0x0794 & 0xFFFF),
((WORD32)0x0531 << 16) | ((WORD32)0x034f & 0xFFFF),
((WORD32)0x04fc << 16) | ((WORD32)0xf88d & 0xFFFF),
((WORD32)0x0361 << 16) | ((WORD32)0xff62 & 0xFFFF),
((WORD32)0x0037 << 16) | ((WORD32)0xff91 & 0xFFFF),
((WORD32)0x0666 << 16) | ((WORD32)0x0753 & 0xFFFF),
((WORD32)0xf9a7 << 16) | ((WORD32)0xfd1a & 0xFFFF),
((WORD32)0x051c << 16) | ((WORD32)0x00a6 & 0xFFFF),
((WORD32)0x043b << 16) | ((WORD32)0x04ce & 0xFFFF),
((WORD32)0x05f0 << 16) | ((WORD32)0x005c & 0xFFFF),
((WORD32)0x07ed << 16) | ((WORD32)0xfe72 & 0xFFFF),
((WORD32)0xf991 << 16) | ((WORD32)0xf8eb & 0xFFFF),
((WORD32)0xfad5 << 16) | ((WORD32)0x05c7 & 0xFFFF),
((WORD32)0x00ef << 16) | ((WORD32)0xf94f & 0xFFFF),
((WORD32)0xf865 << 16) | ((WORD32)0xf83f & 0xFFFF),
((WORD32)0xfb06 << 16) | ((WORD32)0x069f & 0xFFFF),
((WORD32)0x003e << 16) | ((WORD32)0xf805 & 0xFFFF),
((WORD32)0xf829 << 16) | ((WORD32)0x02ec & 0xFFFF),
((WORD32)0xf800 << 16) | ((WORD32)0xfd1e & 0xFFFF),
((WORD32)0x0721 << 16) | ((WORD32)0xf82b & 0xFFFF),
((WORD32)0x00d5 << 16) | ((WORD32)0x0630 & 0xFFFF),
((WORD32)0x07ad << 16) | ((WORD32)0xfd2a & 0xFFFF),
((WORD32)0x0411 << 16) | ((WORD32)0x07b0 & 0xFFFF),
((WORD32)0x015c << 16) | ((WORD32)0xf9da & 0xFFFF),
((WORD32)0x0212 << 16) | ((WORD32)0x07fe & 0xFFFF),
((WORD32)0xffe9 << 16) | ((WORD32)0x07e1 & 0xFFFF),
((WORD32)0xf9a2 << 16) | ((WORD32)0x07c5 & 0xFFFF),
((WORD32)0xf80f << 16) | ((WORD32)0xf809 & 0xFFFF),
((WORD32)0xf803 << 16) | ((WORD32)0x0026 & 0xFFFF),
((WORD32)0xfa56 << 16) | ((WORD32)0x02b2 & 0xFFFF),
((WORD32)0xfa5d << 16) | ((WORD32)0x0776 & 0xFFFF),
((WORD32)0x07fd << 16) | ((WORD32)0xf81a & 0xFFFF),
((WORD32)0xfaee << 16) | ((WORD32)0xfeaf & 0xFFFF),
((WORD32)0xfeb3 << 16) | ((WORD32)0xf853 & 0xFFFF),
((WORD32)0xfc82 << 16) | ((WORD32)0xf86a & 0xFFFF),
((WORD32)0xf803 << 16) | ((WORD32)0x07b3 & 0xFFFF),
((WORD32)0xfea8 << 16) | ((WORD32)0xf815 & 0xFFFF),
((WORD32)0xf8f6 << 16) | ((WORD32)0xfa43 & 0xFFFF),
((WORD32)0x0389 << 16) | ((WORD32)0xf884 & 0xFFFF),
((WORD32)0x0777 << 16) | ((WORD32)0xf802 & 0xFFFF),
((WORD32)0xf87c << 16) | ((WORD32)0xfb7d & 0xFFFF),
((WORD32)0xf8ea << 16) | ((WORD32)0x03cf & 0xFFFF),
((WORD32)0x07ff << 16) | ((WORD32)0xf94a & 0xFFFF),
((WORD32)0xf9f8 << 16) | ((WORD32)0x0011 & 0xFFFF),
((WORD32)0x0783 << 16) | ((WORD32)0xff19 & 0xFFFF),
((WORD32)0x06cf << 16) | ((WORD32)0x0430 & 0xFFFF),
((WORD32)0x032d << 16) | ((WORD32)0x068b & 0xFFFF),
((WORD32)0xfd0a << 16) | ((WORD32)0xf909 & 0xFFFF),
((WORD32)0xfd1e << 16) | ((WORD32)0x02c6 & 0xFFFF),
((WORD32)0xf887 << 16) | ((WORD32)0xf93e & 0xFFFF),
((WORD32)0xfac7 << 16) | ((WORD32)0xfe86 & 0xFFFF),
((WORD32)0x00f5 << 16) | ((WORD32)0x07fe & 0xFFFF),
((WORD32)0x078b << 16) | ((WORD32)0x06a7 & 0xFFFF),
((WORD32)0x0602 << 16) | ((WORD32)0xfd28 & 0xFFFF),
((WORD32)0x048a << 16) | ((WORD32)0xfe13 & 0xFFFF),
((WORD32)0x03c0 << 16) | ((WORD32)0xfd97 & 0xFFFF),
((WORD32)0x07c9 << 16) | ((WORD32)0xf809 & 0xFFFF),
((WORD32)0xfcf0 << 16) | ((WORD32)0x07e2 & 0xFFFF),
((WORD32)0x0348 << 16) | ((WORD32)0x002b & 0xFFFF),
((WORD32)0x00c5 << 16) | ((WORD32)0x005a & 0xFFFF),
((WORD32)0xf92d << 16) | ((WORD32)0x0751 & 0xFFFF),
((WORD32)0x071c << 16) | ((WORD32)0xf805 & 0xFFFF),
((WORD32)0xfc25 << 16) | ((WORD32)0xf841 & 0xFFFF),
((WORD32)0x0235 << 16) | ((WORD32)0x04b1 & 0xFFFF),
((WORD32)0xfabb << 16) | ((WORD32)0x04b5 & 0xFFFF),
((WORD32)0x07e8 << 16) | ((WORD32)0x0800 & 0xFFFF),
((WORD32)0xfe59 << 16) | ((WORD32)0x045e & 0xFFFF),
((WORD32)0xfb08 << 16) | ((WORD32)0xfb35 & 0xFFFF),
((WORD32)0x01a0 << 16) | ((WORD32)0xf90d & 0xFFFF),
((WORD32)0xf82d << 16) | ((WORD32)0x07b4 & 0xFFFF),
((WORD32)0x00e4 << 16) | ((WORD32)0x01b8 & 0xFFFF),
((WORD32)0xfcb1 << 16) | ((WORD32)0x0242 & 0xFFFF),
((WORD32)0x01ee << 16) | ((WORD32)0x041b & 0xFFFF),
((WORD32)0xfab0 << 16) | ((WORD32)0xff57 & 0xFFFF),
((WORD32)0xfbb4 << 16) | ((WORD32)0xf830 & 0xFFFF),
((WORD32)0xf839 << 16) | ((WORD32)0x01c4 & 0xFFFF),
((WORD32)0x06fe << 16) | ((WORD32)0xfefa & 0xFFFF),
((WORD32)0x0186 << 16) | ((WORD32)0x0021 & 0xFFFF),
((WORD32)0xfc4b << 16) | ((WORD32)0xf861 & 0xFFFF),
((WORD32)0xff6f << 16) | ((WORD32)0xf871 & 0xFFFF),
((WORD32)0xf89b << 16) | ((WORD32)0xff2a & 0xFFFF),
((WORD32)0xf94b << 16) | ((WORD32)0xffdd & 0xFFFF),
((WORD32)0x0604 << 16) | ((WORD32)0xf801 & 0xFFFF),
((WORD32)0xfca2 << 16) | ((WORD32)0x07fa & 0xFFFF),
((WORD32)0xfa3b << 16) | ((WORD32)0xfd33 & 0xFFFF),
((WORD32)0x064f << 16) | ((WORD32)0x043a & 0xFFFF),
((WORD32)0x07cb << 16) | ((WORD32)0xfddd & 0xFFFF),
((WORD32)0x07f0 << 16) | ((WORD32)0xfb70 & 0xFFFF),
((WORD32)0x0625 << 16) | ((WORD32)0xf9e1 & 0xFFFF),
((WORD32)0xf971 << 16) | ((WORD32)0xfa1e & 0xFFFF),
((WORD32)0x068e << 16) | ((WORD32)0x07fa & 0xFFFF),
((WORD32)0xfddd << 16) | ((WORD32)0x0583 & 0xFFFF),
((WORD32)0xfc89 << 16) | ((WORD32)0x06d3 & 0xFFFF),
((WORD32)0x07f0 << 16) | ((WORD32)0x075a & 0xFFFF),
((WORD32)0xf98b << 16) | ((WORD32)0xfd64 & 0xFFFF),
((WORD32)0x0372 << 16) | ((WORD32)0xfe3f & 0xFFFF),
((WORD32)0x056b << 16) | ((WORD32)0xf85d & 0xFFFF),
((WORD32)0x047e << 16) | ((WORD32)0xfa58 & 0xFFFF),
((WORD32)0x00de << 16) | ((WORD32)0xff4f & 0xFFFF),
((WORD32)0x074c << 16) | ((WORD32)0xfab9 & 0xFFFF),
((WORD32)0xfc15 << 16) | ((WORD32)0x0481 & 0xFFFF),
((WORD32)0xf8e1 << 16) | ((WORD32)0xfa44 & 0xFFFF),
((WORD32)0x0539 << 16) | ((WORD32)0x0546 & 0xFFFF),
((WORD32)0x0565 << 16) | ((WORD32)0xf977 & 0xFFFF),
((WORD32)0xfc2e << 16) | ((WORD32)0xfea8 & 0xFFFF),
((WORD32)0xf806 << 16) | ((WORD32)0xf884 & 0xFFFF),
((WORD32)0xf8bb << 16) | ((WORD32)0x04f6 & 0xFFFF),
((WORD32)0xff78 << 16) | ((WORD32)0xfe18 & 0xFFFF),
((WORD32)0x07f4 << 16) | ((WORD32)0x0181 & 0xFFFF),
((WORD32)0x07d1 << 16) | ((WORD32)0xfdb5 & 0xFFFF),
((WORD32)0x0796 << 16) | ((WORD32)0xf833 & 0xFFFF),
((WORD32)0xf85e << 16) | ((WORD32)0xf9a2 & 0xFFFF),
((WORD32)0xfc12 << 16) | ((WORD32)0x02a2 & 0xFFFF),
((WORD32)0x07fe << 16) | ((WORD32)0x071f & 0xFFFF),
((WORD32)0x0409 << 16) | ((WORD32)0xf91f & 0xFFFF),
((WORD32)0x03c6 << 16) | ((WORD32)0xfe81 & 0xFFFF),
((WORD32)0xfb09 << 16) | ((WORD32)0x0600 & 0xFFFF),
((WORD32)0xfc7e << 16) | ((WORD32)0x0800 & 0xFFFF),
((WORD32)0x07e4 << 16) | ((WORD32)0xfbb7 & 0xFFFF),
((WORD32)0xfb14 << 16) | ((WORD32)0xf8d7 & 0xFFFF),
((WORD32)0xffb1 << 16) | ((WORD32)0xfa69 & 0xFFFF),
((WORD32)0xfd98 << 16) | ((WORD32)0xff63 & 0xFFFF),
((WORD32)0x035a << 16) | ((WORD32)0x002d & 0xFFFF),
((WORD32)0xf91c << 16) | ((WORD32)0x07ea & 0xFFFF),
((WORD32)0x0561 << 16) | ((WORD32)0xfeec & 0xFFFF),
((WORD32)0xfa57 << 16) | ((WORD32)0xf9e0 & 0xFFFF),
((WORD32)0x0786 << 16) | ((WORD32)0x00b9 & 0xFFFF),
((WORD32)0xf969 << 16) | ((WORD32)0x00b7 & 0xFFFF),
((WORD32)0xfd6f << 16) | ((WORD32)0x0403 & 0xFFFF),
((WORD32)0x049c << 16) | ((WORD32)0xf815 & 0xFFFF),
((WORD32)0xfd18 << 16) | ((WORD32)0x0098 & 0xFFFF),
((WORD32)0x0800 << 16) | ((WORD32)0xfedf & 0xFFFF),
((WORD32)0xf89c << 16) | ((WORD32)0xf829 & 0xFFFF),
((WORD32)0xfc6e << 16) | ((WORD32)0xfba9 & 0xFFFF),
((WORD32)0x038a << 16) | ((WORD32)0x05b5 & 0xFFFF),
((WORD32)0x004b << 16) | ((WORD32)0x0517 & 0xFFFF),
((WORD32)0x042d << 16) | ((WORD32)0xf92b & 0xFFFF),
((WORD32)0xf86d << 16) | ((WORD32)0xffdb & 0xFFFF),
((WORD32)0xf819 << 16) | ((WORD32)0x0695 & 0xFFFF),
((WORD32)0x06ff << 16) | ((WORD32)0x0727 & 0xFFFF),
((WORD32)0xf887 << 16) | ((WORD32)0x034f & 0xFFFF),
((WORD32)0x07af << 16) | ((WORD32)0x0773 & 0xFFFF),
((WORD32)0x07ce << 16) | ((WORD32)0x06e4 & 0xFFFF),
((WORD32)0x07f9 << 16) | ((WORD32)0x059d & 0xFFFF),
((WORD32)0xf86c << 16) | ((WORD32)0xfda2 & 0xFFFF),
((WORD32)0x0754 << 16) | ((WORD32)0xf826 & 0xFFFF),
((WORD32)0xf801 << 16) | ((WORD32)0xfb3e & 0xFFFF),
((WORD32)0x07c5 << 16) | ((WORD32)0xfa99 & 0xFFFF),
((WORD32)0x0121 << 16) | ((WORD32)0xf865 & 0xFFFF),
((WORD32)0xfc3d << 16) | ((WORD32)0xfd03 & 0xFFFF),
((WORD32)0x0675 << 16) | ((WORD32)0x025f & 0xFFFF),
((WORD32)0xfce2 << 16) | ((WORD32)0x072a & 0xFFFF),
((WORD32)0xffea << 16) | ((WORD32)0xfaa5 & 0xFFFF),
((WORD32)0xf8b3 << 16) | ((WORD32)0xff14 & 0xFFFF),
((WORD32)0x0463 << 16) | ((WORD32)0x0605 & 0xFFFF),
((WORD32)0x0333 << 16) | ((WORD32)0xf816 & 0xFFFF),
((WORD32)0xf803 << 16) | ((WORD32)0xf8f3 & 0xFFFF),
((WORD32)0xf85c << 16) | ((WORD32)0x0746 & 0xFFFF),
((WORD32)0xfc58 << 16) | ((WORD32)0xfb76 & 0xFFFF),
((WORD32)0xfa2a << 16) | ((WORD32)0xf829 & 0xFFFF),
((WORD32)0x060d << 16) | ((WORD32)0x01ad & 0xFFFF),
((WORD32)0x0091 << 16) | ((WORD32)0xf9bd & 0xFFFF),
((WORD32)0x05f6 << 16) | ((WORD32)0xf8b5 & 0xFFFF),
((WORD32)0xf849 << 16) | ((WORD32)0xf86c & 0xFFFF),
((WORD32)0x026f << 16) | ((WORD32)0xfc0c & 0xFFFF),
((WORD32)0x0553 << 16) | ((WORD32)0x052c & 0xFFFF),
((WORD32)0x0756 << 16) | ((WORD32)0x0167 & 0xFFFF),
((WORD32)0xfa57 << 16) | ((WORD32)0x0434 & 0xFFFF),
((WORD32)0xfa65 << 16) | ((WORD32)0xfc5f & 0xFFFF),
((WORD32)0xf80a << 16) | ((WORD32)0xf8cb & 0xFFFF),
((WORD32)0x07da << 16) | ((WORD32)0xf9ce & 0xFFFF),
((WORD32)0xfba0 << 16) | ((WORD32)0xffcb & 0xFFFF),
((WORD32)0xffdd << 16) | ((WORD32)0x0006 & 0xFFFF),
((WORD32)0xf91c << 16) | ((WORD32)0x0367 & 0xFFFF),
((WORD32)0xf817 << 16) | ((WORD32)0xf8f8 & 0xFFFF),
((WORD32)0x0424 << 16) | ((WORD32)0x055b & 0xFFFF),
((WORD32)0xf807 << 16) | ((WORD32)0xfb5a & 0xFFFF),
((WORD32)0xf801 << 16) | ((WORD32)0x07df & 0xFFFF),
((WORD32)0x046c << 16) | ((WORD32)0x04c2 & 0xFFFF),
((WORD32)0x02c4 << 16) | ((WORD32)0x0797 & 0xFFFF),
((WORD32)0x0503 << 16) | ((WORD32)0xfa0c & 0xFFFF),
((WORD32)0xf9d4 << 16) | ((WORD32)0xfd4a & 0xFFFF),
((WORD32)0xf8ac << 16) | ((WORD32)0x004c & 0xFFFF),
((WORD32)0xf9e6 << 16) | ((WORD32)0xf8b1 & 0xFFFF),
((WORD32)0x0662 << 16) | ((WORD32)0xf88c & 0xFFFF),
((WORD32)0x045c << 16) | ((WORD32)0xff0c & 0xFFFF),
((WORD32)0xf926 << 16) | ((WORD32)0x0365 & 0xFFFF),
((WORD32)0xf892 << 16) | ((WORD32)0x023b & 0xFFFF),
((WORD32)0xff10 << 16) | ((WORD32)0xf804 & 0xFFFF),
((WORD32)0x01b5 << 16) | ((WORD32)0xf8be & 0xFFFF),
((WORD32)0xf9e8 << 16) | ((WORD32)0x07fb & 0xFFFF),
((WORD32)0x07d9 << 16) | ((WORD32)0xf855 & 0xFFFF),
((WORD32)0xf920 << 16) | ((WORD32)0x07a9 & 0xFFFF),
((WORD32)0xf889 << 16) | ((WORD32)0x03f4 & 0xFFFF)}
};
const ia_qmf_dec_tables_struct ixheaacd_aac_qmf_dec_tables = {
// const WORD16 w_32[2 * 30] =
{0, 32767, 0, 32767, 0, 32767, 6393, 32138, 12540,
30274, 18205, 27246, 12540, 30274, 23170, 23170, 30274, 12540,
18205, 27246, 30274, 12540, 32138, -6393, 23170, 23170, 32767,
0, 23170, -23170, 27246, 18205, 30274, -12540, 6393, -32138,
30274, 12540, 23170, -23170, -12540, -30274, 32138, 6393, 12540,
-30274, -27246, -18205, 0, 32767, 0, 32767, 0, 32767,
23170, 23170, 32767, 0, 23170, -23170},
// const WORD16 w_16[2 * 12] =
{0, 32767, 0, 32767, 0, 32767, 12540, 30274,
23170, 23170, 30274, 12540, 23170, 23170, 32767, 0,
23170, -23170, 30274, 12540, 23170, -23170, -12540, -30274},
// const WORD32 ixheaacd_dig_rev_table2_32[4]=
{0, 64, 16, 80},
// const WORD32 ixheaacd_dig_rev_table4_16[2]=
{0, 16},
// const WORD16 ixheaacd_sbr_sin_twiddle_l64 and
// ixheaacd_sbr_cos_twiddle_l64 [32] =
{
(WORD16)0x0192, (WORD16)0x7ffe, (WORD16)0x7fea, (WORD16)0x04b6,
(WORD16)0x07d9, (WORD16)0x7fc2, (WORD16)0x7f87, (WORD16)0x0afb,
(WORD16)0x0e1c, (WORD16)0x7f38, (WORD16)0x7ed6, (WORD16)0x113a,
(WORD16)0x1455, (WORD16)0x7e60, (WORD16)0x7dd6, (WORD16)0x176e,
(WORD16)0x1a83, (WORD16)0x7d3a, (WORD16)0x7c89, (WORD16)0x1d93,
(WORD16)0x209f, (WORD16)0x7bc6, (WORD16)0x7aef, (WORD16)0x23a7,
(WORD16)0x26a8, (WORD16)0x7a06, (WORD16)0x790a, (WORD16)0x29a4,
(WORD16)0x2c99, (WORD16)0x77fb, (WORD16)0x76d9, (WORD16)0x2f87,
(WORD16)0x326e, (WORD16)0x75a6, (WORD16)0x7460, (WORD16)0x354e,
(WORD16)0x3825, (WORD16)0x7308, (WORD16)0x719e, (WORD16)0x3af3,
(WORD16)0x3db8, (WORD16)0x7023, (WORD16)0x6e97, (WORD16)0x4074,
(WORD16)0x4326, (WORD16)0x6cf9, (WORD16)0x6b4b, (WORD16)0x45cd,
(WORD16)0x486a, (WORD16)0x698c, (WORD16)0x67bd, (WORD16)0x4afb,
(WORD16)0x4d81, (WORD16)0x65de, (WORD16)0x63ef, (WORD16)0x4ffb,
(WORD16)0x5269, (WORD16)0x61f1, (WORD16)0x5fe4, (WORD16)0x54ca,
(WORD16)0x571e, (WORD16)0x5dc8, (WORD16)0x5b9d, (WORD16)0x5964,
},
// WORD16 sbr_alt_sin_twiddle_l64[32];
{
// (WORD16)0x0000, (WORD16)0x7fff,
(WORD16)0x0648, (WORD16)0x7fd9, (WORD16)0x0c8c, (WORD16)0x7f62,
(WORD16)0x12c8, (WORD16)0x7e9d, (WORD16)0x18f9, (WORD16)0x7d8a,
(WORD16)0x1f1a, (WORD16)0x7c2a, (WORD16)0x2528, (WORD16)0x7a7d,
(WORD16)0x2b1f, (WORD16)0x7885, (WORD16)0x30fc, (WORD16)0x7642,
(WORD16)0x36ba, (WORD16)0x73b6, (WORD16)0x3c57, (WORD16)0x70e3,
(WORD16)0x41ce, (WORD16)0x6dca, (WORD16)0x471d, (WORD16)0x6a6e,
(WORD16)0x4c40, (WORD16)0x66d0, (WORD16)0x5134, (WORD16)0x62f2,
(WORD16)0x55f6, (WORD16)0x5ed7, (WORD16)0x5a82, (WORD16)0x5a82,
},
// const WORD16 ixheaacd_sbr_cos_sin_twiddle_ds_l32[32+32] =
{(WORD16)0x7ffe, (WORD16)0x0192, (WORD16)0x7fea, (WORD16)0x04b6,
(WORD16)0x7fc2, (WORD16)0x07d9, (WORD16)0x7f87, (WORD16)0x0afb,
(WORD16)0x7f38, (WORD16)0x0e1c, (WORD16)0x7ed6, (WORD16)0x113a,
(WORD16)0x7e60, (WORD16)0x1455, (WORD16)0x7dd6, (WORD16)0x176e,
(WORD16)0x7d3a, (WORD16)0x1a83, (WORD16)0x7c89, (WORD16)0x1d93,
(WORD16)0x7bc6, (WORD16)0x209f, (WORD16)0x7aef, (WORD16)0x23a7,
(WORD16)0x7a06, (WORD16)0x26a8, (WORD16)0x790a, (WORD16)0x29a4,
(WORD16)0x77fb, (WORD16)0x2c99, (WORD16)0x76d9, (WORD16)0x2f87,
(WORD16)0x75a6, (WORD16)0x326e, (WORD16)0x7460, (WORD16)0x354e,
(WORD16)0x7308, (WORD16)0x3825, (WORD16)0x719e, (WORD16)0x3af3,
(WORD16)0x7023, (WORD16)0x3db8, (WORD16)0x6e97, (WORD16)0x4074,
(WORD16)0x6cf9, (WORD16)0x4326, (WORD16)0x6b4b, (WORD16)0x45cd,
(WORD16)0x698c, (WORD16)0x486a, (WORD16)0x67bd, (WORD16)0x4afb,
(WORD16)0x65de, (WORD16)0x4d81, (WORD16)0x63ef, (WORD16)0x4ffb,
(WORD16)0x61f1, (WORD16)0x5269, (WORD16)0x5fe4, (WORD16)0x54ca,
(WORD16)0x5dc8, (WORD16)0x571e, (WORD16)0x5b9d, (WORD16)0x5964},
// const WORD16 ixheaacd_sbr_cos_twiddle_l32 and
// ixheaacd_sbr_sin_twiddle_l32[16]=
{
(WORD16)0x0324, (WORD16)0x7ff6, (WORD16)0x7fa7, (WORD16)0x096b,
(WORD16)0x0fab, (WORD16)0x7f0a, (WORD16)0x7e1e, (WORD16)0x15e2,
(WORD16)0x1c0c, (WORD16)0x7ce4, (WORD16)0x7b5d, (WORD16)0x2224,
(WORD16)0x2827, (WORD16)0x798a, (WORD16)0x776c, (WORD16)0x2e11,
(WORD16)0x33df, (WORD16)0x7505, (WORD16)0x7255, (WORD16)0x398d,
(WORD16)0x3f17, (WORD16)0x6f5f, (WORD16)0x6c24, (WORD16)0x447b,
(WORD16)0x49b4, (WORD16)0x68a7, (WORD16)0x64e9, (WORD16)0x4ec0,
(WORD16)0x539b, (WORD16)0x60ec, (WORD16)0x5cb4, (WORD16)0x5843,
},
// const WORD16 ixheaacd_sbr_alt_sin_twiddle_l32[17] =
{
//(WORD16)0x0000, (WORD16)0x7fff,
(WORD16)0x0c8c, (WORD16)0x7f62, (WORD16)0x18f9, (WORD16)0x7d8a,
(WORD16)0x2528, (WORD16)0x7a7d, (WORD16)0x30fc, (WORD16)0x7642,
(WORD16)0x3c57, (WORD16)0x70e3, (WORD16)0x471d, (WORD16)0x6a6e,
(WORD16)0x5134, (WORD16)0x62f2, (WORD16)0x5a82, (WORD16)0x5a82,
},
// const WORD16 ixheaacd_sbr_t_cos_sin_l32[32+32] = //exp[-i * pi/32* 3/4 *
// (k +0.5)]
{(WORD16)0x7fea, (WORD16)0x04b6, (WORD16)0x7f38, (WORD16)0x0e1c,
(WORD16)0x7dd6, (WORD16)0x176e, (WORD16)0x7bc6, (WORD16)0x209f,
(WORD16)0x790a, (WORD16)0x29a4, (WORD16)0x75a6, (WORD16)0x326e,
(WORD16)0x719e, (WORD16)0x3af3, (WORD16)0x6cf9, (WORD16)0x4326,
(WORD16)0x67bd, (WORD16)0x4afb, (WORD16)0x61f1, (WORD16)0x5269,
(WORD16)0x5b9d, (WORD16)0x5964, (WORD16)0x54ca, (WORD16)0x5fe4,
(WORD16)0x4d81, (WORD16)0x65de, (WORD16)0x45cd, (WORD16)0x6b4b,
(WORD16)0x3db8, (WORD16)0x7023, (WORD16)0x354e, (WORD16)0x7460,
(WORD16)0x2c99, (WORD16)0x77fb, (WORD16)0x23a7, (WORD16)0x7aef,
(WORD16)0x1a83, (WORD16)0x7d3a, (WORD16)0x113a, (WORD16)0x7ed6,
(WORD16)0x07d9, (WORD16)0x7fc2, (WORD16)-0x0192, (WORD16)0x7ffe,
(WORD16)-0x0afb, (WORD16)0x7f87, (WORD16)-0x1455, (WORD16)0x7e60,
(WORD16)-0x1d93, (WORD16)0x7c89, (WORD16)-0x26a8, (WORD16)0x7a06,
(WORD16)-0x2f87, (WORD16)0x76d9, (WORD16)-0x3825, (WORD16)0x7308,
(WORD16)-0x4074, (WORD16)0x6e97, (WORD16)-0x486a, (WORD16)0x698c,
(WORD16)-0x4ffb, (WORD16)0x63ef, (WORD16)-0x571e, (WORD16)0x5dc8},
// const WORD16 ixheeaacd_post_fft_tw_tab[17] =
{32767, 32610, 32138, 31357, 30274, 28899, 27246, 25330, 23170, 20788,
18205, 15447, 12540, 9512, 6393, 3212, 0},
// const WORD16 ixheaacd_dct23_tw[66] =
{0, 0, 32758, 804, 32729, 1608, 32679, 2411, 32610, 3212,
32522, 4011, 32413, 4808, 32286, 5602, 32138, 6393, 31972, 7180,
31786, 7962, 31581, 8740, 31357, 9512, 31114, 10279, 30853, 11039,
30572, 11793, 30274, 12540, 29957, 13279, 29622, 14010, 29269, 14733,
28899, 15447, 28511, 16151, 28106, 16846, 27684, 17531, 27246, 18205,
26791, 18868, 26320, 19520, 25833, 20160, 25330, 20788, 24812, 21403,
24279, 22006, 23732, 22595, 23170, 23170},
// const WORD16 qmf_c[1280] =
{0, -18, -18, -16, -16, -16, -17, -17, -18,
-19, -19, -20, -21, -21, -22, -23, -23, -24,
-24, -25, -25, -25, -26, -25, -26, -26, -25,
-25, -25, -24, -24, -23, -22, -21, -19, -18,
-17, -15, -13, -11, -9, -7, -5, -2, 0,
4, 7, 10, 13, 17, 20, 24, 28, 32,
37, 41, 46, 51, 55, 60, 65, 70, 75,
81, 86, 91, 97, 102, 107, 113, 118, 123,
128, 134, 138, 143, 148, 153, 157, 161, 165,
168, 172, 175, 178, 180, 182, 183, 184, 185,
185, 184, 183, 182, 179, 176, 173, 168, 163,
158, 151, 144, 135, 126, 116, 105, 93, 80,
66, 52, 36, 19, 1, -18, -38, -59, -81,
-105, -129, -155, -181, -209, -238, -268, -299, -331,
-365, -399, 435, 472, 509, 548, 588, 629, 670,
713, 756, 800, 845, 891, 937, 985, 1032, 1081,
1129, 1179, 1228, 1278, 1328, 1378, 1429, 1479, 1530,
1580, 1630, 1680, 1729, 1778, 1826, 1873, 1920, 1966,
2010, 2054, 2096, 2137, 2177, 2215, 2251, 2286, 2319,
2349, 2378, 2404, 2428, 2449, 2468, 2484, 2497, 2507,
2514, 2517, 2517, 2514, 2507, 2496, 2482, 2463, 2440,
2413, 2381, 2346, 2305, 2260, 2210, 2155, 2095, 2030,
1960, 1885, 1804, 1717, 1625, 1528, 1425, 1315, 1201,
1080, 953, 820, 682, 536, 385, 228, 65, -105,
-281, -463, -652, -846, -1047, -1254, -1467, -1687, -1913,
-2144, -2382, -2626, -2876, -3131, -3393, -3660, -3932, -4211,
-4494, -4783, -5078, -5377, -5681, -5991, -6304, -6623, -6946,
-7273, -7604, -7940, -8279, -8621, -8967, -9317, -9669, -10024,
-10382, -10742, -11104, -11469, 11834, 12202, 12571, 12941, 13311,
13683, 14055, 14426, 14798, 15169, 15540, 15910, 16278, 16646,
17011, 17374, 17736, 18095, 18451, 18804, 19154, 19501, 19844,
20182, 20517, 20847, 21172, 21493, 21808, 22117, 22421, 22719,
23011, 23296, 23575, 23847, 24111, 24369, 24619, 24861, 25096,
25322, 25540, 25750, 25951, 26144, 26327, 26502, 26667, 26823,
26969, 27107, 27234, 27351, 27459, 27556, 27644, 27721, 27788,
27846, 27892, 27928, 27954, 27970, 27975, 27970, 27954, 27928,
27892, 27846, 27788, 27721, 27644, 27556, 27459, 27351, 27234,
27107, 26969, 26823, 26667, 26502, 26327, 26144, 25951, 25750,
25540, 25322, 25096, 24861, 24619, 24369, 24111, 23847, 23575,
23296, 23011, 22719, 22421, 22117, 21808, 21493, 21172, 20847,
20517, 20182, 19844, 19501, 19154, 18804, 18451, 18095, 17736,
17374, 17011, 16646, 16278, 15910, 15540, 15169, 14798, 14426,
14055, 13683, 13311, 12941, 12571, 12202, -11834, -11469, -11104,
-10742, -10382, -10024, -9669, -9317, -8967, -8621, -8279, -7940,
-7604, -7273, -6946, -6623, -6304, -5991, -5681, -5377, -5078,
-4783, -4494, -4211, -3932, -3660, -3393, -3131, -2876, -2626,
-2382, -2144, -1913, -1687, -1467, -1254, -1047, -846, -652,
-463, -281, -105, 65, 228, 385, 536, 682, 820,
953, 1080, 1201, 1315, 1425, 1528, 1625, 1717, 1804,
1885, 1960, 2030, 2095, 2155, 2210, 2260, 2305, 2346,
2381, 2413, 2440, 2463, 2482, 2496, 2507, 2514, 2517,
2517, 2514, 2507, 2497, 2484, 2468, 2449, 2428, 2404,
2378, 2349, 2319, 2286, 2251, 2215, 2177, 2137, 2096,
2054, 2010, 1966, 1920, 1873, 1826, 1778, 1729, 1680,
1630, 1580, 1530, 1479, 1429, 1378, 1328, 1278, 1228,
1179, 1129, 1081, 1032, 985, 937, 891, 845, 800,
756, 713, 670, 629, 588, 548, 509, 472, -435,
-399, -365, -331, -299, -268, -238, -209, -181, -155,
-129, -105, -81, -59, -38, -18, 1, 19, 36,
52, 66, 80, 93, 105, 116, 126, 135, 144,
151, 158, 163, 168, 173, 176, 179, 182, 183,
184, 185, 185, 184, 183, 182, 180, 178, 175,
172, 168, 165, 161, 157, 153, 148, 143, 138,
134, 128, 123, 118, 113, 107, 102, 97, 91,
86, 81, 75, 70, 65, 60, 55, 51, 46,
41, 37, 32, 28, 24, 20, 17, 13, 10,
7, 4, 0, -2, -5, -7, -9, -11, -13,
-15, -17, -18, -19, -21, -22, -23, -24, -24,
-25, -25, -25, -26, -26, -25, -26, -25, -25,
-25, -24, -24, -23, -23, -22, -21, -21, -20,
-19, -19, -18, -17, -17, -16, -16, -16, -18,
-18, 0, -18, -18, -16, -16, -16, -17, -17,
-18, -19, -19, -20, -21, -21, -22, -23, -23,
-24, -24, -25, -25, -25, -26, -25, -26, -26,
-25, -25, -25, -24, -24, -23, -22, -21, -19,
-18, -17, -15, -13, -11, -9, -7, -5, -2,
0, 4, 7, 10, 13, 17, 20, 24, 28,
32, 37, 41, 46, 51, 55, 60, 65, 70,
75, 81, 86, 91, 97, 102, 107, 113, 118,
123, 128, 134, 138, 143, 148, 153, 157, 161,
165, 168, 172, 175, 178, 180, 182, 183, 184,
185, 185, 184, 183, 182, 179, 176, 173, 168,
163, 158, 151, 144, 135, 126, 116, 105, 93,
80, 66, 52, 36, 19, 1, -18, -38, -59,
-81, -105, -129, -155, -181, -209, -238, -268, -299,
-331, -365, -399, 435, 472, 509, 548, 588, 629,
670, 713, 756, 800, 845, 891, 937, 985, 1032,
1081, 1129, 1179, 1228, 1278, 1328, 1378, 1429, 1479,
1530, 1580, 1630, 1680, 1729, 1778, 1826, 1873, 1920,
1966, 2010, 2054, 2096, 2137, 2177, 2215, 2251, 2286,
2319, 2349, 2378, 2404, 2428, 2449, 2468, 2484, 2497,
2507, 2514, 2517, 2517, 2514, 2507, 2496, 2482, 2463,
2440, 2413, 2381, 2346, 2305, 2260, 2210, 2155, 2095,
2030, 1960, 1885, 1804, 1717, 1625, 1528, 1425, 1315,
1201, 1080, 953, 820, 682, 536, 385, 228, 65,
-105, -281, -463, -652, -846, -1047, -1254, -1467, -1687,
-1913, -2144, -2382, -2626, -2876, -3131, -3393, -3660, -3932,
-4211, -4494, -4783, -5078, -5377, -5681, -5991, -6304, -6623,
-6946, -7273, -7604, -7940, -8279, -8621, -8967, -9317, -9669,
-10024, -10382, -10742, -11104, -11469, 11834, 12202, 12571, 12941,
13311, 13683, 14055, 14426, 14798, 15169, 15540, 15910, 16278,
16646, 17011, 17374, 17736, 18095, 18451, 18804, 19154, 19501,
19844, 20182, 20517, 20847, 21172, 21493, 21808, 22117, 22421,
22719, 23011, 23296, 23575, 23847, 24111, 24369, 24619, 24861,
25096, 25322, 25540, 25750, 25951, 26144, 26327, 26502, 26667,
26823, 26969, 27107, 27234, 27351, 27459, 27556, 27644, 27721,
27788, 27846, 27892, 27928, 27954, 27970, 27975, 27970, 27954,
27928, 27892, 27846, 27788, 27721, 27644, 27556, 27459, 27351,
27234, 27107, 26969, 26823, 26667, 26502, 26327, 26144, 25951,
25750, 25540, 25322, 25096, 24861, 24619, 24369, 24111, 23847,
23575, 23296, 23011, 22719, 22421, 22117, 21808, 21493, 21172,
20847, 20517, 20182, 19844, 19501, 19154, 18804, 18451, 18095,
17736, 17374, 17011, 16646, 16278, 15910, 15540, 15169, 14798,
14426, 14055, 13683, 13311, 12941, 12571, 12202, -11834, -11469,
-11104, -10742, -10382, -10024, -9669, -9317, -8967, -8621, -8279,
-7940, -7604, -7273, -6946, -6623, -6304, -5991, -5681, -5377,
-5078, -4783, -4494, -4211, -3932, -3660, -3393, -3131, -2876,
-2626, -2382, -2144, -1913, -1687, -1467, -1254, -1047, -846,
-652, -463, -281, -105, 65, 228, 385, 536, 682,
820, 953, 1080, 1201, 1315, 1425, 1528, 1625, 1717,
1804, 1885, 1960, 2030, 2095, 2155, 2210, 2260, 2305,
2346, 2381, 2413, 2440, 2463, 2482, 2496, 2507, 2514,
2517, 2517, 2514, 2507, 2497, 2484, 2468, 2449, 2428,
2404, 2378, 2349, 2319, 2286, 2251, 2215, 2177, 2137,
2096, 2054, 2010, 1966, 1920, 1873, 1826, 1778, 1729,
1680, 1630, 1580, 1530, 1479, 1429, 1378, 1328, 1278,
1228, 1179, 1129, 1081, 1032, 985, 937, 891, 845,
800, 756, 713, 670, 629, 588, 548, 509, 472,
-435, -399, -365, -331, -299, -268, -238, -209, -181,
-155, -129, -105, -81, -59, -38, -18, 1, 19,
36, 52, 66, 80, 93, 105, 116, 126, 135,
144, 151, 158, 163, 168, 173, 176, 179, 182,
183, 184, 185, 185, 184, 183, 182, 180, 178,
175, 172, 168, 165, 161, 157, 153, 148, 143,
138, 134, 128, 123, 118, 113, 107, 102, 97,
91, 86, 81, 75, 70, 65, 60, 55, 51,
46, 41, 37, 32, 28, 24, 20, 17, 13,
10, 7, 4, 0, -2, -5, -7, -9, -11,
-13, -15, -17, -18, -19, -21, -22, -23, -24,
-24, -25, -25, -25, -26, -26, -25, -26, -25,
-25, -25, -24, -24, -23, -23, -22, -21, -21,
-20, -19, -19, -18, -17, -17, -16, -16, -16,
-18, -18},
{
0x00, 0x01, 0x02, 0x03,
},
// w1024[1536];
{
0x00007fff, 0xff377fff, 0xfe6e7ffe, 0xfda57ffa, 0xfcdc7ff6, 0xfc137ff1,
0xfb4a7fea, 0xfa817fe2, 0xf9b87fd9, 0xf8ef7fce, 0xf8277fc2, 0xf75e7fb5,
0xf6957fa7, 0xf5cd7f98, 0xf5057f87, 0xf43c7f75, 0xf3747f62, 0xf2ac7f4e,
0xf1e47f38, 0xf11c7f22, 0xf0557f0a, 0xef8d7ef0, 0xeec67ed6, 0xedff7eba,
0xed387e9d, 0xec717e7f, 0xebab7e60, 0xeae47e3f, 0xea1e7e1e, 0xe9587dfb,
0xe8927dd6, 0xe7cd7db1, 0xe7077d8a, 0xe6427d63, 0xe57d7d3a, 0xe4b97d0f,
0xe3f47ce4, 0xe3307cb7, 0xe26d7c89, 0xe1a97c5a, 0xe0e67c2a, 0xe0237bf9,
0xdf617bc6, 0xde9e7b92, 0xdddc7b5d, 0xdd1b7b27, 0xdc597aef, 0xdb997ab7,
0xdad87a7d, 0xda187a42, 0xd9587a06, 0xd89879c9, 0xd7d9798a, 0xd71b794a,
0xd65c790a, 0xd59e78c8, 0xd4e17885, 0xd4247840, 0xd36777fb, 0xd2ab77b4,
0xd1ef776c, 0xd1347723, 0xd07976d9, 0xcfbe768e, 0xcf047642, 0xce4b75f4,
0xcd9275a6, 0xccd97556, 0xcc217505, 0xcb6974b3, 0xcab27460, 0xc9fc740b,
0xc94673b6, 0xc890735f, 0xc7db7308, 0xc72772af, 0xc6737255, 0xc5c071fa,
0xc50d719e, 0xc45b7141, 0xc3a970e3, 0xc2f87083, 0xc2487023, 0xc1986fc2,
0xc0e96f5f, 0xc03a6efb, 0xbf8c6e97, 0xbedf6e31, 0xbe326dca, 0xbd866d62,
0xbcda6cf9, 0xbc2f6c8f, 0xbb856c24, 0xbadc6bb8, 0xba336b4b, 0xb98b6add,
0xb8e36a6e, 0xb83c69fd, 0xb796698c, 0xb6f1691a, 0xb64c68a7, 0xb5a86832,
0xb50567bd, 0xb4626747, 0xb3c066d0, 0xb31f6657, 0xb27f65de, 0xb1df6564,
0xb14064e9, 0xb0a2646c, 0xb00563ef, 0xaf686371, 0xaecc62f2, 0xae316272,
0xad9761f1, 0xacfd616f, 0xac6560ec, 0xabcd6068, 0xab365fe4, 0xaaa05f5e,
0xaa0a5ed7, 0xa9765e50, 0xa8e25dc8, 0xa84f5d3e, 0xa7bd5cb4, 0xa72c5c29,
0xa69c5b9d, 0xa60c5b10, 0xa57e5a82, 0xa4f059f4, 0xa4635964, 0xa3d758d4,
0xa34c5843, 0xa2c257b1, 0xa238571e, 0xa1b0568a, 0xa12955f6, 0xa0a25560,
0xa01c54ca, 0x9f985433, 0x9f14539b, 0x9e915303, 0x9e0f5269, 0x9d8e51cf,
0x9d0e5134, 0x9c8f5098, 0x9c114ffb, 0x9b944f5e, 0x9b174ec0, 0x9a9c4e21,
0x9a224d81, 0x99a94ce1, 0x99304c40, 0x98b94b9e, 0x98434afb, 0x97ce4a58,
0x975949b4, 0x96e6490f, 0x9674486a, 0x960347c4, 0x9592471d, 0x95234675,
0x94b545cd, 0x94484524, 0x93dc447b, 0x937143d1, 0x93074326, 0x929e427a,
0x923641ce, 0x91cf4121, 0x91694074, 0x91053fc6, 0x90a13f17, 0x903e3e68,
0x8fdd3db8, 0x8f7d3d08, 0x8f1d3c57, 0x8ebf3ba5, 0x8e623af3, 0x8e063a40,
0x8dab398d, 0x8d5138d9, 0x8cf83825, 0x8ca13770, 0x8c4a36ba, 0x8bf53604,
0x8ba0354e, 0x8b4d3497, 0x8afb33df, 0x8aaa3327, 0x8a5a326e, 0x8a0c31b5,
0x89be30fc, 0x89723042, 0x89272f87, 0x88dd2ecc, 0x88942e11, 0x884c2d55,
0x88052c99, 0x87c02bdc, 0x877b2b1f, 0x87382a62, 0x86f629a4, 0x86b628e5,
0x86762827, 0x86372768, 0x85fa26a8, 0x85be25e8, 0x85832528, 0x85492467,
0x851123a7, 0x84d922e5, 0x84a32224, 0x846e2162, 0x843a209f, 0x84071fdd,
0x83d61f1a, 0x83a61e57, 0x83771d93, 0x83491cd0, 0x831c1c0c, 0x82f11b47,
0x82c61a83, 0x829d19be, 0x827618f9, 0x824f1833, 0x822a176e, 0x820516a8,
0x81e215e2, 0x81c1151c, 0x81a01455, 0x8181138f, 0x816312c8, 0x81461201,
0x812a113a, 0x81101073, 0x80f60fab, 0x80de0ee4, 0x80c80e1c, 0x80b20d54,
0x809e0c8c, 0x808b0bc4, 0x80790afb, 0x80680a33, 0x8059096b, 0x804b08a2,
0x803e07d9, 0x80320711, 0x80270648, 0x801e057f, 0x801604b6, 0x800f03ed,
0x800a0324, 0x8006025b, 0x80020192, 0x800100c9, 0x80000000, 0x8001ff37,
0x8002fe6e, 0x8006fda5, 0x800afcdc, 0x800ffc13, 0x8016fb4a, 0x801efa81,
0x8027f9b8, 0x8032f8ef, 0x803ef827, 0x804bf75e, 0x8059f695, 0x8068f5cd,
0x8079f505, 0x808bf43c, 0x809ef374, 0x80b2f2ac, 0x80c8f1e4, 0x80def11c,
0x80f6f055, 0x8110ef8d, 0x812aeec6, 0x8146edff, 0x8163ed38, 0x8181ec71,
0x81a0ebab, 0x81c1eae4, 0x81e2ea1e, 0x8205e958, 0x822ae892, 0x824fe7cd,
0x8276e707, 0x829de642, 0x82c6e57d, 0x82f1e4b9, 0x831ce3f4, 0x8349e330,
0x8377e26d, 0x83a6e1a9, 0x83d6e0e6, 0x8407e023, 0x843adf61, 0x846ede9e,
0x84a3dddc, 0x84d9dd1b, 0x8511dc59, 0x8549db99, 0x8583dad8, 0x85beda18,
0x85fad958, 0x8637d898, 0x8676d7d9, 0x86b6d71b, 0x86f6d65c, 0x8738d59e,
0x877bd4e1, 0x87c0d424, 0x8805d367, 0x884cd2ab, 0x8894d1ef, 0x88ddd134,
0x8927d079, 0x8972cfbe, 0x89becf04, 0x8a0cce4b, 0x8a5acd92, 0x8aaaccd9,
0x8afbcc21, 0x8b4dcb69, 0x8ba0cab2, 0x8bf5c9fc, 0x8c4ac946, 0x8ca1c890,
0x8cf8c7db, 0x8d51c727, 0x8dabc673, 0x8e06c5c0, 0x8e62c50d, 0x8ebfc45b,
0x8f1dc3a9, 0x8f7dc2f8, 0x8fddc248, 0x903ec198, 0x90a1c0e9, 0x9105c03a,
0x9169bf8c, 0x91cfbedf, 0x9236be32, 0x929ebd86, 0x9307bcda, 0x9371bc2f,
0x93dcbb85, 0x9448badc, 0x94b5ba33, 0x9523b98b, 0x9592b8e3, 0x9603b83c,
0x9674b796, 0x96e6b6f1, 0x9759b64c, 0x97ceb5a8, 0x9843b505, 0x98b9b462,
0x9930b3c0, 0x99a9b31f, 0x9a22b27f, 0x9a9cb1df, 0x9b17b140, 0x9b94b0a2,
0x9c11b005, 0x9c8faf68, 0x9d0eaecc, 0x9d8eae31, 0x9e0fad97, 0x9e91acfd,
0x9f14ac65, 0x9f98abcd, 0xa01cab36, 0xa0a2aaa0, 0xa129aa0a, 0xa1b0a976,
0xa238a8e2, 0xa2c2a84f, 0xa34ca7bd, 0xa3d7a72c, 0xa463a69c, 0xa4f0a60c,
0xa57ea57e, 0xa60ca4f0, 0xa69ca463, 0xa72ca3d7, 0xa7bda34c, 0xa84fa2c2,
0xa8e2a238, 0xa976a1b0, 0xaa0aa129, 0xaaa0a0a2, 0xab36a01c, 0xabcd9f98,
0xac659f14, 0xacfd9e91, 0xad979e0f, 0xae319d8e, 0xaecc9d0e, 0xaf689c8f,
0xb0059c11, 0xb0a29b94, 0xb1409b17, 0xb1df9a9c, 0xb27f9a22, 0xb31f99a9,
0xb3c09930, 0xb46298b9, 0xb5059843, 0xb5a897ce, 0xb64c9759, 0xb6f196e6,
0xb7969674, 0xb83c9603, 0xb8e39592, 0xb98b9523, 0xba3394b5, 0xbadc9448,
0xbb8593dc, 0xbc2f9371, 0xbcda9307, 0xbd86929e, 0xbe329236, 0xbedf91cf,
0xbf8c9169, 0xc03a9105, 0xc0e990a1, 0xc198903e, 0xc2488fdd, 0xc2f88f7d,
0xc3a98f1d, 0xc45b8ebf, 0xc50d8e62, 0xc5c08e06, 0xc6738dab, 0xc7278d51,
0xc7db8cf8, 0xc8908ca1, 0xc9468c4a, 0xc9fc8bf5, 0xcab28ba0, 0xcb698b4d,
0xcc218afb, 0xccd98aaa, 0xcd928a5a, 0xce4b8a0c, 0xcf0489be, 0xcfbe8972,
0xd0798927, 0xd13488dd, 0xd1ef8894, 0xd2ab884c, 0xd3678805, 0xd42487c0,
0xd4e1877b, 0xd59e8738, 0xd65c86f6, 0xd71b86b6, 0xd7d98676, 0xd8988637,
0xd95885fa, 0xda1885be, 0xdad88583, 0xdb998549, 0xdc598511, 0xdd1b84d9,
0xdddc84a3, 0xde9e846e, 0xdf61843a, 0xe0238407, 0xe0e683d6, 0xe1a983a6,
0xe26d8377, 0xe3308349, 0xe3f4831c, 0xe4b982f1, 0xe57d82c6, 0xe642829d,
0xe7078276, 0xe7cd824f, 0xe892822a, 0xe9588205, 0xea1e81e2, 0xeae481c1,
0xebab81a0, 0xec718181, 0xed388163, 0xedff8146, 0xeec6812a, 0xef8d8110,
0xf05580f6, 0xf11c80de, 0xf1e480c8, 0xf2ac80b2, 0xf374809e, 0xf43c808b,
0xf5058079, 0xf5cd8068, 0xf6958059, 0xf75e804b, 0xf827803e, 0xf8ef8032,
0xf9b88027, 0xfa81801e, 0xfb4a8016, 0xfc13800f, 0xfcdc800a, 0xfda58006,
0xfe6e8002, 0xff378001, 0x00008000, 0x00c98001, 0x01928002, 0x025b8006,
0x0324800a, 0x03ed800f, 0x04b68016, 0x057f801e, 0x06488027, 0x07118032,
0x07d9803e, 0x08a2804b, 0x096b8059, 0x0a338068, 0x0afb8079, 0x0bc4808b,
0x0c8c809e, 0x0d5480b2, 0x0e1c80c8, 0x0ee480de, 0x0fab80f6, 0x10738110,
0x113a812a, 0x12018146, 0x12c88163, 0x138f8181, 0x145581a0, 0x151c81c1,
0x15e281e2, 0x16a88205, 0x176e822a, 0x1833824f, 0x18f98276, 0x19be829d,
0x1a8382c6, 0x1b4782f1, 0x1c0c831c, 0x1cd08349, 0x1d938377, 0x1e5783a6,
0x1f1a83d6, 0x1fdd8407, 0x209f843a, 0x2162846e, 0x222484a3, 0x22e584d9,
0x23a78511, 0x24678549, 0x25288583, 0x25e885be, 0x26a885fa, 0x27688637,
0x28278676, 0x28e586b6, 0x29a486f6, 0x2a628738, 0x2b1f877b, 0x2bdc87c0,
0x2c998805, 0x2d55884c, 0x2e118894, 0x2ecc88dd, 0x2f878927, 0x30428972,
0x30fc89be, 0x31b58a0c, 0x326e8a5a, 0x33278aaa, 0x33df8afb, 0x34978b4d,
0x354e8ba0, 0x36048bf5, 0x36ba8c4a, 0x37708ca1, 0x38258cf8, 0x38d98d51,
0x398d8dab, 0x3a408e06, 0x3af38e62, 0x3ba58ebf, 0x3c578f1d, 0x3d088f7d,
0x3db88fdd, 0x3e68903e, 0x3f1790a1, 0x3fc69105, 0x40749169, 0x412191cf,
0x41ce9236, 0x427a929e, 0x43269307, 0x43d19371, 0x447b93dc, 0x45249448,
0x45cd94b5, 0x46759523, 0x471d9592, 0x47c49603, 0x486a9674, 0x490f96e6,
0x49b49759, 0x4a5897ce, 0x4afb9843, 0x4b9e98b9, 0x4c409930, 0x4ce199a9,
0x4d819a22, 0x4e219a9c, 0x4ec09b17, 0x4f5e9b94, 0x4ffb9c11, 0x50989c8f,
0x51349d0e, 0x51cf9d8e, 0x52699e0f, 0x53039e91, 0x539b9f14, 0x54339f98,
0x54caa01c, 0x5560a0a2, 0x55f6a129, 0x568aa1b0, 0x571ea238, 0x57b1a2c2,
0x5843a34c, 0x58d4a3d7, 0x5964a463, 0x59f4a4f0, 0x5a82a57e, 0x5b10a60c,
0x5b9da69c, 0x5c29a72c, 0x5cb4a7bd, 0x5d3ea84f, 0x5dc8a8e2, 0x5e50a976,
0x5ed7aa0a, 0x5f5eaaa0, 0x5fe4ab36, 0x6068abcd, 0x60ecac65, 0x616facfd,
0x61f1ad97, 0x6272ae31, 0x62f2aecc, 0x6371af68, 0x63efb005, 0x646cb0a2,
0x64e9b140, 0x6564b1df, 0x65deb27f, 0x6657b31f, 0x66d0b3c0, 0x6747b462,
0x67bdb505, 0x6832b5a8, 0x68a7b64c, 0x691ab6f1, 0x698cb796, 0x69fdb83c,
0x6a6eb8e3, 0x6addb98b, 0x6b4bba33, 0x6bb8badc, 0x6c24bb85, 0x6c8fbc2f,
0x6cf9bcda, 0x6d62bd86, 0x6dcabe32, 0x6e31bedf, 0x6e97bf8c, 0x6efbc03a,
0x6f5fc0e9, 0x6fc2c198, 0x7023c248, 0x7083c2f8, 0x70e3c3a9, 0x7141c45b,
0x719ec50d, 0x71fac5c0, 0x7255c673, 0x72afc727, 0x7308c7db, 0x735fc890,
0x73b6c946, 0x740bc9fc, 0x7460cab2, 0x74b3cb69, 0x7505cc21, 0x7556ccd9,
0x75a6cd92, 0x75f4ce4b, 0x7642cf04, 0x768ecfbe, 0x76d9d079, 0x7723d134,
0x776cd1ef, 0x77b4d2ab, 0x77fbd367, 0x7840d424, 0x7885d4e1, 0x78c8d59e,
0x790ad65c, 0x794ad71b, 0x798ad7d9, 0x79c9d898, 0x7a06d958, 0x7a42da18,
0x7a7ddad8, 0x7ab7db99, 0x7aefdc59, 0x7b27dd1b, 0x7b5ddddc, 0x7b92de9e,
0x7bc6df61, 0x7bf9e023, 0x7c2ae0e6, 0x7c5ae1a9, 0x7c89e26d, 0x7cb7e330,
0x7ce4e3f4, 0x7d0fe4b9, 0x7d3ae57d, 0x7d63e642, 0x7d8ae707, 0x7db1e7cd,
0x7dd6e892, 0x7dfbe958, 0x7e1eea1e, 0x7e3feae4, 0x7e60ebab, 0x7e7fec71,
0x7e9ded38, 0x7ebaedff, 0x7ed6eec6, 0x7ef0ef8d, 0x7f0af055, 0x7f22f11c,
0x7f38f1e4, 0x7f4ef2ac, 0x7f62f374, 0x7f75f43c, 0x7f87f505, 0x7f98f5cd,
0x7fa7f695, 0x7fb5f75e, 0x7fc2f827, 0x7fcef8ef, 0x7fd9f9b8, 0x7fe2fa81,
0x7feafb4a, 0x7ff1fc13, 0x7ff6fcdc, 0x7ffafda5, 0x7ffefe6e, 0x7fffff37,
},
// WORD32 esbr_qmf_c[1280] =
{0, -1186546, -1206390, -1062471, -1046947, -1050933,
-1082485, -1122396, -1173936, -1219298, -1260772, -1316997,
-1355597, -1404525, -1455498, -1490700, -1537112, -1558008,
-1597930, -1608593, -1649562, -1658898, -1682410, -1670714,
-1675824, -1675348, -1666012, -1638700, -1617055, -1571819,
-1549493, -1485615, -1428165, -1361847, -1276919, -1194983,
-1105003, -989200, -879420, -751871, -622121, -450614,
-310607, -132571, 28980, 235016, 438734, 633406,
864692, 1096803, 1339895, 1601598, 1848649, 2122999,
2415952, 2701080, 2985538, 3316406, 3622393, 3940259,
4260852, 4608839, 4942917, 5288310, 5626784, 5985136,
6328515, 6684133, 7030778, 7391396, 7732716, 8075380,
8419731, 8765975, 9076182, 9391100, 9708741, 10008661,
10293439, 10552220, 10821819, 11039645, 11265949, 11482956,
11638669, 11784539, 11913318, 12012598, 12073291, 12123661,
12109488, 12083056, 12008111, 11897996, 11758285, 11561832,
11320622, 11034259, 10702991, 10331429, 9886913, 9406378,
8858722, 8258450, 7602359, 6891679, 6108894, 5263168,
4353846, 3389734, 2341257, 1252469, 59280, -1173445,
-2484238, -3873947, -5331498, -6857726, -8461326, -10140975,
-11883575, -13699290, -15594127, -17566036, -19611965, -21721843,
-23904831, -26167087, 28501020, 30903291, 33373088, 35932708,
38533025, 41204290, 43922868, 46700800, 49538189, 52433173,
55378416, 58381367, 61433531, 64532454, 67649516, 70814149,
74006785, 77244462, 80490446, 83763389, 87048071, 90333705,
93651234, 96956396, 100253776, 103544299, 106812777, 110070596,
113307839, 116490844, 119652129, 122753697, 125824434, 128814117,
131738494, 134616689, 137377942, 140068999, 142671836, 145186212,
147541538, 149814954, 151962108, 153975151, 155839148, 157543750,
159129320, 160514214, 161735011, 162781055, 163636638, 164280817,
164732072, 164964105, 164976138, 164756002, 164293390, 163584206,
162630172, 161399771, 159915461, 158141985, 156073666, 153722541,
151082577, 148104219, 144853145, 141237995, 137319726, 133058683,
128455292, 123513100, 118210392, 112548291, 106510609, 100137872,
93365884, 86212508, 78687691, 70777610, 62453979, 53753139,
44667031, 35154577, 25259525, 14954402, 4244630, -6890608,
-18406457, -30341544, -42699304, -55453887, -68618818, -82200642,
-96165782, -110553355, -125349764, -140533445, -156109885, -172093527,
-188451898, -205199224, -222335323, -239836757, -257714784, -275952260,
-294538497, -313482466, -332775584, -352393230, -372332469, -392597065,
-413168712, -434060170, -455209808, -476666786, -498364569, -520338913,
-542557514, -565014393, -587687684, -610575597, -633661589, -656936416,
-680382715, -703969562, -727722656, -751600834, 775583025, 799679004,
823849891, 848086767, 872376077, 896724080, 921081488, 945441219,
969802871, 994136341, 1018434072, 1042657661, 1066807223, 1090882501,
1114809220, 1138647561, 1162337001, 1185851477, 1209202759, 1232338673,
1255290785, 1277993950, 1300469611, 1322658785, 1344591629, 1366224824,
1387547101, 1408538024, 1429180406, 1449479132, 1469384180, 1488911052,
1508046493, 1526734263, 1544999085, 1562820250, 1580163942, 1597046622,
1613433982, 1629313186, 1644687903, 1659528307, 1673810498, 1687568481,
1700750320, 1713362615, 1725392676, 1736819276, 1747663266, 1757882010,
1767469212, 1776457603, 1784781917, 1792491148, 1799530594, 1805935261,
1811668375, 1816732182, 1821133945, 1824889769, 1827931965, 1830310413,
1832022798, 1833032034, 1833389596, 1833032034, 1832022798, 1830310413,
1827931965, 1824889769, 1821133945, 1816732182, 1811668375, 1805935261,
1799530594, 1792491148, 1784781917, 1776457603, 1767469212, 1757882010,
1747663266, 1736819276, 1725392676, 1713362615, 1700750320, 1687568481,
1673810498, 1659528307, 1644687903, 1629313186, 1613433982, 1597046622,
1580163942, 1562820250, 1544999085, 1526734263, 1508046493, 1488911052,
1469384180, 1449479132, 1429180406, 1408538024, 1387547101, 1366224824,
1344591629, 1322658785, 1300469611, 1277993950, 1255290785, 1232338673,
1209202759, 1185851477, 1162337001, 1138647561, 1114809220, 1090882501,
1066807223, 1042657661, 1018434072, 994136341, 969802871, 945441219,
921081488, 896724080, 872376077, 848086767, 823849891, 799679004,
-775583025, -751600834, -727722656, -703969562, -680382715, -656936416,
-633661589, -610575597, -587687684, -565014393, -542557514, -520338913,
-498364569, -476666786, -455209808, -434060170, -413168712, -392597065,
-372332469, -352393230, -332775584, -313482466, -294538497, -275952260,
-257714784, -239836757, -222335323, -205199224, -188451898, -172093527,
-156109885, -140533445, -125349764, -110553355, -96165782, -82200642,
-68618818, -55453887, -42699304, -30341544, -18406457, -6890608,
4244630, 14954402, 25259525, 35154577, 44667031, 53753139,
62453979, 70777610, 78687691, 86212508, 93365884, 100137872,
106510609, 112548291, 118210392, 123513100, 128455292, 133058683,
137319726, 141237995, 144853145, 148104219, 151082577, 153722541,
156073666, 158141985, 159915461, 161399771, 162630172, 163584206,
164293390, 164756002, 164976138, 164964105, 164732072, 164280817,
163636638, 162781055, 161735011, 160514214, 159129320, 157543750,
155839148, 153975151, 151962108, 149814954, 147541538, 145186212,
142671836, 140068999, 137377942, 134616689, 131738494, 128814117,
125824434, 122753697, 119652129, 116490844, 113307839, 110070596,
106812777, 103544299, 100253776, 96956396, 93651234, 90333705,
87048071, 83763389, 80490446, 77244462, 74006785, 70814149,
67649516, 64532454, 61433531, 58381367, 55378416, 52433173,
49538189, 46700800, 43922868, 41204290, 38533025, 35932708,
33373088, 30903291, -28501020, -26167087, -23904831, -21721843,
-19611965, -17566036, -15594127, -13699290, -11883575, -10140975,
-8461326, -6857726, -5331498, -3873947, -2484238, -1173445,
59280, 1252469, 2341257, 3389734, 4353846, 5263168,
6108894, 6891679, 7602359, 8258450, 8858722, 9406378,
9886913, 10331429, 10702991, 11034259, 11320622, 11561832,
11758285, 11897996, 12008111, 12083056, 12109488, 12123661,
12073291, 12012598, 11913318, 11784539, 11638669, 11482956,
11265949, 11039645, 10821819, 10552220, 10293439, 10008661,
9708741, 9391100, 9076182, 8765975, 8419731, 8075380,
7732716, 7391396, 7030778, 6684133, 6328515, 5985136,
5626784, 5288310, 4942917, 4608839, 4260852, 3940259,
3622393, 3316406, 2985538, 2701080, 2415952, 2122999,
1848649, 1601598, 1339895, 1096803, 864692, 633406,
438734, 235016, 28980, -132571, -310607, -450614,
-622121, -751871, -879420, -989200, -1105003, -1194983,
-1276919, -1361847, -1428165, -1485615, -1549493, -1571819,
-1617055, -1638700, -1666012, -1675348, -1675824, -1670714,
-1682410, -1658898, -1649562, -1608593, -1597930, -1558008,
-1537112, -1490700, -1455498, -1404525, -1355597, -1316997,
-1260772, -1219298, -1173936, -1122396, -1082485, -1050933,
-1046947, -1062471, -1206390, -1186546,
0, -1186546, -1206390, -1062471, -1046947, -1050933,
-1082485, -1122396, -1173936, -1219298, -1260772, -1316997,
-1355597, -1404525, -1455498, -1490700, -1537112, -1558008,
-1597930, -1608593, -1649562, -1658898, -1682410, -1670714,
-1675824, -1675348, -1666012, -1638700, -1617055, -1571819,
-1549493, -1485615, -1428165, -1361847, -1276919, -1194983,
-1105003, -989200, -879420, -751871, -622121, -450614,
-310607, -132571, 28980, 235016, 438734, 633406,
864692, 1096803, 1339895, 1601598, 1848649, 2122999,
2415952, 2701080, 2985538, 3316406, 3622393, 3940259,
4260852, 4608839, 4942917, 5288310, 5626784, 5985136,
6328515, 6684133, 7030778, 7391396, 7732716, 8075380,
8419731, 8765975, 9076182, 9391100, 9708741, 10008661,
10293439, 10552220, 10821819, 11039645, 11265949, 11482956,
11638669, 11784539, 11913318, 12012598, 12073291, 12123661,
12109488, 12083056, 12008111, 11897996, 11758285, 11561832,
11320622, 11034259, 10702991, 10331429, 9886913, 9406378,
8858722, 8258450, 7602359, 6891679, 6108894, 5263168,
4353846, 3389734, 2341257, 1252469, 59280, -1173445,
-2484238, -3873947, -5331498, -6857726, -8461326, -10140975,
-11883575, -13699290, -15594127, -17566036, -19611965, -21721843,
-23904831, -26167087, 28501020, 30903291, 33373088, 35932708,
38533025, 41204290, 43922868, 46700800, 49538189, 52433173,
55378416, 58381367, 61433531, 64532454, 67649516, 70814149,
74006785, 77244462, 80490446, 83763389, 87048071, 90333705,
93651234, 96956396, 100253776, 103544299, 106812777, 110070596,
113307839, 116490844, 119652129, 122753697, 125824434, 128814117,
131738494, 134616689, 137377942, 140068999, 142671836, 145186212,
147541538, 149814954, 151962108, 153975151, 155839148, 157543750,
159129320, 160514214, 161735011, 162781055, 163636638, 164280817,
164732072, 164964105, 164976138, 164756002, 164293390, 163584206,
162630172, 161399771, 159915461, 158141985, 156073666, 153722541,
151082577, 148104219, 144853145, 141237995, 137319726, 133058683,
128455292, 123513100, 118210392, 112548291, 106510609, 100137872,
93365884, 86212508, 78687691, 70777610, 62453979, 53753139,
44667031, 35154577, 25259525, 14954402, 4244630, -6890608,
-18406457, -30341544, -42699304, -55453887, -68618818, -82200642,
-96165782, -110553355, -125349764, -140533445, -156109885, -172093527,
-188451898, -205199224, -222335323, -239836757, -257714784, -275952260,
-294538497, -313482466, -332775584, -352393230, -372332469, -392597065,
-413168712, -434060170, -455209808, -476666786, -498364569, -520338913,
-542557514, -565014393, -587687684, -610575597, -633661589, -656936416,
-680382715, -703969562, -727722656, -751600834, 775583025, 799679004,
823849891, 848086767, 872376077, 896724080, 921081488, 945441219,
969802871, 994136341, 1018434072, 1042657661, 1066807223, 1090882501,
1114809220, 1138647561, 1162337001, 1185851477, 1209202759, 1232338673,
1255290785, 1277993950, 1300469611, 1322658785, 1344591629, 1366224824,
1387547101, 1408538024, 1429180406, 1449479132, 1469384180, 1488911052,
1508046493, 1526734263, 1544999085, 1562820250, 1580163942, 1597046622,
1613433982, 1629313186, 1644687903, 1659528307, 1673810498, 1687568481,
1700750320, 1713362615, 1725392676, 1736819276, 1747663266, 1757882010,
1767469212, 1776457603, 1784781917, 1792491148, 1799530594, 1805935261,
1811668375, 1816732182, 1821133945, 1824889769, 1827931965, 1830310413,
1832022798, 1833032034, 1833389596, 1833032034, 1832022798, 1830310413,
1827931965, 1824889769, 1821133945, 1816732182, 1811668375, 1805935261,
1799530594, 1792491148, 1784781917, 1776457603, 1767469212, 1757882010,
1747663266, 1736819276, 1725392676, 1713362615, 1700750320, 1687568481,
1673810498, 1659528307, 1644687903, 1629313186, 1613433982, 1597046622,
1580163942, 1562820250, 1544999085, 1526734263, 1508046493, 1488911052,
1469384180, 1449479132, 1429180406, 1408538024, 1387547101, 1366224824,
1344591629, 1322658785, 1300469611, 1277993950, 1255290785, 1232338673,
1209202759, 1185851477, 1162337001, 1138647561, 1114809220, 1090882501,
1066807223, 1042657661, 1018434072, 994136341, 969802871, 945441219,
921081488, 896724080, 872376077, 848086767, 823849891, 799679004,
-775583025, -751600834, -727722656, -703969562, -680382715, -656936416,
-633661589, -610575597, -587687684, -565014393, -542557514, -520338913,
-498364569, -476666786, -455209808, -434060170, -413168712, -392597065,
-372332469, -352393230, -332775584, -313482466, -294538497, -275952260,
-257714784, -239836757, -222335323, -205199224, -188451898, -172093527,
-156109885, -140533445, -125349764, -110553355, -96165782, -82200642,
-68618818, -55453887, -42699304, -30341544, -18406457, -6890608,
4244630, 14954402, 25259525, 35154577, 44667031, 53753139,
62453979, 70777610, 78687691, 86212508, 93365884, 100137872,
106510609, 112548291, 118210392, 123513100, 128455292, 133058683,
137319726, 141237995, 144853145, 148104219, 151082577, 153722541,
156073666, 158141985, 159915461, 161399771, 162630172, 163584206,
164293390, 164756002, 164976138, 164964105, 164732072, 164280817,
163636638, 162781055, 161735011, 160514214, 159129320, 157543750,
155839148, 153975151, 151962108, 149814954, 147541538, 145186212,
142671836, 140068999, 137377942, 134616689, 131738494, 128814117,
125824434, 122753697, 119652129, 116490844, 113307839, 110070596,
106812777, 103544299, 100253776, 96956396, 93651234, 90333705,
87048071, 83763389, 80490446, 77244462, 74006785, 70814149,
67649516, 64532454, 61433531, 58381367, 55378416, 52433173,
49538189, 46700800, 43922868, 41204290, 38533025, 35932708,
33373088, 30903291, -28501020, -26167087, -23904831, -21721843,
-19611965, -17566036, -15594127, -13699290, -11883575, -10140975,
-8461326, -6857726, -5331498, -3873947, -2484238, -1173445,
59280, 1252469, 2341257, 3389734, 4353846, 5263168,
6108894, 6891679, 7602359, 8258450, 8858722, 9406378,
9886913, 10331429, 10702991, 11034259, 11320622, 11561832,
11758285, 11897996, 12008111, 12083056, 12109488, 12123661,
12073291, 12012598, 11913318, 11784539, 11638669, 11482956,
11265949, 11039645, 10821819, 10552220, 10293439, 10008661,
9708741, 9391100, 9076182, 8765975, 8419731, 8075380,
7732716, 7391396, 7030778, 6684133, 6328515, 5985136,
5626784, 5288310, 4942917, 4608839, 4260852, 3940259,
3622393, 3316406, 2985538, 2701080, 2415952, 2122999,
1848649, 1601598, 1339895, 1096803, 864692, 633406,
438734, 235016, 28980, -132571, -310607, -450614,
-622121, -751871, -879420, -989200, -1105003, -1194983,
-1276919, -1361847, -1428165, -1485615, -1549493, -1571819,
-1617055, -1638700, -1666012, -1675348, -1675824, -1670714,
-1682410, -1658898, -1649562, -1608593, -1597930, -1558008,
-1537112, -1490700, -1455498, -1404525, -1355597, -1316997,
-1260772, -1219298, -1173936, -1122396, -1082485, -1050933,
-1046947, -1062471, -1206390, -1186546},
// WORD32 esbr_qmf_c_24[480] =
{0, -1110444, -1061450, -1173936, -1298255, -1421516,
-1537112, -1605039, -1666735, -1675824, -1647804, -1564377,
-1428165, -1222295, -952607, -622121, -191917, 302922,
864692, 1514364, 2220650, 2985538, 3834304, 4720199,
5626784, 6565594, 7505170, 8419731, 9286127, 10103587,
10821819, 11410620, 11827466, 12073291, 12091866, 11851426,
11320622, 10455283, 9223826, 7602359, 5545077, 3040242,
59280, -3410710, -7392260, -11883575, -16908733, -22449506,
28501020, 35079501, 42110483, 49538189, 57380384, 65571474,
74006785, 82672408, 91439548, 100253776, 108984656, 117544606,
125824434, 133657291, 140936611, 147541538, 153304137, 158072273,
161735011, 164066091, 164968116, 164293390, 161809905, 157452545,
151082577, 142443045, 131524220, 118210392, 102262118, 83704236,
62453979, 38325395, 11384478, -18406457, -51202360, -86855689,
-125349764, -166765646, -210911257, -257714784, -307167810, -359039643,
-413168712, -469514460, -527745114, -587687684, -649178140, -711887260,
775583025, 840007809, 904843216, 969802871, 1034583131, 1098858074,
1162337001, 1224626701, 1285485837, 1344591629, 1401541050, 1456114148,
1508046493, 1556879862, 1602509075, 1644687903, 1682982487, 1717372635,
1747663266, 1773461472, 1794837630, 1811668375, 1823637828, 1830881208,
1833389596, 1830881208, 1823637828, 1811668375, 1794837630, 1773461472,
1747663266, 1717372635, 1682982487, 1644687903, 1602509075, 1556879862,
1508046493, 1456114148, 1401541050, 1344591629, 1285485837, 1224626701,
1162337001, 1098858074, 1034583131, 969802871, 904843216, 840007809,
-775583025, -711887260, -649178140, -587687684, -527745114, -469514460,
-413168712, -359039643, -307167810, -257714784, -210911257, -166765646,
-125349764, -86855689, -51202360, -18406457, 11384478, 38325395,
62453979, 83704236, 102262118, 118210392, 131524220, 142443045,
151082577, 157452545, 161809905, 164293390, 164968116, 164066091,
161735011, 158072273, 153304137, 147541538, 140936611, 133657291,
125824434, 117544606, 108984656, 100253776, 91439548, 82672408,
74006785, 65571474, 57380384, 49538189, 42110483, 35079501,
-28501020, -22449506, -16908733, -11883575, -7392260, -3410710,
59280, 3040242, 5545077, 7602359, 9223826, 10455283,
11320622, 11851426, 12091866, 12073291, 11827466, 11410620,
10821819, 10103587, 9286127, 8419731, 7505170, 6565594,
5626784, 4720199, 3834304, 2985538, 2220650, 1514364,
864692, 302922, -191917, -622121, -952607, -1222295,
-1428165, -1564377, -1647804, -1675824, -1666735, -1605039,
-1537112, -1421516, -1298255, -1173936, -1061450, -1110444,
0, -1110444, -1061450, -1173936, -1298255, -1421516,
-1537112, -1605039, -1666735, -1675824, -1647804, -1564377,
-1428165, -1222295, -952607, -622121, -191917, 302922,
864692, 1514364, 2220650, 2985538, 3834304, 4720199,
5626784, 6565594, 7505170, 8419731, 9286127, 10103587,
10821819, 11410620, 11827466, 12073291, 12091866, 11851426,
11320622, 10455283, 9223826, 7602359, 5545077, 3040242,
59280, -3410710, -7392260, -11883575, -16908733, -22449506,
28501020, 35079501, 42110483, 49538189, 57380384, 65571474,
74006785, 82672408, 91439548, 100253776, 108984656, 117544606,
125824434, 133657291, 140936611, 147541538, 153304137, 158072273,
161735011, 164066091, 164968116, 164293390, 161809905, 157452545,
151082577, 142443045, 131524220, 118210392, 102262118, 83704236,
62453979, 38325395, 11384478, -18406457, -51202360, -86855689,
-125349764, -166765646, -210911257, -257714784, -307167810, -359039643,
-413168712, -469514460, -527745114, -587687684, -649178140, -711887260,
775583025, 840007809, 904843216, 969802871, 1034583131, 1098858074,
1162337001, 1224626701, 1285485837, 1344591629, 1401541050, 1456114148,
1508046493, 1556879862, 1602509075, 1644687903, 1682982487, 1717372635,
1747663266, 1773461472, 1794837630, 1811668375, 1823637828, 1830881208,
1833389596, 1830881208, 1823637828, 1811668375, 1794837630, 1773461472,
1747663266, 1717372635, 1682982487, 1644687903, 1602509075, 1556879862,
1508046493, 1456114148, 1401541050, 1344591629, 1285485837, 1224626701,
1162337001, 1098858074, 1034583131, 969802871, 904843216, 840007809,
-775583025, -711887260, -649178140, -587687684, -527745114, -469514460,
-413168712, -359039643, -307167810, -257714784, -210911257, -166765646,
-125349764, -86855689, -51202360, -18406457, 11384478, 38325395,
62453979, 83704236, 102262118, 118210392, 131524220, 142443045,
151082577, 157452545, 161809905, 164293390, 164968116, 164066091,
161735011, 158072273, 153304137, 147541538, 140936611, 133657291,
125824434, 117544606, 108984656, 100253776, 91439548, 82672408,
74006785, 65571474, 57380384, 49538189, 42110483, 35079501,
-28501020, -22449506, -16908733, -11883575, -7392260, -3410710,
59280, 3040242, 5545077, 7602359, 9223826, 10455283,
11320622, 11851426, 12091866, 12073291, 11827466, 11410620,
10821819, 10103587, 9286127, 8419731, 7505170, 6565594,
5626784, 4720199, 3834304, 2985538, 2220650, 1514364,
864692, 302922, -191917, -622121, -952607, -1222295,
-1428165, -1564377, -1647804, -1675824, -1666735, -1605039,
-1537112, -1421516, -1298255, -1173936, -1061450, -1110444},
// const WORD32 esbr_w_32[2 * 30] =
{0, 2147483647, 0, 2147483647, 0, 2147483647,
418953276, 2106220350, 821806413, 1984016188, 1193077990, 1785567395,
821806413, 1984016188, 1518500249, 1518500249, 1984016188, 821806413,
1193077990, 1785567395, 1984016188, 821806413, 2106220350, -418953276,
1518500249, 1518500249, 2147483647, 0, 1518500249, -1518500249,
1785567395, 1193077990, 1984016188, -821806413, 418953276, -2106220350,
1984016188, 821806413, 1518500249, -1518500249, -821806413, -1984016188,
2106220350, 418953276, 821806413, -1984016188, -1785567395, -1193077990,
0, 2147483647, 0, 2147483647, 0, 2147483647,
1518500249, 1518500249, 2147483647, 0, 1518500249, -1518500249},
// const WORD32 esbr_w_16[2 * 12] =
{0, 2147483647, 0, 2147483647, 0, 2147483647,
821806413, 1984016188, 1518500249, 1518500249, 1984016188, 821806413,
1518500249, 1518500249, 2147483647, 0, 1518500249, -1518500249,
1984016188, 821806413, 1518500249, -1518500249, -821806413, -1984016188},
// WORD32 ixheaacd_esbr_sin_cos_twiddle_l64[64] =
{(WORD32)0x1921d1f, (WORD32)0x7ffd8859, (WORD32)0x7fe9cbbe,
(WORD32)0x4b6195d, (WORD32)0x7d95b9e, (WORD32)0x7fc25595,
(WORD32)0x7f872bf1, (WORD32)0xafb6805, (WORD32)0xe1bc2e3,
(WORD32)0x7f3857f4, (WORD32)0x7ed5e5c5, (WORD32)0x1139f0ce,
(WORD32)0x145576b1, (WORD32)0x7e5fe492, (WORD32)0x7dd6668d,
(WORD32)0x176dd9de, (WORD32)0x1a82a025, (WORD32)0x7d3980eb,
(WORD32)0x7c894bdc, (WORD32)0x1d934fe5, (WORD32)0x209f701c,
(WORD32)0x7bc5e28e, (WORD32)0x7aef6322, (WORD32)0x23a6887e,
(WORD32)0x26a82185, (WORD32)0x7a05eeac, (WORD32)0x7909a92b,
(WORD32)0x29a3c484, (WORD32)0x2c98fbba, (WORD32)0x77fab987,
(WORD32)0x76d94987, (WORD32)0x2f875261, (WORD32)0x326e54c7,
(WORD32)0x75a585ce, (WORD32)0x745f9dd0, (WORD32)0x354d9056,
(WORD32)0x382493af, (WORD32)0x7307c3cf, (WORD32)0x719e2cd1,
(WORD32)0x3af2eeb6, (WORD32)0x3db832a5, (WORD32)0x70231098,
(WORD32)0x6e96a99b, (WORD32)0x4073f21c, (WORD32)0x4325c134,
(WORD32)0x6cf934fa, (WORD32)0x6b4af277, (WORD32)0x45cd358e,
(WORD32)0x4869e664, (WORD32)0x698c246b, (WORD32)0x67bd0fbb,
(WORD32)0x4afb6c97, (WORD32)0x4d8162c3, (WORD32)0x65ddfbd2,
(WORD32)0x63ef328e, (WORD32)0x4ffb654c, (WORD32)0x5269126d,
(WORD32)0x61f1003e, (WORD32)0x5fe3b38c, (WORD32)0x54ca0a49,
(WORD32)0x571deef8, (WORD32)0x5dc79d7b, (WORD32)0x5b9d1152,
(WORD32)0x59646497},
// WORD32 ixheaacd_esbr_alt_sin_twiddle_l64[32]=
{
(WORD32)0x647d97c, (WORD32)0x7fd8878c, (WORD32)0xc8bd35d,
(WORD32)0x7f62368e, (WORD32)0x12c8106e, (WORD32)0x7e9d55fb,
(WORD32)0x18f8b83c, (WORD32)0x7d8a5f3e, (WORD32)0x1f19f97a,
(WORD32)0x7c29fbed, (WORD32)0x25280c5d, (WORD32)0x7a7d055a,
(WORD32)0x2b1f34eb, (WORD32)0x78848412, (WORD32)0x30fbc54c,
(WORD32)0x7641af3b, (WORD32)0x36ba2013, (WORD32)0x73b5ebd0,
(WORD32)0x3c56ba6f, (WORD32)0x70e2cbc5, (WORD32)0x41ce1e64,
(WORD32)0x6dca0d13, (WORD32)0x471cece6, (WORD32)0x6a6d98a3,
(WORD32)0x4c3fdff2, (WORD32)0x66cf811f, (WORD32)0x5133cc93,
(WORD32)0x62f201ab, (WORD32)0x55f5a4d1, (WORD32)0x5ed77c88,
(WORD32)0x5a827999, (WORD32)0x5a827999,
},
// const WORD32 ixheaacd_esbr_sin_cos_twiddle_l32[32] =
{(WORD32)0x3242abf, (WORD32)0x7ff62181, (WORD32)0x7fa736b3,
(WORD32)0x96a9049, (WORD32)0xfab272b, (WORD32)0x7f0991c3,
(WORD32)0x7e1d93e9, (WORD32)0x15e21444, (WORD32)0x1c0b826a,
(WORD32)0x7ce3ceb1, (WORD32)0x7b5d039d, (WORD32)0x2223a4c5,
(WORD32)0x2826b928, (WORD32)0x798a23b0, (WORD32)0x776c4eda,
(WORD32)0x2e110a62, (WORD32)0x33def287, (WORD32)0x7504d344,
(WORD32)0x72552c84, (WORD32)0x398cdd32, (WORD32)0x3f1749b7,
(WORD32)0x6f5f02b1, (WORD32)0x6c24295f, (WORD32)0x447acd50,
(WORD32)0x49b41533, (WORD32)0x68a69e80, (WORD32)0x64e88925,
(WORD32)0x4ebfe8a4, (WORD32)0x539b2aef, (WORD32)0x60ec382f,
(WORD32)0x5cb420df, (WORD32)0x5842dd54},
// const WORD32 ixheaacd_esbr_alt_sin_twiddle_l32[16] =
{(WORD32)0xc8bd35e, (WORD32)0x7f62368e, (WORD32)0x18f8b83c,
(WORD32)0x7d8a5f3f, (WORD32)0x25280c5d, (WORD32)0x7a7d055a,
(WORD32)0x30fbc54d, (WORD32)0x7641af3c, (WORD32)0x3c56ba70,
(WORD32)0x70e2cbc5, (WORD32)0x471cece6, (WORD32)0x6a6d98a3,
(WORD32)0x5133cc94, (WORD32)0x62f201ac, (WORD32)0x5a827999,
(WORD32)0x5a827999},
// const WORD32 ixheaacd_esbr_t_cos_sin_l32[32+32] = //exp[-i * pi/32* 3/4 *
// (k
// +0.5)]
{(WORD32)0x7fe9cbbe, (WORD32)0x4b6195d, (WORD32)0x7f3857f4,
(WORD32)0xe1bc2e3, (WORD32)0x7dd6668d, (WORD32)0x176dd9de,
(WORD32)0x7bc5e28e, (WORD32)0x209f701c, (WORD32)0x7909a92b,
(WORD32)0x29a3c484, (WORD32)0x75a585ce, (WORD32)0x326e54c7,
(WORD32)0x719e2cd1, (WORD32)0x3af2eeb6, (WORD32)0x6cf934fa,
(WORD32)0x4325c134, (WORD32)0x67bd0fbb, (WORD32)0x4afb6c97,
(WORD32)0x61f1003e, (WORD32)0x5269126d, (WORD32)0x5b9d1152,
(WORD32)0x59646497, (WORD32)0x54ca0a49, (WORD32)0x5fe3b38c,
(WORD32)0x4d8162c3, (WORD32)0x65ddfbd2, (WORD32)0x45cd358e,
(WORD32)0x6b4af277, (WORD32)0x3db832a5, (WORD32)0x70231098,
(WORD32)0x354d9056, (WORD32)0x745f9dd0, (WORD32)0x2c98fbba,
(WORD32)0x77fab987, (WORD32)0x23a6887e, (WORD32)0x7aef6322,
(WORD32)0x1a82a025, (WORD32)0x7d3980eb, (WORD32)0x1139f0ce,
(WORD32)0x7ed5e5c5, (WORD32)0x7d95b9e, (WORD32)0x7fc25595,
(WORD32)0xfe6de2e1, (WORD32)0x7ffd8859, (WORD32)0xf50497fb,
(WORD32)0x7f872bf1, (WORD32)0xebaa894f, (WORD32)0x7e5fe492,
(WORD32)0xe26cb01b, (WORD32)0x7c894bdc, (WORD32)0xd957de7b,
(WORD32)0x7a05eeac, (WORD32)0xd078ad9f, (WORD32)0x76d94987,
(WORD32)0xc7db6c51, (WORD32)0x7307c3cf, (WORD32)0xbf8c0de4,
(WORD32)0x6e96a99b, (WORD32)0xb796199c, (WORD32)0x698c246b,
(WORD32)0xb0049ab4, (WORD32)0x63ef328e, (WORD32)0xa8e21108,
(WORD32)0x5dc79d7b},
// const WORD32 ixheaacd_esbr_sin_cos_twiddle_l24[24] =
{(WORD32)0x430238f, (WORD32)0x7fee74a1, (WORD32)0x7f62368e,
(WORD32)0xc8bd35e, (WORD32)0x14d9c245, (WORD32)0x7e4a5425,
(WORD32)0x7ca80037, (WORD32)0x1d10d5c1, (WORD32)0x25280c5d,
(WORD32)0x7a7d055a, (WORD32)0x77cbc3f1, (WORD32)0x2d168792,
(WORD32)0x34d3957e, (WORD32)0x74972f91, (WORD32)0x70e2cbc5,
(WORD32)0x3c56ba70, (WORD32)0x4397ba32, (WORD32)0x6cb2a836,
(WORD32)0x680b5c33, (WORD32)0x4a8ea111, (WORD32)0x5133cc94,
(WORD32)0x62f201ac, (WORD32)0x5d6c2f99, (WORD32)0x577ff3da},
// const WORD32 ixheaacd_esbr_alt_sin_twiddle_l24[12] =
{(WORD32)0x10b5150f, (WORD32)0x7ee7aa4b, (WORD32)0x2120fb83,
(WORD32)0x7ba3751c, (WORD32)0x30fbc54d, (WORD32)0x7641af3c,
(WORD32)0x3fffffff, (WORD32)0x6ed9eba1, (WORD32)0x4debe4fe,
(WORD32)0x658c9a2d, (WORD32)0x5a827999, (WORD32)0x5a827999},
// const WORD32 ixheaacd_esbr_t_cos_sin_l24[24+24] = //exp[-i * pi/24* 11/8
// * (k
// +0.5)]
{(WORD32)0x7fded52e, (WORD32)0x5c1f4e6, (WORD32)0x7ed5e5c5,
(WORD32)0x1139f0ce, (WORD32)0x7cc62bde, (WORD32)0x1c8e3bbe,
(WORD32)0x79b3ecde, (WORD32)0x27a75c94, (WORD32)0x75a585ce,
(WORD32)0x326e54c7, (WORD32)0x70a35e24, (WORD32)0x3cccd003,
(WORD32)0x6ab7d661, (WORD32)0x46ad5277, (WORD32)0x63ef328e,
(WORD32)0x4ffb654c, (WORD32)0x5c5780d1, (WORD32)0x58a3c117,
(WORD32)0x54007c50, (WORD32)0x609475c2, (WORD32)0x4afb6c97,
(WORD32)0x67bd0fbb, (WORD32)0x415b01cd, (WORD32)0x6e0eba0a,
(WORD32)0x37332dfc, (WORD32)0x737c5d0a, (WORD32)0x2c98fbba,
(WORD32)0x77fab987, (WORD32)0x21a26295, (WORD32)0x7b808014,
(WORD32)0x1666198d, (WORD32)0x7e06644a, (WORD32)0xafb6805,
(WORD32)0x7f872bf1, (WORD32)0xff79f587, (WORD32)0x7fffb9cf,
(WORD32)0xf3f998c1, (WORD32)0x7f6f141d, (WORD32)0xe8922622,
(WORD32)0x7dd6668d, (WORD32)0xdd5b3e7c, (WORD32)0x7b38ffdc,
(WORD32)0xd26c1e09, (WORD32)0x779c4afa, (WORD32)0xc7db6c51,
(WORD32)0x7307c3cf, (WORD32)0xbdbf0d30, (WORD32)0x6d84e7b6},
// const WORD32 ixheaacd_esbr_sin_cos_twiddle_l16[16] =
{(WORD32)0x647d97c, (WORD32)0x7fd8878d, (WORD32)0x7e9d55fb,
(WORD32)0x12c8106e, (WORD32)0x1f19f97b, (WORD32)0x7c29fbed,
(WORD32)0x78848413, (WORD32)0x2b1f34eb, (WORD32)0x36ba2013,
(WORD32)0x73b5ebd0, (WORD32)0x6dca0d14, (WORD32)0x41ce1e64,
(WORD32)0x4c3fdff3, (WORD32)0x66cf811f, (WORD32)0x5ed77c89,
(WORD32)0x55f5a4d2},
// const WORD32 ixheaacd_esbr_alt_sin_twiddle_l16[8] =
{(WORD32)0x18f8b83c, (WORD32)0x7d8a5f3f, (WORD32)0x30fbc54d,
(WORD32)0x7641af3c, (WORD32)0x471cece6, (WORD32)0x6a6d98a3,
(WORD32)0x5a827999, (WORD32)0x5a827999},
// const WORD32 ixheaacd_esbr_t_cos_sin_l16[16+16] = //exp[-i * pi/16* 5/4 *
// (k
// +0.5)]
{(WORD32)0x7fc25595, (WORD32)0x7d95b9e, (WORD32)0x7dd6668d,
(WORD32)0x176dd9de, (WORD32)0x7a05eeac, (WORD32)0x26a82185,
(WORD32)0x745f9dd0, (WORD32)0x354d9056, (WORD32)0x6cf934fa,
(WORD32)0x4325c134, (WORD32)0x63ef328e, (WORD32)0x4ffb654c,
(WORD32)0x59646497, (WORD32)0x5b9d1152, (WORD32)0x4d8162c3,
(WORD32)0x65ddfbd2, (WORD32)0x4073f21c, (WORD32)0x6e96a99b,
(WORD32)0x326e54c7, (WORD32)0x75a585ce, (WORD32)0x23a6887e,
(WORD32)0x7aef6322, (WORD32)0x145576b1, (WORD32)0x7e5fe492,
(WORD32)0x4b6195d, (WORD32)0x7fe9cbbe, (WORD32)0xf50497fb,
(WORD32)0x7f872bf1, (WORD32)0xe57d5fdb, (WORD32)0x7d3980eb,
(WORD32)0xd65c3b7c, (WORD32)0x7909a92b},
// WORD16 ixheaacd_sbr_t_cos_sin_l32_eld[32+32];
{
(WORD16)-0x5a82, (WORD16)0x5a82, (WORD16)0x5a82, (WORD16)0x5a82,
(WORD16)0x5a82, (WORD16)-0x5a82, (WORD16)-0x5a82, (WORD16)-0x5a82,
(WORD16)-0x5a82, (WORD16)0x5a82, (WORD16)0x5a82, (WORD16)0x5a82,
(WORD16)0x5a82, (WORD16)-0x5a82, (WORD16)-0x5a82, (WORD16)-0x5a82,
(WORD16)-0x5a82, (WORD16)0x5a82, (WORD16)0x5a82, (WORD16)0x5a82,
(WORD16)0x5a82, (WORD16)-0x5a82, (WORD16)-0x5a82, (WORD16)-0x5a82,
(WORD16)-0x5a82, (WORD16)0x5a82, (WORD16)0x5a82, (WORD16)0x5a82,
(WORD16)0x5a82, (WORD16)-0x5a82, (WORD16)-0x5a82, (WORD16)-0x5a82,
(WORD16)-0x5a82, (WORD16)0x5a82, (WORD16)0x5a82, (WORD16)0x5a82,
(WORD16)0x5a82, (WORD16)-0x5a82, (WORD16)-0x5a82, (WORD16)-0x5a82,
(WORD16)-0x5a82, (WORD16)0x5a82, (WORD16)0x5a82, (WORD16)0x5a82,
(WORD16)0x5a82, (WORD16)-0x5a82, (WORD16)-0x5a82, (WORD16)-0x5a82,
(WORD16)-0x5a82, (WORD16)0x5a82, (WORD16)0x5a82, (WORD16)0x5a82,
(WORD16)0x5a82, (WORD16)-0x5a82, (WORD16)-0x5a82, (WORD16)-0x5a82,
(WORD16)-0x5a82, (WORD16)0x5a82, (WORD16)0x5a82, (WORD16)0x5a82,
(WORD16)0x5a82, (WORD16)-0x5a82, (WORD16)-0x5a82, (WORD16)-0x5a82,
},
// WORD16 qmf_c_eld[640];
{185, 386, 565, 759, 970, 1200, 1447, 1707, 1977, 2255,
2535, 2818, 3099, 3379, 3657, 3933, 4208, 4481, 4754, 5027,
5301, 5576, 5852, 6129, 6407, 6685, 6963, 7242, 7520, 7797,
8073, 8349, 8624, 8898, 9172, 9445, 9717, 9989, 10259, 10528,
10796, 11061, 11325, 11586, 11845, 12102, 12357, 12611, 12863, 13114,
13364, 13612, 13858, 14103, 14344, 14581, 14813, 15040, 15260, 15473,
15678, 15876, 16069, 16265, 16408, 16497, 16589, 16674, 16752, 16820,
16879, 16928, 16969, 17001, 17027, 17045, 17057, 17063, 17063, 17056,
17044, 17024, 16997, 16963, 16920, 16869, 16809, 16741, 16664, 16578,
16484, 16381, 16270, 16150, 16023, 15887, 15743, 15590, 15430, 15262,
15087, 14903, 14713, 14515, 14310, 14099, 13882, 13659, 13431, 13197,
12958, 12715, 12467, 12214, 11958, 11698, 11435, 11168, 10899, 10627,
10354, 10078, 9801, 9522, 9243, 8963, 8683, 8403, -8120, -7836,
-7553, -7270, -6989, -6710, -6431, -6155, -5881, -5610, -5341, -5076,
-4813, -4554, -4299, -4047, -3799, -3555, -3315, -3080, -2848, -2622,
-2399, -2182, -1969, -1761, -1558, -1360, -1167, -979, -796, -619,
-447, -280, -120, 36, 186, 330, 468, 601, 727, 848,
964, 1073, 1177, 1275, 1368, 1454, 1535, 1610, 1679, 1742,
1800, 1852, 1898, 1939, 1974, 2004, 2030, 2050, 2066, 2078,
2085, 2087, 2088, 2090, 2087, 2080, 2069, 2056, 2039, 2019,
1996, 1970, 1942, 1911, 1878, 1842, 1804, 1765, 1723, 1680,
1636, 1590, 1544, 1496, 1449, 1400, 1352, 1303, 1255, 1206,
1158, 1109, 1062, 1015, 969, 924, 880, 837, 795, 754,
714, 676, 640, 606, 572, 540, 510, 480, 452, 426,
400, 376, 353, 332, 311, 291, 273, 255, 239, 223,
208, 194, 181, 169, 158, 147, -138, -129, -121, -113,
-107, -100, -94, -88, -83, -78, -73, -68, -62, -57,
-53, -48, -43, -39, -35, -32, -28, -24, -21, -19,
-16, -13, -9, -5, -1, 2, 7, 10, 10, 15,
20, 24, 28, 33, 36, 30, 22, 15, 9, 3,
-3, -10, -17, -26, -35, -43, -50, -57, -62, -67,
-72, -75, -76, -77, -77, -76, -74, -71, -68, -63,
-59, -54, -49, -44, -38, -31, -25, -19, -13, -7,
-2, 2, 5, 8, 10, 11, 11, 11, 11, 12,
12, 12, 11, 9, 5, 2, 11, 20, 26, 31,
36, 41, 45, 45, 44, 43, 40, 37, 33, 32,
28, 23, 18, 13, 8, 1, -5, -8, -9, -11,
-13, -16, -20, -21, -19, -17, -16, -15, -16, -17,
-18, -19, -20, -20, 21, 21, 20, 19, 18, 18,
17, 15, 13, 10, 5, 4, 4, 4, 3, 3,
2, 1, 1, 0, 0, 0, -2, 1, 2, 0,
1, 1, -1, -2, -3, -6, 0, 3, 2, 1,
1, 1, 1, 1, 0, 2, 2, 2, 1, 1,
0, 0, 0, 0, 0, 1, 0, 0, 1, 1,
1, 0, 0, 0, 0, 0, 0, -1, -3, -3,
-3, -3, -3, -3, -3, -3, -4, -4, -2, -1,
-1, -1, -1, -1, -1, 0, 0, 0, 0, 0,
3, 1, -1, 0, -1, -1, 1, 1, 1, 10,
4, 1, 1, 1, 1, 1, 1, 1, 1, -1,
1, 1, 1, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, -1, -1, -1, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 1, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
// WORD16 qmf_c_eld2[640];
{185, 386, 565, 759, 970, 1200, 1447, 1707, 1977, 2255,
2535, 2818, 3099, 3379, 3657, 3933, 4208, 4481, 4754, 5027,
5301, 5576, 5852, 6129, 6407, 6685, 6963, 7242, 7520, 7797,
8073, 8349, 8624, 8898, 9172, 9445, 9717, 9989, 10259, 10528,
10796, 11061, 11325, 11586, 11845, 12102, 12357, 12611, 12863, 13114,
13364, 13612, 13858, 14103, 14344, 14581, 14813, 15040, 15260, 15473,
15678, 15876, 16069, 16265, 16408, 16497, 16589, 16674, 16752, 16820,
16879, 16928, 16969, 17001, 17027, 17045, 17057, 17063, 17063, 17056,
17044, 17024, 16997, 16963, 16920, 16869, 16809, 16741, 16664, 16578,
16484, 16381, 16270, 16150, 16023, 15887, 15743, 15590, 15430, 15262,
15087, 14903, 14713, 14515, 14310, 14099, 13882, 13659, 13431, 13197,
12958, 12715, 12467, 12214, 11958, 11698, 11435, 11168, 10899, 10627,
10354, 10078, 9801, 9522, 9243, 8963, 8683, 8403, -8120, -7836,
-7553, -7270, -6989, -6710, -6431, -6155, -5881, -5610, -5341, -5076,
-4813, -4554, -4299, -4047, -3799, -3555, -3315, -3080, -2848, -2622,
-2399, -2182, -1969, -1761, -1558, -1360, -1167, -979, -796, -619,
-447, -280, -120, 36, 186, 330, 468, 601, 727, 848,
964, 1073, 1177, 1275, 1368, 1454, 1535, 1610, 1679, 1742,
1800, 1852, 1898, 1939, 1974, 2004, 2030, 2050, 2066, 2078,
2085, 2087, 2088, 2090, 2087, 2080, 2069, 2056, 2039, 2019,
1996, 1970, 1942, 1911, 1878, 1842, 1804, 1765, 1723, 1680,
1636, 1590, 1544, 1496, 1449, 1400, 1352, 1303, 1255, 1206,
1158, 1109, 1062, 1015, 969, 924, 880, 837, 795, 754,
714, 676, 640, 606, 572, 540, 510, 480, 452, 426,
400, 376, 353, 332, 311, 291, 273, 255, 239, 223,
208, 194, 181, 169, 158, 147, -138, -129, -121, -113,
-107, -100, -94, -88, -83, -78, -73, -68, -62, -57,
-53, -48, -43, -39, -35, -32, -28, -24, -21, -19,
-16, -13, -9, -5, -1, 2, 7, 10, 10, 15,
20, 24, 28, 33, 36, 30, 22, 15, 9, 3,
-3, -10, -17, -26, -35, -43, -50, -57, -62, -67,
-72, -75, -76, -77, -77, -76, -74, -71, -68, -63,
-59, -54, -49, -44, -38, -31, -25, -19, -13, -7,
-2, 2, 5, 8, 10, 11, 11, 11, 11, 12,
12, 12, 11, 9, 5, 2, 11, 20, 26, 31,
36, 41, 45, 45, 44, 43, 40, 37, 33, 32,
28, 23, 18, 13, 8, 1, -5, -8, -9, -11,
-13, -16, -20, -21, -19, -17, -16, -15, -16, -17,
-18, -19, -20, -20, 21, 21, 20, 19, 18, 18,
17, 15, 13, 10, 5, 4, 4, 4, 3, 3,
2, 1, 1, 0, 0, 0, -2, 1, 2, 0,
1, 1, -1, -2, -3, -6, 0, 3, 2, 1,
1, 1, 1, 1, 0, 2, 2, 2, 1, 1,
0, 0, 0, 0, 0, 1, 0, 0, 1, 1,
1, 0, 0, 0, 0, 0, 0, -1, -3, -3,
-3, -3, -3, -3, -3, -3, -4, -4, -2, -1,
-1, -1, -1, -1, -1, 0, 0, 0, 0, 0,
3, 1, -1, 0, -1, -1, 1, 1, 1, 10,
4, 1, 1, 1, 1, 1, 1, 1, 1, -1,
1, 1, 1, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, -1, -1, -1, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 1, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
// WORD16 qmf_c_eld3[640];
{
285, 662, 1085, 1577, 2116, 2676, 3239, 3795, 4344, 4890,
5438, 5990, 6546, 7102, 7658, 8211, 8761, 9308, 9853, 10393,
10928, 11455, 11973, 12484, 12988, 13488, 13980, 14462, 14926, 15366,
15777, 16167, 16452, 16631, 16786, 16903, 16985, 17036, 17060, 17059,
17034, 16980, 16894, 16775, 16621, 16432, 16210, 15955, 15666, 15346,
14995, 14614, 14204, 13770, 13314, 12836, 12340, 11828, 11301, 10763,
10216, 9661, 9103, 8543, -7978, -7412, -6850, -6293, -5746, -5209,
-4684, -4173, -3677, -3198, -2735, -2291, -1865, -1459, -1073, -708,
-364, -42, 258, 534, 787, 1018, 1226, 1411, 1572, 1710,
1826, 1918, 1989, 2040, 2072, 2086, 2089, 2083, 2062, 2029,
1983, 1926, 1860, 1784, 1701, 1613, 1520, 1424, 1327, 1230,
1133, 1038, 946, 858, 774, 695, 623, 556, 495, 439,
388, 342, 301, 264, 231, 201, 175, 152, -134, -117,
-104, -91, -81, -71, -60, -51, -41, -34, -26, -20,
-15, -7, 0, 8, 12, 22, 30, 33, 18, 6,
-7, -22, -39, -54, -65, -74, -77, -77, -73, -66,
-57, -47, -35, -22, -10, 0, 6, 10, 11, 11,
12, 10, 3, 15, 28, 38, 45, 43, 38, 32,
25, 15, 4, -7, -10, -15, -21, -18, -16, -17,
-19, -20, 21, 19, 18, 16, 11, 4, 4, 3,
1, 0, 0, -1, 1, 1, -2, -5, 1, 1,
1, 1, 1, 2, 1, 0, 0, 0, 0, 1,
0, 0, 0, -1, -3, -3, -3, -3, -4, -2,
-1, -1, -1, 0, 0, 2, -1, -1, 1, 5,
2, 1, 1, 1, 0, 1, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, -1, -1, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
285, 662, 1085, 1577, 2116, 2676, 3239, 3795, 4344, 4890,
5438, 5990, 6546, 7102, 7658, 8211, 8761, 9308, 9853, 10393,
10928, 11455, 11973, 12484, 12988, 13488, 13980, 14462, 14926, 15366,
15777, 16167, 16452, 16631, 16786, 16903, 16985, 17036, 17060, 17059,
17034, 16980, 16894, 16775, 16621, 16432, 16210, 15955, 15666, 15346,
14995, 14614, 14204, 13770, 13314, 12836, 12340, 11828, 11301, 10763,
10216, 9661, 9103, 8543, -7978, -7412, -6850, -6293, -5746, -5209,
-4684, -4173, -3677, -3198, -2735, -2291, -1865, -1459, -1073, -708,
-364, -42, 258, 534, 787, 1018, 1226, 1411, 1572, 1710,
1826, 1918, 1989, 2040, 2072, 2086, 2089, 2083, 2062, 2029,
1983, 1926, 1860, 1784, 1701, 1613, 1520, 1424, 1327, 1230,
1133, 1038, 946, 858, 774, 695, 623, 556, 495, 439,
388, 342, 301, 264, 231, 201, 175, 152, -134, -117,
-104, -91, -81, -71, -60, -51, -41, -34, -26, -20,
-15, -7, 0, 8, 12, 22, 30, 33, 18, 6,
-7, -22, -39, -54, -65, -74, -77, -77, -73, -66,
-57, -47, -35, -22, -10, 0, 6, 10, 11, 11,
12, 10, 3, 15, 28, 38, 45, 43, 38, 32,
25, 15, 4, -7, -10, -15, -21, -18, -16, -17,
-19, -20, 21, 19, 18, 16, 11, 4, 4, 3,
1, 0, 0, -1, 1, 1, -2, -5, 1, 1,
1, 1, 1, 2, 1, 0, 0, 0, 0, 1,
0, 0, 0, -1, -3, -3, -3, -3, -4, -2,
-1, -1, -1, 0, 0, 2, -1, -1, 1, 5,
2, 1, 1, 1, 0, 1, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, -1, -1, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
},
// const WORD16 ixheaacd_sbr_synth_cos_sin_l32[64+64] = //exp[-i * pi/4* (2k
// + 1)]
{
(WORD16)0x5a82, (WORD16)0x5a82, (WORD16)-0x5a82, (WORD16)0x5a82,
(WORD16)-0x5a82, (WORD16)-0x5a82, (WORD16)0x5a82, (WORD16)-0x5a82,
(WORD16)0x5a82, (WORD16)0x5a82, (WORD16)-0x5a82, (WORD16)0x5a82,
(WORD16)-0x5a82, (WORD16)-0x5a82, (WORD16)0x5a82, (WORD16)-0x5a82,
(WORD16)0x5a82, (WORD16)0x5a82, (WORD16)-0x5a82, (WORD16)0x5a82,
(WORD16)-0x5a82, (WORD16)-0x5a82, (WORD16)0x5a82, (WORD16)-0x5a82,
(WORD16)0x5a82, (WORD16)0x5a82, (WORD16)-0x5a82, (WORD16)0x5a82,
(WORD16)-0x5a82, (WORD16)-0x5a82, (WORD16)0x5a82, (WORD16)-0x5a82,
(WORD16)0x5a82, (WORD16)0x5a82, (WORD16)-0x5a82, (WORD16)0x5a82,
(WORD16)-0x5a82, (WORD16)-0x5a82, (WORD16)0x5a82, (WORD16)-0x5a82,
(WORD16)0x5a82, (WORD16)0x5a82, (WORD16)-0x5a82, (WORD16)0x5a82,
(WORD16)-0x5a82, (WORD16)-0x5a82, (WORD16)0x5a82, (WORD16)-0x5a82,
(WORD16)0x5a82, (WORD16)0x5a82, (WORD16)-0x5a82, (WORD16)0x5a82,
(WORD16)-0x5a82, (WORD16)-0x5a82, (WORD16)0x5a82, (WORD16)-0x5a82,
(WORD16)0x5a82, (WORD16)0x5a82, (WORD16)-0x5a82, (WORD16)0x5a82,
(WORD16)-0x5a82, (WORD16)-0x5a82, (WORD16)0x5a82, (WORD16)-0x5a82,
(WORD16)0x5a82, (WORD16)0x5a82, (WORD16)-0x5a82, (WORD16)0x5a82,
(WORD16)-0x5a82, (WORD16)-0x5a82, (WORD16)0x5a82, (WORD16)-0x5a82,
(WORD16)0x5a82, (WORD16)0x5a82, (WORD16)-0x5a82, (WORD16)0x5a82,
(WORD16)-0x5a82, (WORD16)-0x5a82, (WORD16)0x5a82, (WORD16)-0x5a82,
(WORD16)0x5a82, (WORD16)0x5a82, (WORD16)-0x5a82, (WORD16)0x5a82,
(WORD16)-0x5a82, (WORD16)-0x5a82, (WORD16)0x5a82, (WORD16)-0x5a82,
(WORD16)0x5a82, (WORD16)0x5a82, (WORD16)-0x5a82, (WORD16)0x5a82,
(WORD16)-0x5a82, (WORD16)-0x5a82, (WORD16)0x5a82, (WORD16)-0x5a82,
(WORD16)0x5a82, (WORD16)0x5a82, (WORD16)-0x5a82, (WORD16)0x5a82,
(WORD16)-0x5a82, (WORD16)-0x5a82, (WORD16)0x5a82, (WORD16)-0x5a82,
(WORD16)0x5a82, (WORD16)0x5a82, (WORD16)-0x5a82, (WORD16)0x5a82,
(WORD16)-0x5a82, (WORD16)-0x5a82, (WORD16)0x5a82, (WORD16)-0x5a82,
(WORD16)0x5a82, (WORD16)0x5a82, (WORD16)-0x5a82, (WORD16)0x5a82,
(WORD16)-0x5a82, (WORD16)-0x5a82, (WORD16)0x5a82, (WORD16)-0x5a82,
(WORD16)0x5a82, (WORD16)0x5a82, (WORD16)-0x5a82, (WORD16)0x5a82,
(WORD16)-0x5a82, (WORD16)-0x5a82, (WORD16)0x5a82, (WORD16)-0x5a82,
},
};
const ia_env_extr_tables_struct ixheaacd_aac_dec_env_extr_tables = {
{
// const ia_frame_info_struct sbr_frame_info1_16 =
{0,
1,
-1,
1,
{0, 16, 0, 0, 0, 0, 0, 0, 0},
{1, 0, 0, 0, 0, 0, 0, 0},
{0, 16, 0}},
// const ia_frame_info_struct sbr_frame_info2_16 =
{0,
2,
-1,
2,
{0, 8, 16, 0, 0, 0, 0, 0, 0},
{1, 1, 0, 0, 0, 0, 0, 0},
{0, 8, 16}},
// const ia_frame_info_struct sbr_frame_info4_16 =
{0,
4,
-1,
2,
{0, 4, 8, 12, 16, 0, 0, 0, 0},
{1, 1, 1, 1, 0, 0, 0, 0},
{0, 8, 16}},
// const ia_frame_info_struct sbr_frame_info8_16 =
{0,
8,
-1,
2,
{0, 2, 4, 6, 8, 10, 12, 14, 16},
{1, 1, 1, 1, 1, 1, 1, 1},
{0, 8, 16}},
},
// const ia_sbr_header_data_struct sbr_default_header =
{SBR_NOT_INITIALIZED,
0,
0,
16,
2,
1024,
44100,
0,
SBR_AMPLITUDE_RESOLUTION_3_0,
15,
6,
0,
SBR_SAMP_FEQ_LVL_DEF,
SBR_CHANGE_LVL_DEF,
SBR_NOISE_BND_DEF,
SBR_BND_LIMIT_DEF,
SBR_GAIN_LIMIT_DEF,
SBR_INTERPOL_SAMP_FEQ_DEF,
SBR_SMOOTH_LEN_DEF,
NULL,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0},
// WORD16 ixheaacd_t_huffman_env_bal_1_5db_inp_table[50];
{0x0011, 0x0301, 0x0322, 0x02e3, 0x0344, 0x02c5, 0x0366, 0x02a7, 0x0388,
0x0289, 0x026b, 0x03ab, 0x024c, 0x03cc, 0x03ef, 0x0230, 0x0410, 0x0010,
0x0030, 0x0050, 0x0070, 0x0090, 0x00b0, 0x00d0, 0x00f0, 0x0110, 0x0130,
0x0150, 0x0170, 0x0190, 0x01b0, 0x01d0, 0x01f0, 0x0210, 0x0430, 0x0450,
0x0470, 0x0490, 0x04b0, 0x04d0, 0x04f1, 0x0511, 0x0531, 0x0551, 0x0571,
0x0591, 0x05b1, 0x05d1, 0x05f1, 0x0611},
// WORD16 ixheaacd_f_huffman_env_bal_1_5db_inp_table[50];
{0x0013, 0x0301, 0x02e2, 0x0323, 0x02c4, 0x0345, 0x0366, 0x02a7, 0x0288,
0x0389, 0x026b, 0x03ab, 0x024b, 0x03cc, 0x022e, 0x03ef, 0x0410, 0x01f0,
0x0211, 0x0012, 0x0032, 0x0052, 0x0072, 0x0092, 0x00b2, 0x00d2, 0x00f2,
0x0112, 0x0132, 0x0152, 0x0172, 0x0192, 0x01b2, 0x01d2, 0x0432, 0x0452,
0x0472, 0x0492, 0x04b2, 0x04d2, 0x04f2, 0x0512, 0x0532, 0x0552, 0x0572,
0x0592, 0x05b2, 0x05d2, 0x05f3, 0x0613},
// WORD16 ixheaacd_t_huffman_env_bal_3_0db_inp_table[26];
{0x000e, 0x0181, 0x01a2, 0x0163, 0x0144, 0x01c5, 0x01e6, 0x0127, 0x0108,
0x0209, 0x00ec, 0x000d, 0x002d, 0x004d, 0x006d, 0x008d, 0x00ad, 0x00cd,
0x022d, 0x024d, 0x026d, 0x028d, 0x02ad, 0x02cd, 0x02ee, 0x030e},
// WORD16 ixheaacd_f_huffman_env_bal_3_0db_inp_table[26];
{0x000e, 0x0181, 0x0162, 0x01a3, 0x0144, 0x01c5, 0x01e6, 0x0127, 0x0108,
0x0209, 0x00eb, 0x022c, 0x024d, 0x000d, 0x002d, 0x004d, 0x006d, 0x008d,
0x00ae, 0x00ce, 0x026e, 0x028e, 0x02ae, 0x02ce, 0x02ee, 0x030e},
// WORD16 ixheaacd_t_huffman_noise_3_0db_inp_table[64];
{0x000e, 0x03e1, 0x0402, 0x03c3, 0x03a4, 0x0425, 0x0386, 0x0448,
0x0368, 0x046a, 0x034b, 0x048d, 0x054d, 0x000d, 0x002d, 0x004d,
0x006d, 0x008d, 0x00ad, 0x00cd, 0x00ed, 0x010d, 0x012d, 0x014d,
0x016d, 0x018d, 0x01ad, 0x01cd, 0x01ed, 0x020d, 0x022d, 0x024d,
0x026d, 0x028d, 0x02ad, 0x02cd, 0x02ed, 0x030d, 0x032d, 0x04ad,
0x04cd, 0x04ed, 0x050d, 0x052d, 0x056d, 0x058d, 0x05ad, 0x05cd,
0x05ed, 0x060d, 0x062d, 0x064d, 0x066d, 0x068d, 0x06ad, 0x06cd,
0x06ed, 0x070d, 0x072d, 0x074d, 0x076d, 0x078d, 0x07ae, 0x07ce},
// WORD16 ixheaacd_t_huffman_noise_bal_3_0db_inp_table[26];
{0x0008, 0x0181, 0x0162, 0x01a3, 0x0145, 0x01c6, 0x0008, 0x0028, 0x0048,
0x0068, 0x0088, 0x00a8, 0x00c8, 0x00e8, 0x0108, 0x0128, 0x01e8, 0x0208,
0x0228, 0x0248, 0x0268, 0x0288, 0x02a8, 0x02c8, 0x02e8, 0x0308},
// WORD16 ixheaacd_t_huffman_env_1_5db_inp_table[122];
{0x0013, 0x0782, 0x0762, 0x07a3, 0x0743, 0x07c4, 0x0724, 0x07e5, 0x0705,
0x0806, 0x06e6, 0x0827, 0x06c7, 0x0848, 0x06a8, 0x0869, 0x0689, 0x066a,
0x088a, 0x064b, 0x08ac, 0x062c, 0x08cd, 0x060d, 0x05ed, 0x08ee, 0x05ce,
0x090e, 0x05ae, 0x058f, 0x092f, 0x0530, 0x0550, 0x0570, 0x0950, 0x0490,
0x0510, 0x0990, 0x0451, 0x04f1, 0x0971, 0x04b1, 0x0472, 0x04d2, 0x0012,
0x0032, 0x0052, 0x0072, 0x0092, 0x00b2, 0x00d3, 0x00f3, 0x0113, 0x0133,
0x0153, 0x0173, 0x0193, 0x01b3, 0x01d3, 0x01f3, 0x0213, 0x0233, 0x0253,
0x0273, 0x0293, 0x02b3, 0x02d3, 0x02f3, 0x0313, 0x0333, 0x0353, 0x0373,
0x0393, 0x03b3, 0x03d3, 0x03f3, 0x0413, 0x0433, 0x09b3, 0x09d3, 0x09f3,
0x0a13, 0x0a33, 0x0a53, 0x0a73, 0x0a93, 0x0ab3, 0x0ad3, 0x0af3, 0x0b13,
0x0b33, 0x0b53, 0x0b73, 0x0b93, 0x0bb3, 0x0bd3, 0x0bf3, 0x0c13, 0x0c33,
0x0c53, 0x0c73, 0x0c93, 0x0cb3, 0x0cd3, 0x0cf3, 0x0d13, 0x0d33, 0x0d53,
0x0d73, 0x0d93, 0x0db3, 0x0dd3, 0x0df3, 0x0e13, 0x0e33, 0x0e53, 0x0e73,
0x0e93, 0x0eb3, 0x0ed3, 0x0ef3, 0x0f13},
// WORD16 ixheaacd_f_huffman_env_1_5db_inp_table[122];
{0x0014, 0x0782, 0x0762, 0x07a3, 0x0743, 0x0724, 0x07c4, 0x0705, 0x07e5,
0x06e6, 0x0806, 0x06c7, 0x0828, 0x06a8, 0x0848, 0x0689, 0x0869, 0x0669,
0x088a, 0x064a, 0x08ab, 0x062b, 0x08cb, 0x08eb, 0x060c, 0x090c, 0x05ec,
0x092c, 0x094d, 0x05cd, 0x05ad, 0x096d, 0x098e, 0x09ae, 0x058e, 0x056f,
0x054f, 0x0530, 0x09d0, 0x09f0, 0x0510, 0x04f0, 0x0a11, 0x0a31, 0x0491,
0x04b1, 0x04d1, 0x0451, 0x0412, 0x0a52, 0x0a72, 0x0ab2, 0x0272, 0x0472,
0x0ad2, 0x0af2, 0x03d2, 0x0432, 0x0a92, 0x0b12, 0x0d12, 0x0133, 0x01d3,
0x0213, 0x0233, 0x02f3, 0x0373, 0x03b3, 0x03f3, 0x0b53, 0x0c33, 0x0cd3,
0x0d73, 0x0d93, 0x0013, 0x0033, 0x0054, 0x0074, 0x0094, 0x00b4, 0x00d4,
0x00f4, 0x0114, 0x0154, 0x0174, 0x0194, 0x01b4, 0x01f4, 0x0254, 0x0294,
0x02b4, 0x02d4, 0x0314, 0x0334, 0x0354, 0x0394, 0x0b34, 0x0b74, 0x0b94,
0x0bb4, 0x0bd4, 0x0bf4, 0x0c14, 0x0c54, 0x0c74, 0x0c94, 0x0cb4, 0x0cf4,
0x0d34, 0x0d54, 0x0db4, 0x0dd4, 0x0df4, 0x0e14, 0x0e34, 0x0e54, 0x0e74,
0x0e94, 0x0eb4, 0x0ed4, 0x0ef4, 0x0f14},
// WORD16 ixheaacd_t_huffman_env_3_0db_inp_table[64];
{0x0013, 0x03e1, 0x03c2, 0x0403, 0x03a4, 0x0425, 0x0386, 0x0447,
0x0368, 0x0469, 0x034b, 0x048b, 0x032c, 0x030d, 0x04ad, 0x02ee,
0x04ce, 0x02ce, 0x02ae, 0x04ee, 0x050f, 0x0530, 0x0250, 0x0290,
0x0270, 0x0231, 0x0551, 0x0572, 0x0012, 0x0032, 0x0053, 0x0073,
0x0093, 0x00b3, 0x00d3, 0x00f3, 0x0113, 0x0133, 0x0153, 0x0173,
0x0193, 0x01b3, 0x01d3, 0x01f3, 0x0213, 0x0593, 0x05b3, 0x05d3,
0x05f3, 0x0613, 0x0633, 0x0653, 0x0673, 0x0693, 0x06b3, 0x06d3,
0x06f3, 0x0713, 0x0733, 0x0753, 0x0773, 0x0793, 0x07b3, 0x07d3},
// WORD16 ixheaacd_f_huffman_env_3_0db_inp_table[64];
{0x0014, 0x03e1, 0x03c2, 0x0403, 0x03a4, 0x0425, 0x0386, 0x0448,
0x0368, 0x0469, 0x0349, 0x048a, 0x032a, 0x04ab, 0x030b, 0x04cc,
0x02ec, 0x04ed, 0x050e, 0x02ce, 0x02af, 0x052f, 0x054f, 0x0290,
0x0270, 0x0570, 0x0590, 0x0251, 0x0211, 0x05b1, 0x05d1, 0x0232,
0x0632, 0x01b2, 0x00f2, 0x0192, 0x05f2, 0x0612, 0x0133, 0x0153,
0x01f3, 0x0673, 0x0693, 0x06b3, 0x0713, 0x0113, 0x0173, 0x06f3,
0x0014, 0x0034, 0x0054, 0x0074, 0x0094, 0x00b4, 0x00d4, 0x01d4,
0x0654, 0x06d4, 0x0734, 0x0754, 0x0774, 0x0794, 0x07b4, 0x07d4},
// WORD32 ixheaacd_t_huffman_env_bal_1_5db_idx_table[20];
{0x00000000, 0x00100002, 0x00200006, 0x0030000e, 0x0040001e,
0x0050003e, 0x0060007e, 0x007000fe, 0x008001fe, 0x00a007fd,
0x00c00ffd, 0x10d07ff0, 0x0230fff7, 0x2260fffa, 0x02c1fffb,
0x02e1fffd, 0x02f1fffe, 0x0301ffff, 0x01b0ffef, 0x0281fff7},
// WORD32 ixheaacd_f_huffman_env_bal_1_5db_idx_table[23];
{0x00000000, 0x00100002, 0x00200006, 0x0030000e, 0x0040001e, 0x0050003e,
0x0060007e, 0x007000fe, 0x008001fe, 0x00a007fd, 0x00b007fe, 0x00c00ffe,
0x10d03ffc, 0x2111fff0, 0x0273fff7, 0x02b3fffb, 0x02d3fffd, 0x02e3fffe,
0x02f7fffe, 0x0307ffff, 0x20e07ffa, 0x01f3ffef, 0x0100fff7},
// WORD32 ixheaacd_t_huffman_env_bal_3_0db_idx_table[16];
{0x00000000, 0x00100002, 0x00200006, 0x0030000e, 0x0040001e, 0x0050003e,
0x0060007e, 0x007000fe, 0x008001fe, 0x10900ff8, 0x01301ffb, 0x01501ffd,
0x01601ffe, 0x01703ffe, 0x01803fff, 0x00f01ff7},
// WORD32 ixheaacd_f_huffman_env_bal_3_0db_idx_table[17];
{0x00000000, 0x00100002, 0x00200006, 0x0030000e, 0x0040001e, 0x0050003e,
0x0060007e, 0x007000fe, 0x008001fe, 0x109007fc, 0x01001ffb, 0x01403ffb,
0x01603ffd, 0x01703ffe, 0x01803fff, 0x10a00ffa, 0x00c01ff7},
// WORD32 ixheaacd_t_huffman_noise_3_0db_idx_table[17];
{0x00000000, 0x00100002, 0x00200006, 0x0030000e, 0x0040001e, 0x0050003e,
0x007000fd, 0x108003f8, 0x02d01fef, 0x03501ff7, 0x03901ffb, 0x03b01ffd,
0x03c01ffe, 0x03d03ffe, 0x03e03fff, 0x109007f2, 0x01d01fdf},
// WORD32 ixheaacd_t_huffman_noise_bal_3_0db_idx_table[11];
{0x00000000, 0x00100002, 0x00200006, 0x1030001c, 0x010000f7, 0x014000fb,
0x016000fd, 0x017000fe, 0x018000ff, 0x1040003a, 0x008000ef},
// WORD32 ixheaacd_t_huffman_env_1_5db_idx_table[27];
{0x00100001, 0x00300005, 0x0050000d, 0x0070001d, 0x0090003d, 0x00b0007d,
0x00d000fd, 0x00f001fd, 0x011003fd, 0x112007fc, 0x21701ffa, 0x31b03ff9,
0x4240fff2, 0x0587ffdf, 0x0687ffef, 0x0707fff7, 0x0747fffb, 0x0767fffd,
0x0777fffe, 0x0787ffff, 0x01400ffb, 0x01903ff7, 0x21d07ff5, 0x2281ffe9,
0x0210ffef, 0x1303ffdb, 0x0387ffbf},
// WORD32 ixheaacd_f_huffman_env_1_5db_idx_table[28];
{0x00100001, 0x00300005, 0x0050000d, 0x0070001d, 0x0090003d, 0x10a0007c,
0x20d000fc, 0x310001fc, 0x016007fb, 0x01a00ffb, 0x01e01ffb, 0x42103ffa,
0x5280fff4, 0x63b3ffec, 0x74a7ffe8, 0x068fffef, 0x070ffff7, 0x074ffffb,
0x076ffffd, 0x077ffffe, 0x078fffff, 0x00c000fb, 0x00f001fb, 0x012003fb,
0x02307ff7, 0x02e1ffef, 0x0417ffdf, 0x058fffdf},
// WORD32 ixheaacd_t_huffman_env_3_0db_idx_table[26];
{0x00000000, 0x00100002, 0x00200006, 0x0030000e, 0x0040001e, 0x0050003e,
0x0060007e, 0x007000fe, 0x008001fe, 0x00a007fd, 0x10b00ffc, 0x01103ffb,
0x21203ffc, 0x3170fff9, 0x02e7ffef, 0x0367fff7, 0x03a7fffb, 0x03c7fffd,
0x03d7fffe, 0x03e7ffff, 0x00d01ffb, 0x21307ffa, 0x2191fff5, 0x0150fff7,
0x11c3ffee, 0x01e7ffdf},
// WORD32 ixheaacd_f_huffman_env_3_0db_idx_table[25];
{0x00000000, 0x00100002, 0x00200006, 0x0030000e, 0x0040001e,
0x0050003e, 0x007000fd, 0x009001fd, 0x00b003fd, 0x00d007fd,
0x00f00ffd, 0x11001ffc, 0x21507ffa, 0x3190fff9, 0x4243fff6,
0x02e7fff7, 0x036ffff7, 0x03affffb, 0x03cffffd, 0x03dffffe,
0x03efffff, 0x01203ffb, 0x0170fff7, 0x01d1fff7, 0x0267ffef},
// const WORD8 start_min[12] =
{7, 7, 10, 11, 12, 16, 16, 17, 24, 32, 35, 48},
// const WORD8 offset_idx[12] =
{5, 5, 4, 4, 4, 3, 2, 1, 0, 6, 6, 6},
// const WORD8 ixheaacd_drc_offset[7][16] =
{{-8, -7, -6, -5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 5, 6, 7},
{-5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 5, 6, 7, 9, 11, 13},
{-5, -3, -2, -1, 0, 1, 2, 3, 4, 5, 6, 7, 9, 11, 13, 16},
{-6, -4, -2, -1, 0, 1, 2, 3, 4, 5, 6, 7, 9, 11, 13, 16},
{-4, -2, -1, 0, 1, 2, 3, 4, 5, 6, 7, 9, 11, 13, 16, 20},
{-2, -1, 0, 1, 2, 3, 4, 5, 6, 7, 9, 11, 13, 16, 20, 24},
{0, 1, 2, 3, 4, 5, 6, 7, 9, 11, 13, 16, 20, 24, 28, 33}},
// const WORD8 stop_min[12] =
{13, 15, 20, 21, 23, 32, 32, 35, 48, 64, 70, 96},
// const WORD8 stop_off[12][14] =
{{0, 2, 4, 6, 8, 11, 14, 18, 22, 26, 31, 37, 44, 51},
{0, 2, 4, 6, 8, 11, 14, 18, 22, 26, 31, 36, 42, 49},
{0, 2, 4, 6, 8, 11, 14, 17, 21, 25, 29, 34, 39, 44},
{0, 2, 4, 6, 8, 11, 14, 17, 20, 24, 28, 33, 38, 43},
{0, 2, 4, 6, 8, 11, 14, 17, 20, 24, 28, 32, 36, 41},
{0, 2, 4, 6, 8, 10, 12, 14, 17, 20, 23, 26, 29, 32},
{0, 2, 4, 6, 8, 10, 12, 14, 17, 20, 23, 26, 29, 32},
{0, 1, 3, 5, 7, 9, 11, 13, 15, 17, 20, 23, 26, 29},
{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 12, 14, 16},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, -1, -2, -3, -4, -5, -6, -6, -6, -6, -6, -6, -6, -6},
{0, -3, -6, -9, -12, -15, -18, -20, -22, -24, -26, -28, -30, -32}}
};
const ia_ps_tables_struct ixheaacd_aac_dec_ps_tables = {
{
// const WORD16 decay_scale_factor[70]=
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x5361, 0x4848, 0x3ea8, 0x4f36, 0x44ab, 0x3b86, 0x4b0b, 0x410e, 0x3864,
0x46e0, 0x3d71, 0x3542, 0x42b5, 0x39d4, 0x3221, 0x3e8a, 0x3637, 0x2eff,
0x3a5f, 0x329a, 0x2bdd, 0x3634, 0x2efd, 0x28bb, 0x3209, 0x2b60, 0x2599,
0x2ddd, 0x27c3, 0x2277, 0x29b2, 0x2426, 0x1f55, 0x2587, 0x2089, 0x1c34,
0x215c, 0x1cec, 0x1912, 0x1d31, 0x194f, 0x15f0, 0x1906, 0x15b2, 0x12ce,
0x14db, 0x1215, 0x0fac, 0x10b0, 0x0e78, 0x0c8a, 0x0c85, 0x0adb, 0x0968,
0x085a, 0x073e, 0x0647, 0x042f, 0x03a0, 0x0325, 0x0000, 0x0000, 0x0000,
}
,
// const WORD16 hyb_resol[3] =
{8, 2, 2},
// const WORD16 rev_link_decay_ser[NO_SERIAL_ALLPASS_LINKS]=
{0x5362, 0x4849, 0x3ea9},
// const WORD16 rev_link_delay_ser[3] =
{3, 4, 5},
// const WORD16 borders_group[NO_IID_GROUPS + 1] =
{4, 5, 0, 1, 2, 3, 7, 6, 8, 9, 3, 4, 5, 6, 7, 8, 9, 11, 14, 18, 23, 35, 64},
// const WORD16 group_shift[6] =
{0, 1, 1, 2, 3, 4},
// const WORD16 group_to_bin[NO_IID_GROUPS] =
{0, 1, 2, 3, 1, 0, 5, 4, 6, 7, 8,
9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19},
// const WORD16 hybrid_to_bin[SUBQMF_GROUPS] =
{0, 1, 2, 3, 1, 0, 5, 4, 6, 7},
// const WORD16 delay_to_bin[32] =
{20, 20, 20, 8, 9, 10, 11, 12, 13, 14, 14, 15, 15, 15, 16, 16, 16,
16, 17, 17, 17, 17, 17, 20, 20, 20, 20, 20, 20, 20, 20, 20
},
// const WORD16 frac_delay_phase_fac_qmf_re_im[24*2]=
{
0,
0,
0,
0,
0,
0,
(WORD16)-0x34ac,
(WORD16)0x74a9,
(WORD16)0x5bec,
(WORD16)0x5914,
(WORD16)0x72f3,
(WORD16)-0x3850,
(WORD16)-0x0e0c,
(WORD16)-0x7f3a,
(WORD16)-0x7c77,
(WORD16)-0x1de2,
(WORD16)-0x4646,
(WORD16)0x6afc,
(WORD16)0x4cdb,
(WORD16)0x665c,
(WORD16)0x7a57,
(WORD16)-0x25a3,
(WORD16)0x0608,
(WORD16)-0x7fdc,
(WORD16)-0x7642,
(WORD16)-0x30fc,
(WORD16)-0x5625,
(WORD16)0x5eac,
(WORD16)0x3be5,
(WORD16)0x711f,
(WORD16)0x7eb9,
(WORD16)-0x1209,
(WORD16)0x19f5,
(WORD16)-0x7d57,
(WORD16)-0x6d23,
(WORD16)-0x42e1,
(WORD16)-0x63e5,
(WORD16)0x5008,
(WORD16)0x2976,
(WORD16)0x7919,
(WORD16)0x7ffc,
(WORD16)0x0203,
(WORD16)0x2d3f,
(WORD16)-0x77bd,
(WORD16)-0x6155,
(WORD16)-0x5321,
},
// const WORD16 frac_delay_phase_fac_qmf_sub_re_im[16*2]=
{
(WORD16)0x7e80, (WORD16)-0x1387, (WORD16)0x72ba, (WORD16)-0x38c3,
(WORD16)0x5c45, (WORD16)-0x58b7, (WORD16)0x3d39, (WORD16)-0x7069,
(WORD16)0x72ba, (WORD16)0x38c3, (WORD16)0x7e80, (WORD16)0x1387,
(WORD16)-0x456f, (WORD16)-0x6b88, (WORD16)0x0506, (WORD16)-0x7fe7,
(WORD16)-0x76a3, (WORD16)-0x300e, (WORD16)-0x7cb2, (WORD16)0x1ce7,
},
// const WORD16 frac_delay_phase_fac_qmf_ser_re_im[3][32]=
{
// const WORD16
{
0,
0,
0,
0,
0,
0,
(WORD16)0x0203,
(WORD16)0x7ffc,
(WORD16)0x7d57,
(WORD16)0x19f5,
(WORD16)0x34ac,
(WORD16)-0x74a9,
(WORD16)-0x665c,
(WORD16)-0x4cdb,
(WORD16)-0x6155,
(WORD16)0x5321,
(WORD16)0x3be5,
(WORD16)0x711f,
(WORD16)0x7b77,
(WORD16)-0x21c7,
(WORD16)-0x0608,
(WORD16)-0x7fdc,
(WORD16)-0x7e18,
(WORD16)-0x1602,
(WORD16)-0x30fc,
(WORD16)0x7642,
(WORD16)0x68b9,
(WORD16)0x499a,
(WORD16)0x5eac,
(WORD16)-0x5625,
(WORD16)-0x3f6b,
(WORD16)-0x6f2f,
(WORD16)-0x7a57,
(WORD16)0x25a3,
(WORD16)0x0a0b,
(WORD16)0x7f9b,
(WORD16)0x7eb9,
(WORD16)0x1209,
(WORD16)0x2d3f,
(WORD16)-0x77bd,
(WORD16)-0x6afc,
(WORD16)-0x4646,
(WORD16)-0x5bec,
(WORD16)0x5914,
(WORD16)0x42e1,
(WORD16)0x6d23,
},
// const WORD16
{
0,
0,
0,
0,
0,
0,
(WORD16)-0x30fc,
(WORD16)-0x7642,
(WORD16)-0x30fc,
(WORD16)0x7642,
(WORD16)0x7642,
(WORD16)-0x30fc,
(WORD16)-0x7642,
(WORD16)-0x30fc,
(WORD16)0x30fc,
(WORD16)0x7642,
(WORD16)0x30fc,
(WORD16)-0x7642,
(WORD16)-0x7642,
(WORD16)0x30fc,
(WORD16)0x7642,
(WORD16)0x30fc,
(WORD16)-0x30fc,
(WORD16)-0x7642,
(WORD16)-0x30fc,
(WORD16)0x7642,
(WORD16)0x7642,
(WORD16)-0x30fc,
(WORD16)-0x7642,
(WORD16)-0x30fc,
(WORD16)0x30fc,
(WORD16)0x7642,
(WORD16)0x30fc,
(WORD16)-0x7642,
(WORD16)-0x7642,
(WORD16)0x30fc,
(WORD16)0x7642,
(WORD16)0x30fc,
(WORD16)-0x30fc,
(WORD16)-0x7642,
(WORD16)-0x30fc,
(WORD16)0x7642,
(WORD16)0x7642,
(WORD16)-0x30fc,
(WORD16)-0x7642,
(WORD16)-0x30fc,
},
// const WORD16
{
0,
0,
0,
0,
0,
0,
(WORD16)-0x6405,
(WORD16)0x4fe0,
(WORD16)0x1894,
(WORD16)0x7d9e,
(WORD16)0x7abf,
(WORD16)0x244a,
(WORD16)0x58ef,
(WORD16)-0x5c0f,
(WORD16)-0x2882,
(WORD16)-0x796c,
(WORD16)-0x7e64,
(WORD16)-0x1439,
(WORD16)-0x4c5f,
(WORD16)0x66b8,
(WORD16)0x37c5,
(WORD16)0x7336,
(WORD16)0x7ff1,
(WORD16)0x03d2,
(WORD16)0x3e8b,
(WORD16)-0x6fae,
(WORD16)-0x461b,
(WORD16)-0x6b18,
(WORD16)-0x7f60,
(WORD16)0x0ca5,
(WORD16)-0x2fae,
(WORD16)0x76ca,
(WORD16)0x5348,
(WORD16)0x6134,
(WORD16)0x7cb2,
(WORD16)-0x1ce7,
(WORD16)0x2007,
(WORD16)-0x7bee,
(WORD16)-0x5f14,
(WORD16)-0x55b3,
(WORD16)-0x77f3,
(WORD16)0x2cae,
(WORD16)-0x0fd8,
(WORD16)0x7f04,
(WORD16)0x694c,
(WORD16)0x48c7,
},
},
// const WORD16 frac_delay_phase_fac_qmf_sub_ser_re_im[3][16]=
{
{
(WORD16)0x7e2e, (WORD16)-0x1583, (WORD16)0x6fed, (WORD16)-0x3e1b,
(WORD16)0x5506, (WORD16)-0x5fae, (WORD16)0x3085, (WORD16)-0x7673,
(WORD16)0x6fed, (WORD16)0x3e1b, (WORD16)0x7e2e, (WORD16)0x1583,
(WORD16)-0x5b38, (WORD16)-0x59cc, (WORD16)-0x0f0b, (WORD16)-0x7f1d,
(WORD16)-0x7f55, (WORD16)-0x0d0c, (WORD16)-0x6b88, (WORD16)0x456f,
},
{
(WORD16)0x7a7d, (WORD16)-0x2528, (WORD16)0x5134, (WORD16)-0x62f2,
(WORD16)0x0c8c, (WORD16)-0x7f62, (WORD16)-0x3c57, (WORD16)-0x70e3,
(WORD16)0x5134, (WORD16)0x62f2, (WORD16)0x7a7d, (WORD16)0x2528,
(WORD16)-0x471d, (WORD16)0x6a6e, (WORD16)-0x7d8a, (WORD16)-0x18f9,
(WORD16)0x471d, (WORD16)0x6a6e, (WORD16)0x7d8a, (WORD16)-0x18f9,
},
{
(WORD16)0x7ed0, (WORD16)-0x1163, (WORD16)0x7574, (WORD16)-0x32e2,
(WORD16)0x636c, (WORD16)-0x509e, (WORD16)0x4a0d, (WORD16)-0x6867,
(WORD16)0x7574, (WORD16)0x32e2, (WORD16)0x7ed0, (WORD16)0x1163,
(WORD16)-0x2a51, (WORD16)-0x78ce, (WORD16)0x1a73, (WORD16)-0x7d3d,
(WORD16)-0x62d1, (WORD16)-0x515c, (WORD16)-0x7eae, (WORD16)-0x1255,
},
},
// const WORD16 scale_factors[NO_IID_LEVELS]=
{(WORD16)0x5a5e, (WORD16)0x59cd, (WORD16)0x58c3, (WORD16)0x564c,
(WORD16)0x52a4, (WORD16)0x4c8c, (WORD16)0x46df, (WORD16)0x4000,
(WORD16)0x384c, (WORD16)0x304c, (WORD16)0x24ea, (WORD16)0x1b4a,
(WORD16)0x11b6, (WORD16)0x0b4e, (WORD16)0x0515},
// const WORD16 scale_factors_fine[NO_IID_LEVELS_FINE] =
{(WORD16)0x5a82, (WORD16)0x5a82, (WORD16)0x5a81, (WORD16)0x5a7f,
(WORD16)0x5a77, (WORD16)0x5a5e, (WORD16)0x5a3a, (WORD16)0x59f2,
(WORD16)0x5965, (WORD16)0x5853, (WORD16)0x564c, (WORD16)0x5417,
(WORD16)0x50ea, (WORD16)0x4c8c, (WORD16)0x46df, (WORD16)0x4000,
(WORD16)0x384c, (WORD16)0x304c, (WORD16)0x288e, (WORD16)0x217a,
(WORD16)0x1b4a, (WORD16)0x13c6, (WORD16)0x0e2b, (WORD16)0x0a18,
(WORD16)0x072b, (WORD16)0x0515, (WORD16)0x02dc, (WORD16)0x019c,
(WORD16)0x00e8, (WORD16)0x0082, (WORD16)0x0049},
// const WORD16 alpha_values[NO_ICC_LEVELS]=
{(WORD16)0x0000, (WORD16)0x0b6b, (WORD16)0x1248, (WORD16)0x1da3,
(WORD16)0x2638, (WORD16)0x3244, (WORD16)0x466b, (WORD16)0x6488},
// const WORD32 p2_6[6] =
{
(WORD32)0x026e, (WORD32)-0x0956, (WORD32)0x272a, (WORD32)0x272a,
(WORD32)-0x0956, (WORD32)0x026e,
},
// const WORD32 p8_13[13] =
{
(WORD32)-0x00f4, (WORD32)-0x02e8, (WORD32)-0x05d2, (WORD32)-0x094d,
(WORD32)-0x0ca7, (WORD32)0x0f19, (WORD32)0x1000, (WORD32)0x0f19,
(WORD32)0x0ca7, (WORD32)0x094d, (WORD32)0x05d2, (WORD32)0x02e8,
(WORD32)0x00f4,
},
// const WORD16 huff_iid_dt[28] =
{
(WORD16)-0x3fff, (WORD16)-0x40fe, (WORD16)-0x3efd, (WORD16)-0x41fc,
(WORD16)-0x3dfb, (WORD16)-0x42fa, (WORD16)-0x3cf9, (WORD16)-0x43f8,
(WORD16)-0x3bf7, (WORD16)-0x44f6, (WORD16)-0x3af5, (WORD16)-0x45f4,
(WORD16)-0x39f3, (WORD16)-0x38f2, (WORD16)-0x46f1, (WORD16)0x1011,
(WORD16)-0x3748, (WORD16)0x1215, (WORD16)0x1314, (WORD16)-0x364e,
(WORD16)-0x4c4c, (WORD16)0x1619, (WORD16)0x1718, (WORD16)-0x4a4a,
(WORD16)-0x4836, (WORD16)0x1a1b, (WORD16)-0x3434, (WORD16)-0x3232,
},
// const WORD16 huff_iid_df[28] =
{
(WORD16)-0x3fff, (WORD16)0x0203, (WORD16)-0x3e41, (WORD16)0x0405,
(WORD16)-0x3d42, (WORD16)0x0607, (WORD16)-0x3c43, (WORD16)0x0809,
(WORD16)-0x433c, (WORD16)-0x3af6, (WORD16)-0x44f5, (WORD16)-0x39f4,
(WORD16)-0x45f3, (WORD16)-0x46f2, (WORD16)-0x38f1, (WORD16)0x1011,
(WORD16)-0x3748, (WORD16)0x1213, (WORD16)-0x3636, (WORD16)0x1415,
(WORD16)-0x4835, (WORD16)0x1618, (WORD16)-0x49e9, (WORD16)-0x4a4e,
(WORD16)0x191a, (WORD16)-0x4c4c, (WORD16)-0x33e5, (WORD16)-0x3232,
},
// const WORD16 huff_icc_dt[14] =
{
(WORD16)-0x3fff, (WORD16)-0x3efe, (WORD16)-0x40fd, (WORD16)-0x3dfc,
(WORD16)-0x41fb, (WORD16)-0x3cfa, (WORD16)-0x42f9, (WORD16)-0x3bf8,
(WORD16)-0x43f7, (WORD16)-0x3af6, (WORD16)-0x44f5, (WORD16)-0x39f4,
(WORD16)-0x45f3, (WORD16)-0x4639,
},
// const WORD16 huff_icc_df[14] =
{
(WORD16)-0x3fff, (WORD16)-0x3efe, (WORD16)-0x40fd, (WORD16)-0x3dfc,
(WORD16)-0x41fb, (WORD16)-0x3cfa, (WORD16)-0x42f9, (WORD16)-0x3bf8,
(WORD16)-0x3af7, (WORD16)-0x43f6, (WORD16)-0x39f5, (WORD16)-0x44f4,
(WORD16)-0x38f3, (WORD16)-0x4547,
},
// const WORD16 huff_iid_dt_fine[60] =
{
(WORD16)0x01c0, (WORD16)-0x3efe, (WORD16)0x03bf, (WORD16)0x043b,
(WORD16)0x0507, (WORD16)0x06bd, (WORD16)-0x433c, (WORD16)-0x3cf8,
(WORD16)0x090b, (WORD16)-0x3af6, (WORD16)-0x453a, (WORD16)0x0c29,
(WORD16)0x0d14, (WORD16)0x0eb9, (WORD16)-0x36f1, (WORD16)-0x34f0,
(WORD16)0x11b3, (WORD16)0x1213, (WORD16)-0x5454, (WORD16)-0x2d2d,
(WORD16)-0x38eb, (WORD16)0x1628, (WORD16)0x171d, (WORD16)-0x32e8,
(WORD16)0x191a, (WORD16)-0x5252, (WORD16)0x1b1c, (WORD16)-0x5926,
(WORD16)-0x5b5b, (WORD16)0x1e25, (WORD16)0x1f22, (WORD16)0x2021,
(WORD16)-0x2222, (WORD16)-0x2424, (WORD16)0x2324, (WORD16)-0x5d5d,
(WORD16)-0x5827, (WORD16)0x26b1, (WORD16)0x27af, (WORD16)-0x5728,
(WORD16)-0x4936, (WORD16)0x2abb, (WORD16)0x2b2c, (WORD16)-0x4738,
(WORD16)0x2d34, (WORD16)0x2e32, (WORD16)0x2fb4, (WORD16)-0x30d0,
(WORD16)-0x2ecf, (WORD16)-0x5629, (WORD16)-0x33cd, (WORD16)-0x4d32,
(WORD16)0x35b7, (WORD16)0x36b5, (WORD16)0x3739, (WORD16)0x38b0,
(WORD16)-0x552a, (WORD16)-0x2fc6, (WORD16)-0x2b2b, (WORD16)-0x413e,
},
// const WORD16 huff_iid_df_fine[60] =
{
(WORD16)0x01c0, (WORD16)0x0204, (WORD16)0x03bf, (WORD16)-0x413e,
(WORD16)-0x3efb, (WORD16)0x0607, (WORD16)-0x423d, (WORD16)0x0809,
(WORD16)-0x433c, (WORD16)0x0a0b, (WORD16)-0x443b, (WORD16)0x0c0d,
(WORD16)-0x453a, (WORD16)0x0e12, (WORD16)-0x38f1, (WORD16)0x10b8,
(WORD16)-0x35ef, (WORD16)-0x4a35, (WORD16)0x1325, (WORD16)-0x37ec,
(WORD16)0x15b7, (WORD16)0x161d, (WORD16)0x17b4, (WORD16)0x18b2,
(WORD16)0x191c, (WORD16)0x1a1b, (WORD16)-0x542b, (WORD16)-0x522d,
(WORD16)-0x502f, (WORD16)-0x33e2, (WORD16)-0x31e1, (WORD16)0x20b1,
(WORD16)0x2122, (WORD16)-0x512e, (WORD16)0x2324, (WORD16)-0x5959,
(WORD16)-0x5b5b, (WORD16)0x26b9, (WORD16)-0x36d9, (WORD16)0x28b6,
(WORD16)0x2932, (WORD16)0x2ab3, (WORD16)-0x30d5, (WORD16)0x2c2f,
(WORD16)0x2d2e, (WORD16)-0x552a, (WORD16)-0x5757, (WORD16)0x3031,
(WORD16)-0x2626, (WORD16)-0x2828, (WORD16)-0x32cd, (WORD16)0x343b,
(WORD16)0x3538, (WORD16)0x3637, (WORD16)-0x2222, (WORD16)-0x2424,
(WORD16)0x393a, (WORD16)-0x5d5d, (WORD16)-0x532c, (WORD16)-0x4f30,
},
0};