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, -