151aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick/****************************************************************************** 251aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick * * 351aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick * Copyright (C) 2018 The Android Open Source Project 451aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick * 551aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick * Licensed under the Apache License, Version 2.0 (the "License"); 651aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick * you may not use this file except in compliance with the License. 751aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick * You may obtain a copy of the License at: 851aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick * 951aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick * http://www.apache.org/licenses/LICENSE-2.0 1051aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick * 1151aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick * Unless required by applicable law or agreed to in writing, software 1251aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick * distributed under the License is distributed on an "AS IS" BASIS, 1351aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1451aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick * See the License for the specific language governing permissions and 1551aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick * limitations under the License. 1651aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick * 1751aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick ***************************************************************************** 1851aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick * Originally developed and contributed by Ittiam Systems Pvt. Ltd, Bangalore 1951aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick*/ 2051aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick#ifndef _IXHEAACD_FUNCTION_SELECTOR_H_ 2151aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick#define _IXHEAACD_FUNCTION_SELECTOR_H_ 2251aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick 2351aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick#include <stdio.h> 2451aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick#include <string.h> 2551aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick#include "ixheaacd_sbr_common.h" 2651aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick#include <ixheaacd_type_def.h> 2751aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick 2851aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick#include "ixheaacd_constants.h" 2951aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick#include "ixheaacd_intrinsics.h" 3051aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick#include "ixheaacd_common_rom.h" 3151aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick#include "ixheaacd_sbrdecsettings.h" 3251aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick#include "ixheaacd_bitbuffer.h" 3351aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick#include "ixheaacd_defines.h" 3451aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick 3551aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick#include "ixheaacd_pns.h" 3651aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick 3751aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick#include <ixheaacd_aac_rom.h> 3851aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick#include "ixheaacd_pulsedata.h" 3951aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick 4051aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick#include "ixheaacd_drc_data_struct.h" 4151aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick 4251aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick#include "ixheaacd_lt_predict.h" 4351aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick 4451aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick#include "ixheaacd_channelinfo.h" 4551aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick#include "ixheaacd_drc_dec.h" 4651aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick 4751aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick#include "ixheaacd_sbrdecoder.h" 4851aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick#include "ixheaacd_sbr_scale.h" 4951aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick#include "ixheaacd_lpp_tran.h" 5051aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick#include "ixheaacd_env_extr_part.h" 5151aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick#include <ixheaacd_sbr_rom.h> 5251aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick#include "ixheaacd_hybrid.h" 5351aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick#include "ixheaacd_ps_dec.h" 5451aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick#include "ixheaacd_env_extr.h" 5551aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick 5651aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick#include "ixheaacd_basic_funcs.h" 5751aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick 5851aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essickextern WORD32 (*ixheaacd_fix_div)(WORD32, WORD32); 5951aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essickextern VOID (*ixheaacd_covariance_matrix_calc)(WORD32 *, 6051aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick ixheaacd_lpp_trans_cov_matrix *, 6151aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick WORD32); 6251aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essickextern VOID (*ixheaacd_covariance_matrix_calc_2)( 6351aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick ixheaacd_lpp_trans_cov_matrix *, WORD32 *, WORD32, WORD16); 6451aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essickextern VOID (*ixheaacd_over_lap_add1)(WORD32 *, WORD32 *, WORD16 *, 6551aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick const WORD16 *, WORD16, WORD16, WORD16); 6651aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essickextern VOID (*ixheaacd_over_lap_add2)(WORD32 *, WORD32 *, WORD32 *, 6751aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick const WORD16 *, WORD16, WORD16, WORD16); 6851aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick 6951aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essickextern VOID (*ixheaacd_decorr_filter1)(ia_ps_dec_struct *, 7051aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick ia_ps_tables_struct *, WORD16 *); 7151aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick 7251aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essickextern VOID (*ixheaacd_decorr_filter2)(ia_ps_dec_struct *, WORD32 *, WORD32 *, 7351aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick WORD32 *, WORD32 *, 7451aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick ia_ps_tables_struct *, WORD16 *); 7551aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick 7651aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essickextern WORD32 (*ixheaacd_divide16_pos)(WORD32, WORD32); 7751aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick 7851aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essickextern VOID (*ixheaacd_decorrelation)(ia_ps_dec_struct *, WORD32 *, WORD32 *, 7951aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick WORD32 *, WORD32 *, 8051aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick ia_ps_tables_struct *); 8151aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick 8251aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essickextern VOID (*ixheaacd_apply_rot)(ia_ps_dec_struct *, WORD32 *, WORD32 *, 8351aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick WORD32 *, WORD32 *, ia_sbr_tables_struct *, 8451aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick const WORD16 *); 8551aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick 8651aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essickextern VOID (*ixheaacd_conv_ergtoamplitudelp)(WORD32, WORD16, WORD16 *, 8751aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick WORD16 *, WORD16 *, WORD16 *); 8851aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick 8951aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essickextern VOID (*ixheaacd_conv_ergtoamplitude)(WORD32, WORD16, WORD16 *, WORD16 *, 9051aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick WORD16 *, WORD16 *); 9151aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick 9251aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essickextern VOID (*ixheaacd_adjust_scale)(WORD32 **, WORD32 **, WORD32, WORD32, 9351aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick WORD32, WORD32, WORD32, FLAG); 9451aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick 9551aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essickextern WORD16 (*ixheaacd_ixheaacd_expsubbandsamples)(WORD32 **, WORD32 **, 9651aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick WORD32, WORD32, WORD32, 9751aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick WORD32, FLAG); 9851aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick 9951aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essickextern VOID (*ixheaacd_enery_calc_per_subband)(WORD32, WORD32, WORD32, WORD32, 10051aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick WORD32, WORD16 *, FLAG, 10151aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick ia_sbr_tables_struct *, 10251aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick WORD32 *); 10351aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick 10451aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essickextern VOID (*ixheaacd_harm_idx_zerotwolp)(WORD32 *, WORD16 *, WORD, WORD16 *, 10551aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick const WORD32 *, WORD16 *, WORD, FLAG, 10651aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick WORD32); 10751aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick 10851aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essickextern VOID (*ixheaacd_tns_ar_filter_fixed)(WORD32 *, WORD32, WORD32, WORD32 *, 10951aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick WORD32, WORD32, WORD); 11051aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick 11151aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essickextern VOID (*ixheaacd_tns_ar_filter)(WORD32 *, WORD32, WORD32, WORD16 *, 11251aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick WORD32, WORD32, WORD, WORD32 *); 11351aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick 11451aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essickextern VOID (*ixheaacd_tns_parcor_lpc_convert)(WORD16 *, WORD16 *, WORD16 *, 11551aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick WORD); 11651aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick 11751aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essickextern WORD32 (*ixheaacd_calc_max_spectral_line)(WORD32 *, WORD32); 11851aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick 11951aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essickextern VOID (*ixheaacd_post_twiddle)(WORD32[], WORD32[], 12051aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick ia_aac_dec_imdct_tables_struct *, WORD); 12151aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick 12251aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essickextern VOID (*ixheaacd_post_twid_overlap_add)(WORD16[], WORD32[], 12351aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick ia_aac_dec_imdct_tables_struct *, 12451aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick WORD, WORD32 *, WORD16, 12551aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick const WORD16 *, WORD16); 12651aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick 12751aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essickextern VOID (*ixheaacd_neg_shift_spec)(WORD32 *, WORD16 *, WORD16, WORD16); 12851aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick 12951aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essickextern VOID (*ixheaacd_spec_to_overlapbuf)(WORD32 *, WORD32 *, WORD32, WORD32); 13051aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick 13151aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essickextern VOID (*ixheaacd_overlap_buf_out)(WORD16 *, WORD32 *, WORD32, 13251aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick const WORD16); 13351aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick 13451aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essickextern VOID (*ixheaacd_overlap_out_copy)(WORD16 *, WORD32 *, WORD32 *, 13551aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick const WORD16); 13651aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick 13751aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essickextern VOID (*ixheaacd_pretwiddle_compute)(WORD32 *, WORD32 *, WORD32 *, 13851aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick ia_aac_dec_imdct_tables_struct *, 13951aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick WORD, WORD32); 14051aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick 14151aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essickextern VOID (*ixheaacd_imdct_using_fft)(ia_aac_dec_imdct_tables_struct *, 14251aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick WORD32, WORD32 *, WORD32 *); 14351aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick 14451aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essickextern VOID (*ixheaacd_complex_fft_p2)(WORD32 *xr, WORD32 *xi, WORD32 nlength, 14551aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick WORD32 fft_mode, WORD32 *preshift); 14651aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick 14751aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essickextern VOID (*ixheaacd_mps_complex_fft_64)(WORD32 *ptr_x, WORD32 *fin_re, 14851aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick WORD32 *fin_im, WORD32 nlength); 14951aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick 15051aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essickextern VOID (*ixheaacd_mps_synt_pre_twiddle)(WORD32 *ptr_in, WORD32 *table_re, 15151aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick WORD32 *table_im, 15251aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick WORD32 resolution); 15351aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick 15451aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essickextern VOID (*ixheaacd_mps_synt_post_twiddle)(WORD32 *ptr_in, WORD32 *table_re, 15551aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick WORD32 *table_im, 15651aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick WORD32 resolution); 15751aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick 15851aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essickextern VOID (*ixheaacd_calc_pre_twid)(WORD32 *ptr_x, WORD32 *r_ptr, 15951aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick WORD32 *i_ptr, WORD32 nlength, 16051aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick const WORD32 *cos_ptr, 16151aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick const WORD32 *sin_ptr); 16251aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick 16351aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essickextern VOID (*ixheaacd_calc_post_twid)(WORD32 *ptr_x, WORD32 *r_ptr, 16451aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick WORD32 *i_ptr, WORD32 nlength, 16551aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick const WORD32 *cos_ptr, 16651aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick const WORD32 *sin_ptr); 16751aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick 16851aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essickextern VOID (*ixheaacd_mps_synt_post_fft_twiddle)( 16951aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick WORD32 resolution, WORD32 *fin_re, WORD32 *fin_im, WORD32 *table_re, 17051aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick WORD32 *table_im, WORD32 *state); 17151aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essickextern VOID (*ixheaacd_mps_synt_out_calc)(WORD32 resolution, WORD32 *out, 17251aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick WORD32 *state, 17351aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick const WORD32 *filter_coeff); 17451aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick 17551aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essickextern VOID (*ixheaacd_fft_15_ld)(WORD32 *inp, WORD32 *op, WORD32 *fft3out, 17651aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick UWORD8 *re_arr_tab_sml_240_ptr); 17751aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick 17851aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essickextern VOID (*ixheaacd_aac_ld_dec_rearrange)(WORD32 *ip, WORD32 *op, 17951aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick WORD32 mdct_len_2, 18051aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick UWORD8 *re_arr_tab); 18151aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick 18251aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essickextern VOID (*ixheaacd_fft32x32_ld)( 18351aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick ia_aac_dec_imdct_tables_struct *imdct_tables_ptr, WORD32 npoints, 18451aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick WORD32 *ptr_x, WORD32 *ptr_y); 18551aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick 18651aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essickextern VOID (*ixheaacd_fft32x32_ld2)( 18751aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick ia_aac_dec_imdct_tables_struct *imdct_tables_ptr, WORD32 npoints, 18851aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick WORD32 *ptr_x, WORD32 *ptr_y); 18951aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick 19051aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essickextern WORD16 (*ixheaacd_neg_expo_inc)(WORD16 neg_expo); 19151aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick 19251aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essickextern VOID (*ixheaacd_inv_dit_fft_8pt)(WORD32 *x, WORD32 *real, WORD32 *imag); 19351aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick 19451aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essickextern VOID (*ixheaacd_scale_factor_process)( 19551aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick WORD32 *x_invquant, WORD16 *scale_fact, WORD no_band, WORD8 *width, 19651aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick WORD32 *scale_tables_ptr, WORD32 total_channels, WORD32 object_type, 19751aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick WORD32 aac_sf_data_resil_flag); 19851aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick 19951aa06e124ba688ca810b25ee0b5bb66678aac14Ray Essick#endif /* _IXHEAACD_FUNCTION_SELECTOR_H_ */ 200