FreeCalypso > hg > freecalypso-sw
view gsm-fw/L1/audio_include/l1audio_msgty.h @ 868:d92b110e06e0
doc/Firmware_Architecture written
author | Space Falcon <falcon@ivan.Harhan.ORG> |
---|---|
date | Sun, 17 May 2015 03:45:19 +0000 |
parents | 45bf440cc677 |
children |
line wrap: on
line source
/************* Revision Controle System Header ************* * GSM Layer 1 software * L1AUDIO_MSGTY.H * * Filename l1audio_msgty.h * Copyright 2003 (C) Texas Instruments * ************* Revision Controle System Header *************/ #ifndef _L1AUDIO_MSGTY_H #define _L1AUDIO_MSGTY_H #include "../../include/config.h" #include "../include/l1_confg.h" #if (AUDIO_TASK == 1) #if (OP_RIV_AUDIO == 1) #include "rv_general.h" #endif #if (KEYBEEP) typedef struct { #if (defined _WINDOWS && (OP_RIV_AUDIO == 1)) T_RV_HDR header; #endif UWORD16 d_k_x1_kt0; UWORD16 d_k_x1_kt1; UWORD16 d_dur_kb; } T_MMI_KEYBEEP_REQ; #endif #if (TONE) typedef struct { #if (defined _WINDOWS && (OP_RIV_AUDIO == 1)) T_RV_HDR header; #endif UWORD16 d_k_x1_t0; UWORD16 d_k_x1_t1; UWORD16 d_k_x1_t2; UWORD16 d_pe_rep; UWORD16 d_pe_off; UWORD16 d_se_off; UWORD16 d_bu_off; UWORD16 d_t0_on; UWORD16 d_t0_off; UWORD16 d_t1_on; UWORD16 d_t1_off; UWORD16 d_t2_on; UWORD16 d_t2_off; } T_MMI_TONE_REQ; #endif #if (MELODY_E1) typedef struct { #if (defined _WINDOWS && (OP_RIV_AUDIO == 1)) T_RV_HDR header; #endif UWORD8 session_id; BOOL loopback; UWORD16 oscillator_used_bitmap; } T_MMI_MELODY_REQ; #endif #if (VOICE_MEMO) typedef struct { #if (defined _WINDOWS && (OP_RIV_AUDIO == 1)) T_RV_HDR header; #endif UWORD8 session_id; } T_MMI_VM_PLAY_REQ; typedef struct { #if (defined _WINDOWS && (OP_RIV_AUDIO == 1)) T_RV_HDR header; #endif UWORD8 session_id; UWORD32 maximum_size; BOOL dtx_used; UWORD16 record_coeff_dl; UWORD16 record_coeff_ul; UWORD16 d_k_x1_t0; UWORD16 d_k_x1_t1; UWORD16 d_k_x1_t2; UWORD16 d_pe_rep; UWORD16 d_pe_off; UWORD16 d_se_off; UWORD16 d_bu_off; UWORD16 d_t0_on; UWORD16 d_t0_off; UWORD16 d_t1_on; UWORD16 d_t1_off; UWORD16 d_t2_on; UWORD16 d_t2_off; } T_MMI_VM_RECORD_REQ; typedef struct { UWORD32 recorded_size; } T_L1_VM_RECORD_CON; #if (OP_RIV_AUDIO == 1) typedef struct { T_RV_HDR header; UWORD32 recorded_size; } T_MMI_VM_RECORD_CON; #else typedef T_L1_VM_RECORD_CON T_MMI_VM_RECORD_CON; #endif #endif #if (L1_VOICE_MEMO_AMR) typedef struct { #if (defined _WINDOWS && (OP_RIV_AUDIO == 1)) T_RV_HDR header; #endif UWORD8 session_id; } T_MMI_VM_AMR_PLAY_REQ; typedef struct { #if (defined _WINDOWS && (OP_RIV_AUDIO == 1)) T_RV_HDR header; #endif UWORD8 session_id; UWORD32 maximum_size; BOOL dtx_used; UWORD16 record_coeff_ul; UWORD8 amr_vocoder; } T_MMI_VM_AMR_RECORD_REQ; typedef struct { UWORD32 recorded_size; } T_L1_VM_AMR_RECORD_CON; #if (OP_RIV_AUDIO == 1) typedef struct { T_RV_HDR header; UWORD32 recorded_size; } T_MMI_VM_AMR_RECORD_CON; #else typedef T_L1_VM_AMR_RECORD_CON T_MMI_VM_AMR_RECORD_CON; #endif #endif #if (OP_RIV_AUDIO == 1) #if (L1_AUDIO_DRIVER == 1) typedef struct { UWORD8 channel_id; UWORD16 *p_buffer; } T_L1_AUDIO_DRIVER_IND; #endif #endif #if (SPEECH_RECO) typedef struct { #if (defined _WINDOWS && (OP_RIV_AUDIO == 1)) T_RV_HDR header; #endif UWORD8 database_id; UWORD8 word_index; BOOL speech; UWORD16 *speech_address; } T_MMI_SR_ENROLL_REQ; typedef struct { #if (OP_RIV_AUDIO == 1) T_RV_HDR header; #endif UWORD8 error_id; } T_MMI_SR_ENROLL_STOP_CON; #if (OP_RIV_AUDIO == 1) typedef struct { UWORD8 error_id; } T_L1_SR_ENROLL_STOP_CON; #else typedef T_MMI_SR_ENROLL_STOP_CON T_L1_SR_ENROLL_STOP_CON; #endif typedef struct { #if (defined _WINDOWS && (OP_RIV_AUDIO == 1)) T_RV_HDR header; #endif UWORD8 database_id; UWORD8 word_index; BOOL speech; UWORD16 *speech_address; } T_MMI_SR_UPDATE_REQ; typedef struct { #if (OP_RIV_AUDIO == 1) T_RV_HDR header; #endif UWORD8 error_id; } T_MMI_SR_UPDATE_STOP_CON; #if (OP_RIV_AUDIO == 1) typedef struct { UWORD8 error_id; } T_L1_SR_UPDATE_STOP_CON; #else typedef T_MMI_SR_UPDATE_STOP_CON T_L1_SR_UPDATE_STOP_CON; #endif typedef struct { #if (defined _WINDOWS && (OP_RIV_AUDIO == 1)) T_RV_HDR header; #endif UWORD8 database_id; UWORD8 vocabulary_size; } T_MMI_SR_RECO_REQ; typedef struct { #if (OP_RIV_AUDIO == 1) T_RV_HDR header; #endif UWORD8 error_id; UWORD16 best_word_index; UWORD32 best_word_score; UWORD16 second_best_word_index; UWORD32 second_best_word_score; UWORD16 third_best_word_index; UWORD32 third_best_word_score; UWORD16 fourth_best_word_index; UWORD32 fourth_best_word_score; UWORD16 d_sr_db_level; UWORD16 d_sr_db_noise; UWORD16 d_sr_model_size; } T_MMI_SR_RECO_STOP_CON; typedef struct { UWORD8 error_id; } T_L1_SR_RECO_STOP_CON; #if (OP_RIV_AUDIO == 1) typedef struct { UWORD8 error_id; UWORD16 best_word_index; UWORD32 best_word_score; UWORD16 second_best_word_index; UWORD32 second_best_word_score; UWORD16 third_best_word_index; UWORD32 third_best_word_score; UWORD16 fourth_best_word_index; UWORD32 fourth_best_word_score; UWORD16 d_sr_db_level; UWORD16 d_sr_db_noise; UWORD16 d_sr_model_size; } T_L1_SR_RECO_STOP_IND; #else typedef T_MMI_SR_RECO_STOP_CON T_L1_SR_RECO_STOP_IND; #endif typedef T_L1_SR_RECO_STOP_CON T_L1_SR_PROCESSING_STOP_CON; typedef struct { #if (defined _WINDOWS && (OP_RIV_AUDIO == 1)) T_RV_HDR header; #endif UWORD8 database_id; UWORD8 word_index; UWORD16 *model_address; BOOL speech; UWORD16 *speech_address; UWORD8 vocabulary_size; } T_MMI_SR_UPDATE_CHECK_REQ; typedef T_MMI_SR_RECO_STOP_CON T_MMI_SR_UPDATE_CHECK_STOP_CON; // Background message type typedef struct { #if (OP_RIV_AUDIO == 1) T_RV_HDR header; #endif UWORD8 database_id; UWORD8 model_index; API *model_RAM_address; BOOL speech; UWORD16 *start_buffer; UWORD16 *stop_buffer; UWORD16 *start_address; UWORD16 *stop_address; } T_L1_SRBACK_SAVE_DATA_REQ; typedef struct { #if (OP_RIV_AUDIO == 1) T_RV_HDR header; #endif UWORD8 database_id; UWORD8 model_index; API *model_RAM_address; BOOL CTO_enable; } T_L1_SRBACK_LOAD_MODEL_REQ; typedef struct { #if (OP_RIV_AUDIO == 1) T_RV_HDR header; #endif API *model_RAM_address_input; UWORD16 *model_RAM_address_output; } T_L1_SRBACK_TEMP_SAVE_DATA_REQ; #endif #if (L1_AEC == 1) typedef struct { #if (defined _WINDOWS && (OP_RIV_AUDIO == 1)) T_RV_HDR header; #endif UWORD16 aec_control; #if (L1_NEW_AEC) UWORD16 cont_filter; UWORD16 granularity_att; UWORD16 coef_smooth; UWORD16 es_level_max; UWORD16 fact_vad; UWORD16 thrs_abs; UWORD16 fact_asd_fil; UWORD16 fact_asd_mut; #endif } T_MMI_AEC_REQ; #if (L1_NEW_AEC) typedef struct { UWORD16 es_level; UWORD32 far_end_pow; UWORD32 far_end_noise; } T_L1_AEC_IND; #endif #endif #if (L1_AEC == 2) typedef enum { L1_AQI_AEC_STOP = 0, L1_AQI_AEC_START = 1, L1_AQI_AEC_UPDATE = 2 } T_AEC_CONTROL; typedef struct { WORD16 aec_mode; WORD16 mu; UWORD16 cont_filter; WORD16 scale_input_ul; WORD16 scale_input_dl; WORD16 div_dmax; UWORD16 div_swap_good; UWORD16 div_swap_bad; WORD16 block_init; UWORD16 fact_vad; UWORD16 fact_asd_fil; UWORD16 fact_asd_mut; UWORD16 thrs_abs; UWORD16 es_level_max; UWORD16 granularity_att; UWORD16 coef_smooth; // UWORD16 block_size; } T_MMI_AQI_AEC_PARAMS; typedef struct { #if (defined _WINDOWS && (OP_RIV_AUDIO == 1)) T_RV_HDR header; #endif T_AEC_CONTROL aec_control; T_MMI_AQI_AEC_PARAMS aec_parameters; } T_MMI_AQI_AEC_REQ; typedef enum { L1_AQI_AEC_NO_ACTION = -1, L1_AQI_AEC_STOPPED = 0, L1_AQI_AEC_STARTED = 1, L1_AQI_AEC_UPDATED = 2 } T_AEC_ACTION; typedef struct { #if (defined _WINDOWS && (OP_RIV_AUDIO == 1)) T_RV_HDR header; #endif T_AEC_ACTION aec_action; } T_MMI_AQI_AEC_CON; typedef struct { #if (defined _WINDOWS && (OP_RIV_AUDIO == 1)) T_RV_HDR header; #endif T_AEC_ACTION aec_action; } T_L1_AQI_AEC_CON; #endif// L1_AEC ==2 #if (FIR) typedef struct { #if (defined _WINDOWS && (OP_RIV_AUDIO == 1)) T_RV_HDR header; #endif BOOL fir_loop; UWORD8 update_fir; UWORD16 *fir_ul_coefficient; UWORD16 *fir_dl_coefficient; } T_MMI_AUDIO_FIR_REQ; #endif #if (AUDIO_MODE) typedef struct { #if (defined _WINDOWS && (OP_RIV_AUDIO == 1)) T_RV_HDR header; #endif #if (OP_RIV_AUDIO == 1) UWORD8 audio_mode; #else UWORD16 audio_mode; #endif } T_MMI_AUDIO_MODE; #endif #if (MELODY_E2) typedef struct { #if (OP_RIV_AUDIO == 1) T_RV_HDR header; #endif UWORD8 melody_id; UWORD8 number_of_instrument; UWORD8 waves_table_id[SC_AUDIO_MELODY_E2_MAX_NUMBER_OF_INSTRUMENT]; } T_L1_BACK_MELODY_E2_LOAD_INSTRUMENT_REQ; typedef struct { #if (OP_RIV_AUDIO == 1) T_RV_HDR header; #endif UWORD8 melody_id; } T_L1_BACK_MELODY_E2_LOAD_INSTRUMENT_CON; typedef struct { #if (OP_RIV_AUDIO == 1) T_RV_HDR header; #endif UWORD8 melody_id; UWORD8 number_of_instrument; } T_L1_BACK_MELODY_E2_UNLOAD_INSTRUMENT_REQ; typedef struct { #if (OP_RIV_AUDIO == 1) T_RV_HDR header; #endif UWORD8 melody_id; } T_L1_BACK_MELODY_E2_UNLOAD_INSTRUMENT_CON; typedef struct { #if (defined _WINDOWS && (OP_RIV_AUDIO == 1)) T_RV_HDR header; #endif UWORD8 session_id; BOOL loopback; } T_MMI_MELODY_E2_REQ; #endif #if (L1_CPORT == 1) typedef struct { UWORD16 configuration; UWORD16 ctrl; UWORD8 cpcfr1; UWORD8 cpcfr2; UWORD8 cpcfr3; UWORD8 cpcfr4; UWORD8 cptctl; UWORD8 cpttaddr; UWORD16 cptdat; UWORD16 cptvs; } T_MMI_CPORT_CONFIGURE_REQ; typedef struct { UWORD16 register_id; UWORD16 register_value; } T_L1_CPORT_CONFIGURE_CON; #if (OP_RIV_AUDIO == 1) typedef struct { T_RV_HDR header; UWORD8 register_id; UWORD16 register_value; } T_MMI_CPORT_CONFIGURE_CON; #else typedef T_L1_CPORT_CONFIGURE_CON T_MMI_CPORT_CONFIGURE_CON; #endif #endif #if (L1_EXTERNAL_AUDIO_VOICE_ONOFF == 1) typedef struct { #if (defined _WINDOWS && (OP_RIV_AUDIO == 1)) T_RV_HDR header; #endif UWORD8 onoff_value; } T_MMI_AUDIO_ONOFF_REQ; #endif #if (L1_EXT_MCU_AUDIO_VOICE_ONOFF == 1) typedef struct { #if (defined _WINDOWS && (OP_RIV_AUDIO == 1)) T_RV_HDR header; #endif UWORD8 vul_onoff_value; UWORD8 vdl_onoff_value; } T_MMI_AUDIO_ONOFF_REQ; #endif #if (L1_EXT_AUDIO_MGT == 1) typedef struct { UWORD8 sampling_frequency; UWORD8 DMA_channel_number; UWORD8 data_type; UWORD8 element_number; UWORD16 frame_number; WORD8* source_buffer_address; UWORD8 mono_stereo; UWORD8 session_id; } T_MMI_EXT_AUDIO_MGT_START_REQ; #endif #if (L1_ANR == 1) typedef struct { #if (OP_RIV_AUDIO == 1) T_RV_HDR header; #endif BOOL anr_enable; WORD16 min_gain; WORD8 div_factor_shift; UWORD8 ns_level; } T_MMI_ANR_REQ; #endif #if (L1_ANR == 2) typedef enum { ANR_STOP = 0, ANR_START = 1, ANR_UPDATE = 2 } T_ANR_CONTROL; typedef struct { WORD16 control; WORD16 ns_level; WORD16 tone_ene_th; WORD16 tone_cnt_th; } T_MMI_AQI_ANR_PARAMS; typedef struct { #if (OP_RIV_AUDIO == 1) T_RV_HDR header; #endif T_ANR_CONTROL anr_ul_control; T_MMI_AQI_ANR_PARAMS parameters; } T_MMI_AQI_ANR_REQ; typedef enum { ANR_NO_ACTION = -1, ANR_STOPPED = 0, ANR_STARTED = 1, ANR_UPDATED = 2 } T_ANR_ACTION; typedef struct { #if (OP_RIV_AUDIO == 1) T_RV_HDR header; #endif T_ANR_ACTION anr_ul_action; } T_MMI_AQI_ANR_CON; typedef struct { #if (OP_RIV_AUDIO == 1) T_RV_HDR header; #endif T_ANR_ACTION anr_ul_action; } T_L1_AQI_ANR_CON; #endif #if (L1_IIR == 1) typedef struct { #if (OP_RIV_AUDIO == 1) T_RV_HDR header; #endif BOOL iir_enable; UWORD8 nb_iir_blocks; WORD16 *iir_coefs; UWORD8 nb_fir_coefs; WORD16 *fir_coefs; WORD8 input_scaling; WORD8 fir_scaling; WORD8 input_gain_scaling; WORD8 output_gain_scaling; UWORD16 output_gain; WORD16 feedback; } T_MMI_IIR_REQ; #endif #if (L1_WCM == 1) typedef enum { WCM_STOP = 0, WCM_START = 1, WCM_UPDATE = 2 } T_WCM_CONTROL; typedef struct { WORD16 mode; WORD16 frame_size; WORD16 num_sub_frames; WORD16 ratio; WORD16 threshold; WORD16 gain[16]; } T_MMI_AQI_WCM_PARAMS; typedef struct { #if (OP_RIV_AUDIO == 1) T_RV_HDR header; #endif T_WCM_CONTROL wcm_control; T_MMI_AQI_WCM_PARAMS parameters; } T_MMI_AQI_WCM_REQ; typedef T_MMI_AQI_WCM_REQ T_AQI_WCM_PARAM; typedef enum { WCM_NO_ACTION = -1, WCM_STOPPED = 0, WCM_STARTED = 1, WCM_UPDATED = 2 } T_WCM_ACTION; typedef struct { #if (OP_RIV_AUDIO == 1) T_RV_HDR header; #endif T_WCM_ACTION wcm_action; } T_MMI_AQI_WCM_CON; typedef struct { #if (OP_RIV_AUDIO == 1) T_RV_HDR header; #endif T_WCM_ACTION wcm_action; } T_L1_AQI_WCM_CON; #endif #if (L1_AGC_UL == 1 || L1_AGC_DL == 1) typedef enum { AGC_STOP = 0, AGC_START = 1, AGC_UPDATE = 2 } T_AGC_CONTROL; typedef struct { UWORD16 control; UWORD16 frame_size; WORD16 targeted_level; WORD16 signal_up; WORD16 signal_down; WORD16 max_scale; WORD16 gain_smooth_alpha; WORD16 gain_smooth_alpha_fast; WORD16 gain_smooth_beta; WORD16 gain_smooth_beta_fast; WORD16 gain_intp_flag; } T_MMI_AQI_AGC_PARAMS; typedef enum { AGC_NO_ACTION = -1, AGC_STOPPED = 0, AGC_STARTED = 1, AGC_UPDATED = 2 } T_AGC_ACTION; #endif #if (L1_AGC_UL == 1) typedef struct { #if (OP_RIV_AUDIO == 1) T_RV_HDR header; #endif T_AGC_CONTROL agc_ul_control; T_MMI_AQI_AGC_PARAMS parameters; } T_MMI_AQI_AGC_UL_REQ ; typedef struct { #if (OP_RIV_AUDIO == 1) T_RV_HDR header; #endif T_AGC_ACTION agc_ul_action; } T_MMI_AQI_AGC_UL_CON; typedef struct { #if (OP_RIV_AUDIO == 1) T_RV_HDR header; #endif T_AGC_ACTION agc_ul_action; } T_L1_AQI_AGC_UL_CON; #endif #if (L1_AGC_DL == 1) typedef struct { #if (OP_RIV_AUDIO == 1) T_RV_HDR header; #endif T_AGC_CONTROL agc_dl_control; T_MMI_AQI_AGC_PARAMS parameters; } T_MMI_AQI_AGC_DL_REQ ; typedef struct { #if (OP_RIV_AUDIO == 1) T_RV_HDR header; #endif T_AGC_ACTION agc_dl_action; } T_MMI_AQI_AGC_DL_CON; typedef struct { #if (OP_RIV_AUDIO == 1) T_RV_HDR header; #endif T_AGC_ACTION agc_dl_action; } T_L1_AQI_AGC_DL_CON; #endif #if (L1_IIR == 2) typedef enum { IIR_STOP = 0, IIR_START = 1, IIR_UPDATE = 2 } T_IIR_CONTROL; typedef struct { UWORD16 fir_enable; UWORD16 fir_length; WORD16 fir_shift; WORD16 fir_taps[40]; } T_MMI_AQI_IIR_FIR_PARAMS; typedef struct { WORD16 sos_fact; WORD16 sos_fact_form; WORD16 sos_den[2]; WORD16 sos_num[3]; WORD16 sos_num_form; } T_MMI_AQI_IIR_SINGLE_SOS_PARAMS; typedef struct { UWORD16 sos_enable; UWORD16 sos_number; T_MMI_AQI_IIR_SINGLE_SOS_PARAMS sos_filter[6]; } T_MMI_AQI_IIR_SOS_PARAMS; typedef struct { UWORD16 control; UWORD16 frame_size; UWORD16 fir_swap; T_MMI_AQI_IIR_FIR_PARAMS fir_filter; T_MMI_AQI_IIR_SOS_PARAMS sos_filter; WORD16 gain; } T_MMI_AQI_IIR_PARAMS; typedef struct { #if (OP_RIV_AUDIO == 1) T_RV_HDR header; #endif T_IIR_CONTROL iir_dl_control; T_MMI_AQI_IIR_PARAMS parameters; } T_MMI_AQI_IIR_DL_REQ; typedef T_MMI_AQI_IIR_DL_REQ T_AQI_IIR_PARAM; typedef enum { IIR_NO_ACTION = -1, IIR_STOPPED = 0, IIR_STARTED = 1, IIR_UPDATED = 2 } T_IIR_ACTION; typedef struct { #if (OP_RIV_AUDIO == 1) T_RV_HDR header; #endif T_IIR_ACTION iir_dl_action; } T_MMI_AQI_IIR_DL_CON; typedef struct { #if (OP_RIV_AUDIO == 1) T_RV_HDR header; #endif T_IIR_ACTION iir_dl_action; } T_L1_AQI_IIR_DL_CON; #endif #if (L1_DRC == 1) typedef enum { DRC_STOP = 0, DRC_START = 1, DRC_UPDATE = 2 } T_DRC_CONTROL; typedef struct { WORD16 speech_mode_samp_f; WORD16 num_subbands; WORD16 frame_len; WORD16 expansion_knee_fb_bs; WORD16 expansion_knee_md_hg; WORD16 expansion_ratio_fb_bs; WORD16 expansion_ratio_md_hg; WORD16 max_amplification_fb_bs; WORD16 max_amplification_md_hg; WORD16 compression_knee_fb_bs; WORD16 compression_knee_md_hg; WORD16 compression_ratio_fb_bs; WORD16 compression_ratio_md_hg; WORD16 energy_limiting_th_fb_bs; WORD16 energy_limiting_th_md_hg; WORD16 limiter_threshold_fb; WORD16 limiter_threshold_bs; WORD16 limiter_threshold_md; WORD16 limiter_threshold_hg; WORD16 limiter_hangover_spect_preserve; WORD16 limiter_release_fb_bs; WORD16 limiter_release_md_hg; WORD16 gain_track_fb_bs; WORD16 gain_track_md_hg; WORD16 low_pass_filter[17]; WORD16 mid_band_filter[17]; } T_MMI_AQI_DRC_PARAMS; typedef struct { #if (OP_RIV_AUDIO == 1) T_RV_HDR header; #endif T_DRC_CONTROL drc_dl_control; T_MMI_AQI_DRC_PARAMS parameters; } T_MMI_AQI_DRC_REQ; typedef T_MMI_AQI_DRC_REQ T_AQI_DRC_PARAM; typedef enum { DRC_NO_ACTION = -1, DRC_STOPPED = 0, DRC_STARTED = 1, DRC_UPDATED = 2 } T_DRC_ACTION; typedef struct { #if (OP_RIV_AUDIO == 1) T_RV_HDR header; #endif T_DRC_ACTION drc_dl_action; } T_MMI_AQI_DRC_CON; typedef struct { #if (OP_RIV_AUDIO == 1) T_RV_HDR header; #endif T_DRC_ACTION drc_dl_action; } T_L1_AQI_DRC_CON; #endif //L1_DRC #if (L1_LIMITER == 1) typedef struct { #if (OP_RIV_AUDIO == 1) T_RV_HDR header; #endif BOOL limiter_enable; UWORD16 block_size; UWORD16 slope_update_period; UWORD16 nb_fir_coefs; WORD16 *filter_coefs; WORD16 thr_low_0; WORD16 thr_low_slope; WORD16 thr_high_0; WORD16 thr_high_slope; WORD16 gain_fall; WORD16 gain_rise; } T_MMI_LIMITER_REQ; #endif #if (L1_ES == 1) typedef struct { #if (OP_RIV_AUDIO == 1) T_RV_HDR header; #endif BOOL es_enable; UWORD8 es_behavior; UWORD8 es_mode; WORD16 es_gain_dl; WORD16 es_gain_ul_1; WORD16 es_gain_ul_2; WORD16 tcl_fe_ls_thr; WORD16 tcl_dt_ls_thr; WORD16 tcl_fe_ns_thr; WORD16 tcl_dt_ns_thr; WORD16 tcl_ne_thr; WORD16 ref_ls_pwr; WORD16 switching_time; WORD16 switching_time_dt; WORD16 hang_time; WORD16 gain_lin_dl_vect[4]; WORD16 gain_lin_ul_vect[4]; } T_MMI_ES_REQ; #endif #if (L1_VOCODER_IF_CHANGE == 1) typedef struct { BOOL vocoder_state; // TRUE if enable request, FALSE if disable request } T_MMI_TCH_VOCODER_CFG_REQ; #endif // L1_VOCODER_IF_CHANGE == 1 #if (L1_PCM_EXTRACTION) typedef struct { #if (defined _WINDOWS && (OP_RIV_AUDIO == 1)) T_RV_HDR header; #endif UWORD8 session_id; UWORD8 download_ul_gain; UWORD8 download_dl_gain; UWORD32 maximum_size; } T_MMI_PCM_DOWNLOAD_START_REQ; typedef struct { #if (defined _WINDOWS && (OP_RIV_AUDIO == 1)) T_RV_HDR header; #endif UWORD8 session_id; UWORD8 upload_ul_gain; UWORD8 upload_dl_gain; UWORD32 maximum_size; } T_MMI_PCM_UPLOAD_START_REQ; typedef struct { #if (defined _WINDOWS && (OP_RIV_AUDIO == 1)) T_RV_HDR header; #endif UWORD32 maximum_size; } T_MMI_PCM_DOWNLOAD_STOP_REQ; typedef struct { UWORD32 uploaded_size; } T_L1_PCM_UPLOAD_STOP_CON; #if (OP_RIV_AUDIO == 1) typedef struct { T_RV_HDR header; UWORD32 uploaded_size; } T_MMI_PCM_UPLOAD_STOP_CON; #else typedef T_L1_PCM_UPLOAD_STOP_CON T_MMI_PCM_UPLOAD_STOP_CON; #endif #endif /* L1_PCM_EXTRACTION */ #endif // AUDIO_TASK typedef struct { UWORD8 outen1; UWORD8 outen2; UWORD8 outen3; UWORD8 classD; } T_MMI_OUTEN_CFG_REQ; typedef struct { #if (OP_RIV_AUDIO == 1) T_RV_HDR header; #endif UWORD8 outen1; UWORD8 outen2; UWORD8 outen3; UWORD8 classD; } T_MMI_OUTEN_CFG_READ_CON; #endif // _L1AUDIO_MSGTY_H