1 /****************************************************************************** 2 * * 3 * Copyright (C) 2023 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 #pragma once 21 typedef enum { 22 IAAC_ELDEXT_TERM = 0x0, /* Termination tag */ 23 IAAC_ELDEXT_SAOC = 0x1, /* SAOC config */ 24 IAAC_ELDEXT_LDSAC = 0x2, /* LD MPEG Surround config */ 25 IAAC_ELDEXT_DOWNSCALEINFO = 0x3 /* ELD sample rate adaptation */ 26 /* reserved */ 27 } IAAC_ASC_ELD_EXT_TYPE; 28 29 typedef struct { 30 // GA specific parameters 31 WORD32 depends_on_core_coder; 32 WORD32 core_coder_delay; 33 WORD32 extension_flag; 34 35 // common to LD and ELD 36 WORD32 frame_length_flag; 37 WORD32 aac_sec_data_resilience_flag; 38 WORD32 aac_sf_data_resilience_flag; 39 WORD32 aac_spec_data_resilience_flag; 40 41 // ELD specific parameters 42 WORD32 ld_sbr_present_flag; 43 WORD32 ld_sbr_sample_rate; 44 WORD32 ld_sbr_crc_flag; 45 WORD32 eld_ext_type[16]; 46 WORD32 eld_ext_len[16]; 47 ixheaace_pstr_sbr_hdr_data sbr_config; 48 WORD32 num_sac_cfg_bits; 49 UWORD8 sac_cfg_data[1024]; 50 } ia_aace_config_struct; 51