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_CREATE_H
     21 #define IXHEAACD_CREATE_H
     22 
     23 typedef struct {
     24   struct ia_bit_buf_struct dec_bit_buf;
     25   ia_frame_data_struct str_frame_data;
     26   ia_usac_data_struct str_usac_data;
     27 } ia_dec_data_struct;
     28 
     29 WORD32 ixheaacd_frm_data_init(ia_audio_specific_config_struct *pstr_audio_conf,
     30                               ia_dec_data_struct *pstr_dec_data);
     31 
     32 WORD32 ixheaacd_decode_create(ia_exhaacplus_dec_api_struct *dec_handle,
     33                               ia_dec_data_struct *pstr_dec_data,
     34                               WORD32 tracks_for_decoder);
     35 
     36 WORD32 ixheaacd_decode_free(pVOID codec_handle);
     37 ia_handle_sbr_dec_inst_struct ixheaacd_init_sbr(
     38     WORD32 sample_rate_dec, WORD32 samp_per_frame, FLAG *down_sample_flag,
     39     VOID *sbr_persistent_mem_v, WORD32 *ptr_overlap_buf, WORD channel,
     40     WORD ps_enable, WORD sbr_ratio_idx, WORD output_frame_size, WORD *use_hbe,
     41     VOID *p_usac_dflt_header, ia_sbr_header_data_struct str_sbr_config,
     42     WORD audio_object_type);
     43 
     44 VOID ixheaacd_setesbr_flags(VOID *sbr_persistent_mem_v, FLAG pvc_flag,
     45                             FLAG hbe_flag, FLAG inter_tes_flag);
     46 
     47 #endif
     48