Home | History | Annotate | Download | only in decoder
      1 /******************************************************************************
      2  *                                                                            *
      3  * Copyright (C) 2018 The Android Open Source Project
      4  *
      5  * Licensed under the Apache License, Version 2.0 (the "License");
      6  * you may not use this file except in compliance with the License.
      7  * You may obtain a copy of the License at:
      8  *
      9  * http://www.apache.org/licenses/LICENSE-2.0
     10  *
     11  * Unless required by applicable law or agreed to in writing, software
     12  * distributed under the License is distributed on an "AS IS" BASIS,
     13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     14  * See the License for the specific language governing permissions and
     15  * limitations under the License.
     16  *
     17  *****************************************************************************
     18  * Originally developed and contributed by Ittiam Systems Pvt. Ltd, Bangalore
     19 */
     20 #ifndef IXHEAACD_TNS_USAC_H
     21 #define IXHEAACD_TNS_USAC_H
     22 
     23 #define TNS_MAX_BANDS 49
     24 #define TNS_MAX_ORDER 31
     25 #define TNS_MAX_WIN 8
     26 #define TNS_MAX_FILT 3
     27 
     28 typedef struct {
     29   WORD32 start_band;
     30   WORD32 stop_band;
     31   WORD32 order;
     32   WORD32 direction;
     33   WORD32 coef_compress;
     34   WORD16 coef[TNS_MAX_ORDER];
     35 
     36 } ia_tns_filter_struct;
     37 
     38 typedef struct {
     39   WORD32 n_filt;
     40   WORD32 coef_res;
     41   ia_tns_filter_struct str_filter[TNS_MAX_FILT];
     42 } ia_tns_info_struct;
     43 
     44 typedef struct {
     45   WORD32 n_subblocks;
     46   ia_tns_info_struct str_tns_info[TNS_MAX_WIN];
     47 } ia_tns_frame_info_struct;
     48 
     49 #endif /* IXHEAACD_TNS_USAC_H */
     50