📄 aud_main.h
字号:
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
*------------------------------------------------------------------------------
* Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
*==============================================================================
*******************************************************************************/
#ifndef MED_NOT_PRESENT
#ifndef _AUD_MAIN_H
#define _AUD_MAIN_H
typedef enum
{
AUD_EVT_NOWAIT = 0,
AUD_EVT_PLAY = 0x0001,
AUD_EVT_STOP = 0x0002,
AUD_EVT_RECORD = 0x0004,
AUD_EVT_PAUSE = 0x0008,
AUD_EVT_RESUME = 0x0010,
AUD_EVT_BLOCK = 0x0020,
AUD_EVT_FMR_ON = 0x0040,
AUD_EVT_FMR_OFF = 0x0080,
AUD_EVT_FMR_SET = 0x0100,
AUD_EVT_FMR_MUTE = 0x0200,
AUD_EVT_VR_GET_VER = 0x0400,
AUD_EVT_VR_GET_PARAM = 0x0800,
AUD_EVT_VR_SET_PARAM = 0x1000,
AUD_EVT_VR_INIT_RCG = 0x2000,
AUD_EVT_VR_INIT_TRN = 0x4000,
AUD_EVT_VR_VOICE_IN = 0x8000,
AUD_EVT_VR_DEL_TAG = 0x10000,
AUD_EVT_VR_CHECK_TAG = 0x20000,
AUD_EVT_VR_SYNC_DB = 0x40000,
AUD_EVT_VR_PLAY_TAG = 0x80000,
AUD_EVT_VR_GET_DIR = 0x100000,
AUD_EVT_VR_ADD_TAG = 0x200000,
AUD_EVT_VR_ABORT = 0x400000,
AUD_EVT_GET_DURATION = 0x800000,
AUD_EVT_GET_PROGRESS_TIME = 0x1000000,
AUD_EVT_SET_PROGRESS_TIME = 0x2000000,
AUD_EVT_GET_SPECTRUM = 0x4000000,
AUD_EVT_FMR_EVA_THRESHOLD = 0x8000000
}
aud_wait_event_enum;
typedef enum
{
VRSI_EVT_INIT = 0x0001,
VRSI_EVT_ADD_TAGS = 0x0002,
VRSI_EVT_START_CMD_TRN = 0x0004,
VRSI_EVT_START_CMD_RCG = 0x0008,
VRSI_EVT_START_DIGIT_RCG = 0x0010,
VRSI_EVT_START_DIGIT_ADAPT = 0x0020,
VRSI_EVT_PLAY_TAG = 0x0040,
VRSI_EVT_PLAY_TTS = 0x0080,
VRSI_EVT_GET_TAG_NUM = 0x0100,
VRSI_EVT_GET_TAG_INFO = 0x0200,
VRSI_EVT_DEL_TAGS = 0x0400,
VRSI_EVT_RESET_TAGS = 0x0800,
VRSI_EVT_SYNC_DB = 0x1000,
VRSI_EVT_ABORT = 0x2000,
VRSI_EVT_CLOSE = 0x4000
}
vrsi_wait_event_enum;
typedef enum
{
AUD_VR_STATE_IDLE,
AUD_VR_STATE_TRN_SESSION,
AUD_VR_STATE_RCG_SESSION,
AUD_VR_NO_OF_STATE
} aud_vr_state_enum;
typedef enum
{
AUD_VR_SD_SESSION_STAGE_NOT_READY,
AUD_VR_SD_SESSION_STAGE_READY,
AUD_VR_SD_SESSION_STAGE_PROCESS,
AUD_VR_SD_SESSION_STAGE_WAIT,
AUD_VR_SD_SESSION_STAGE_PROCESS_2ND,
AUD_VR_SD_SESSION_NO_OF_STAGE
} aud_vr_sd_session_stage_enum;
typedef enum
{
AUD_CTM_STATE_IDLE,
AUD_CTM_STATE_READY,
AUD_CTM_STATE_CONNECTING,
AUD_CTM_STATE_CONNECTED,
AUD_CTM_STATE_SENDING,
AUD_CTM_NO_OF_STATE
} aud_ctm_state_enum;
typedef struct
{
module_type src_mod;
kal_uint32 session_id;
kal_uint16 db_path[VR_MAX_DB_PATH_LEN + 1];
kal_uint16 group_id;
kal_uint16 word_id;
kal_int16 db_drive;
kal_uint8 state;
kal_uint8 mode;
kal_uint8 lang;
}
aud_vr_context_struct;
typedef struct
{
VRSI_AddTags_Param addtags_param;
VRSI_Tag_Param tag_param;
VRSI_Recog_Result *recog_result;
VRSI_Digit_Recog_Result *dgt_rcg_result;
kal_uint8 *buffer;
kal_uint16 *id_list;
kal_uint8 *grammar;
kal_uint32 session_id;
kal_bool session_on;
kal_uint8 pmp_len;
kal_uint8 state;
const kal_uint16 *pmp_text;
kal_uint16 db_path[VR_MAX_DB_PATH_LEN + 1];
} aud_vrsi_context_struct;
typedef struct
{
kal_uint8 stage;
kal_uint16 id_array[VR_SD_MAX_GROUP_NUM][VR_SD_MAX_GROUP_TAG_NUM];
kal_uint16 id_length[VR_SD_MAX_GROUP_NUM];
kal_uint8 *buffer;
}
aud_vr_sd_context_struct;
typedef struct
{
kal_uint8 head;
kal_uint8 tail;
kal_uint16 queue[CTM_MAX_SEND_REQ_NUM + 1];
} aud_ctm_send_text_req_queue_struct;
typedef struct
{
kal_uint8 state;
kal_uint8 mode;
kal_uint8 first_recv_utf8_byte;
kal_bool more_recv_utf8_byte;
module_type src_mod_id;
kal_uint16 unsent_count; /* count bytes */
aud_ctm_send_text_req_queue_struct send_req_queue;
kal_uint8 *buf_p;
kal_uint8 *ucs2_utf8_buf_p;
kal_uint8 input_vol, output_vol;
} aud_ctm_context_struct;
#define AUD_WAIT_EVENT(evt_) do{ \
kal_uint32 retrieved_events; \
kal_retrieve_eg_events(aud_context_p->aud_event, (evt_), \
KAL_OR_CONSUME, &retrieved_events, KAL_SUSPEND); }while(0)
#define AUD_SET_EVENT(evt_) do{ \
kal_set_eg_events(aud_context_p->aud_event, (evt_),KAL_OR); \
} while(0)
#define VRSI_WAIT_EVENT(evt_) do{ \
kal_uint32 retrieved_events; \
kal_retrieve_eg_events(aud_context_p->vrsi_event, (evt_), \
KAL_OR_CONSUME, &retrieved_events, KAL_SUSPEND); }while(0)
#define VRSI_SET_EVENT(evt_) do{ \
kal_set_eg_events(aud_context_p->vrsi_event, (evt_),KAL_OR); \
} while(0)
#define SET_CURRENT_VOLUME_LEVEL(_m_,_v_) if(aud_context_p->audio_mode<MAX_AUD_MODE_NUM&&_m_<AUD_MAX_VOLUME_TYPE)\
aud_context_p->acoustic_data.volume[aud_context_p->audio_mode][_m_]=_v_
/* for MMA event group */
typedef enum
{
MMA_EVT_NOWAIT = 0,
MMA_EVT_OPEN = 0x0001,
MMA_EVT_CLOSE = 0x0002,
MMA_EVT_PLAY = 0x0004,
MMA_EVT_STOP = 0x0008,
MMA_EVT_PAUSE = 0x0010,
MMA_EVT_RESUME = 0x0020,
MMA_EVT_SET_START_TIME = 0x0040,
MMA_EVT_SET_STOP_TIME = 0x0080,
MMA_EVT_SET_RATE = 0x0100,
MMA_EVT_SET_TEMPO = 0x0200,
MMA_EVT_SET_PITCH = 0x0400,
MMA_EVT_SET_VOLUME = 0x0800,
MMA_EVT_SEND_LONG_MSG = 0x1000,
MMA_EVT_SEND_SHORT_MSG = 0x2000,
MMA_EVT_OPEN_DEVICE = 0x4000,
MMA_EVT_CLOSE_DEVICE = 0x8000,
MMA_EVT_SET_CHANNEL_VOLUME = 0x10000,
MMA_EVT_SET_PROGRAM = 0x20000,
MMA_EVT_SET_DATA = 0x40000
}
mma_wait_event_enum;
#define MMA_WAIT_EVENT(evt_) do{ \
kal_uint32 retrieved_events; \
kal_retrieve_eg_events(aud_context_p->mma_event, (evt_), \
KAL_OR_CONSUME, &retrieved_events, KAL_SUSPEND); }while(0)
#define MMA_SET_EVENT(evt_) kal_set_eg_events(aud_context_p->mma_event, (evt_),KAL_OR)
/*
* typedef enum
* {
* MMA_PLAYER_IMY=0,
* MMA_PLAYER_SMF_1,
* MMA_PLAYER_SMF_2,
* MMA_PLAYER_SMF_3,
* MMA_PLAYER_SMF_4,
* MMA_PLAYER_TONE_S1,
* MMA_PLAYER_TONE_S2,
* MMA_PLAYER_TONE_S3,
* MMA_PLAYER_TONE_S4,
* MMA_PLAYER_WAV_1,
* MMA_PLAYER_WAV_2,
* MMA_PLAYER_WAV_3,
* MMA_PLAYER_XWAV,
* MMA_NO_OF_PLAYER
* }
* mma_player_enum;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -