• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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 IMPD_DRC_PARSER_H
21 #define IMPD_DRC_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,
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_drc_instructions_struct* str_drc_instruction_str);
51 
52 WORD32
53 impd_parse_gain_set_params(ia_bit_buf_struct* it_bit_buff, WORD32 version,
54                            WORD32* gain_seq_idx,
55                            ia_gain_set_params_struct* gain_set_params);
56 
57 WORD32
58 impd_drc_parse_coeff(
59     ia_bit_buf_struct* it_bit_buff, WORD32 version,
60     ia_drc_params_bs_dec_struct* ia_drc_params_struct,
61     ia_uni_drc_coeffs_struct* str_p_loc_drc_coefficients_uni_drc);
62 
63 WORD32
64 impd_parse_dwnmix_instructions(
65     ia_bit_buf_struct* it_bit_buff, WORD32 version,
66     ia_drc_params_bs_dec_struct* ia_drc_params_struct,
67     ia_channel_layout_struct* channel_layout,
68     ia_downmix_instructions_struct* dwnmix_instructions);
69 
70 WORD32
71 impd_parse_drc_ext_v1(ia_bit_buf_struct* it_bit_buff,
72                       ia_drc_params_bs_dec_struct* ia_drc_params_struct,
73                       ia_drc_config* drc_config,
74                       ia_drc_config_ext* str_drc_config_ext);
75 
76 WORD32
77 impd_parse_drc_config(ia_bit_buf_struct* it_bit_buff,
78                       ia_drc_params_bs_dec_struct* ia_drc_params_struct,
79                       ia_drc_config* drc_config);
80 
81 WORD32
82 impd_parse_loudness_info_set(
83     ia_bit_buf_struct* it_bit_buff,
84     ia_drc_loudness_info_set_struct* loudness_info_set);
85 
86 WORD32
87 impd_parse_drc_gain_sequence(ia_bit_buf_struct* it_bit_buff,
88                              ia_drc_bits_dec_struct* pstr_drc_uni_bs_dec,
89                              ia_gain_set_params_struct* gain_set_params,
90                              ia_drc_gain_sequence_struct* drc_gain_sequence);
91 
92 WORD32
93 impd_parse_uni_drc_gain_ext(ia_bit_buf_struct* it_bit_buff,
94                             ia_uni_drc_gain_ext_struct* uni_drc_gain_ext);
95 
96 WORD32 impd_drc_uni_gain_read(ia_bit_buf_struct* it_bit_buff,
97                               ia_drc_bits_dec_struct* pstr_drc_uni_bs_dec,
98                               ia_drc_config* drc_config,
99                               ia_drc_gain_struct* pstr_uni_drc_gain);
100 
101 #endif
102