FreeCalypso > hg > freecalypso-sw
view gsm-fw/L1/audio_include/l1audio_msgty.h @ 992:a7b0b426f9ca
target-utils: boot ROM UART autodetection revamped
The new implementation should work with both the familiar Calypso C035
boot ROM version found in our regular targets as well as the older
Calypso F741979B version found on the vintage D-Sample board.
author | Mychaela Falconia <falcon@ivan.Harhan.ORG> |
---|---|
date | Wed, 30 Dec 2015 21:28:41 +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