#pragma once
#define MAX_DRC_GAIN_BAND_COUNT (50)
#define MAX_DRC_FRAME_SIZE (4096)
#define DRC_OUT_BITBUFFER_SIZE (4096)
typedef struct {
ia_drc_enc_params_struct str_enc_params;
ia_drc_uni_drc_config_struct str_uni_drc_config;
ia_drc_loudness_info_set_struct str_enc_loudness_info_set;
ia_drc_uni_drc_gain_ext_struct str_enc_gain_extension;
ia_drc_gain_enc_struct str_gain_enc;
UWORD8 bit_buf_base_cfg[MAX_DRC_PAYLOAD_BYTES];
ia_bit_buf_struct str_bit_buf_cfg;
WORD32 drc_config_data_size_bit;
UWORD8 bit_buf_base_cfg_ext[MAX_DRC_PAYLOAD_BYTES];
ia_bit_buf_struct str_bit_buf_cfg_ext;
WORD32 drc_config_ext_data_size_bit;
UWORD8 bit_buf_base_cfg_tmp[MAX_DRC_PAYLOAD_BYTES];
ia_bit_buf_struct str_bit_buf_cfg_tmp;
UWORD8 drc_payload_data[MAX_DRC_PAYLOAD_BYTES];
FLOAT32 gain_buffer[MAX_DRC_GAIN_BAND_COUNT][MAX_DRC_FRAME_SIZE];
UWORD8 bit_buf_base_out[DRC_OUT_BITBUFFER_SIZE];
ia_bit_buf_struct str_bit_buf_out;
UWORD8 is_first_drc_process_complete;
VOID *drc_scratch_mem;
WORD32 drc_scratch_used;
} ia_drc_enc_state;