Home | History | Annotate | Download | only in drc_src
      1 /******************************************************************************
      2  *
      3  * Copyright (C) 2015 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 IMPD_DRC_UNI_PARSER_H
     21 #define IMPD_DRC_UNI_PARSER_H
     22 
     23 WORD32
     24 impd_dec_ducking_scaling(ia_bit_buf_struct* it_bit_buff,
     25                          WORD32* ducking_scaling_flag,
     26                          FLOAT32* ducking_scaling);
     27 
     28 WORD32
     29 impd_parse_loudness_info(ia_bit_buf_struct* it_bit_buff, WORD32 version,
     30                          ia_loudness_info_struct* loudness_info);
     31 
     32 WORD32
     33 impd_parse_loudness_info_set_ext(
     34     ia_bit_buf_struct* it_bit_buff,
     35     ia_drc_loudness_info_set_struct* loudness_info_set);
     36 
     37 WORD32
     38 impd_sel_drc_coeff(
     39     ia_drc_config* drc_config, WORD32 location,
     40     ia_uni_drc_coeffs_struct** str_p_loc_drc_coefficients_uni_drc);
     41 
     42 WORD32
     43 impd_drc_parse_instructions_basic(
     44     ia_bit_buf_struct* it_bit_buff, ia_drc_config* drc_config,
     45     ia_drc_instructions_basic_struct* str_drc_instructions_basic);
     46 
     47 WORD32
     48 impd_parse_drc_instructions_uni_drc(
     49     ia_bit_buf_struct* it_bit_buff, WORD32 version, ia_drc_config* drc_config,
     50     ia_channel_layout_struct* channel_layout,
     51     ia_drc_params_bs_dec_struct* ia_drc_params_struct,
     52     ia_drc_instructions_struct* str_drc_instruction_str);
     53 
     54 WORD32
     55 impd_parse_gain_set_params(ia_bit_buf_struct* it_bit_buff, WORD32 version,
     56                            WORD32* gain_seq_idx,
     57                            ia_gain_set_params_struct* gain_set_params);
     58 
     59 WORD32
     60 impd_drc_parse_coeff(
     61     ia_bit_buf_struct* it_bit_buff, WORD32 version,
     62     ia_drc_params_bs_dec_struct* ia_drc_params_struct,
     63     ia_uni_drc_coeffs_struct* str_p_loc_drc_coefficients_uni_drc);
     64 
     65 WORD32
     66 impd_parse_dwnmix_instructions(
     67     ia_bit_buf_struct* it_bit_buff, WORD32 version,
     68     ia_drc_params_bs_dec_struct* ia_drc_params_struct,
     69     ia_channel_layout_struct* channel_layout,
     70     ia_downmix_instructions_struct* dwnmix_instructions);
     71 
     72 WORD32
     73 impd_parse_drc_config(ia_bit_buf_struct* it_bit_buff,
     74                       ia_drc_params_bs_dec_struct* ia_drc_params_struct,
     75                       ia_drc_config* drc_config);
     76 
     77 WORD32
     78 impd_parse_loudness_info_set(
     79     ia_bit_buf_struct* it_bit_buff,
     80     ia_drc_params_bs_dec_struct* ia_drc_params_struct,
     81     ia_drc_loudness_info_set_struct* loudness_info_set);
     82 
     83 WORD32
     84 impd_parse_drc_gain_sequence(ia_bit_buf_struct* it_bit_buff,
     85                              ia_drc_bits_dec_struct* pstr_drc_uni_bs_dec,
     86                              ia_gain_set_params_struct* gain_set_params,
     87                              ia_drc_gain_sequence_struct* drc_gain_sequence);
     88 
     89 WORD32
     90 impd_parse_uni_drc_gain_ext(ia_bit_buf_struct* it_bit_buff,
     91                             ia_uni_drc_gain_ext_struct* uni_drc_gain_ext);
     92 
     93 WORD32 impd_drc_uni_gain_read(ia_bit_buf_struct* it_bit_buff,
     94                               ia_drc_bits_dec_struct* pstr_drc_uni_bs_dec,
     95                               ia_drc_config* drc_config,
     96                               ia_drc_gain_struct* pstr_uni_drc_gain);
     97 
     98 #endif
     99