📄 ad_messages.h
字号:
/******************************************************************************
* Filename : AD_Messages.h
* Start : 2004. 11. 15
* By : Hongsik Park
* Contact : hongsik7.park@samsung.com
* Description :
******************************************************************************
*/
#ifndef _AD_MESSAGES_H_
#define _AD_MESSAGES_H_
typedef enum {
AUDIO_MG_NULL = 0,
AUDIO_MG_CTRL, /* play, pause, stop, resume*/
AUDIO_MG_ATTR, /* equalize, output mode , ...*/
AUDIO_MG_TEST
} AUDIO_MSG_GROUPID;
/*
Message define for Control
*/
typedef enum {
AUDIO_CTRL_NULL = 0,
AUDIO_CTRL_PRE_INIT, /* call when system booting time */
AUDIO_CTRL_INIT, /* call when stream type is decided*/
AUDIO_CTRL_PLAY, /* call when stream input buffer is available */
AUDIO_CTRL_PAUSE, /* call when stream input buffer is available */
AUDIO_CTRL_RESUME, /* call when stream input buffer is available */
AUDIO_CTRL_IMMEDIATE_STOP, /* call to flush when stream input buffer is available */
// AUDIO_CTRL_FLUSHSTOP, /* call to use up all buffers with current setting */
// AUDIO_CTRL_PLAY /* call when stream input buffer is available */
AUDIO_CTRL_ERROR, /* Error occured at decoder level will be reported to Audio Manager Task by this message */
AUDIO_CTRL_DEINIT, /* call to flush when stream input buffer is available */
AUDIO_CTRL_V2_IMMEDIATE_STOP /* call to flush when stream input buffer is available */
} AUDIO_CTRL_ID_t;
typedef struct {
S5H_AudioCodingMode_t audcodmd;
UINT streamID; /* decoding audio stream number */
} AM_CTRL_INIT_t;
typedef struct {
UINT bPlayWithVideo; /* decoding audio stream number */
} AM_CTRL_PLAY_t;
typedef struct {
UINT nErrorNumber; /* decoding audio stream number */
} AM_CTRL_ERROR_t;
typedef struct {
AUDIO_CTRL_ID_t ctrl;
union {
AM_CTRL_INIT_t param_init;
AM_CTRL_PLAY_t param_play;
AM_CTRL_ERROR_t param_error;
} p;
} AUDIO_CTRL_t;
/*
Message define for Attribute
*/
typedef enum {
AUDIO_ATTR_NULL = 0,
AUDIO_ATTR_EQUALIZER, /* play, pause, stop */
AUDIO_ATTR_DUALMODE
} AUDIO_ATTR_ID_t;
/* Audio Attribute Messages */
typedef enum {
AUDIO_EQUALIZER_OFF = 0,
AUDIO_EQUALIZER_TYPE1,
AUDIO_EQUALIZER_TYPE2,
AUDIO_EQUALIZER_TYPE3,
AUDIO_EQUALIZER_TYPE4
} AM_EQAULIZER_t;
/* Audio Attribute Messages */
typedef enum {
AUDIO_DUALMODE_OFF = 0,
AUDIO_DUALMODE_ON
} AM_DUALMODE_t;
typedef struct {
AUDIO_ATTR_ID_t ctrl;
union {
AM_EQAULIZER_t equalizer;
AM_DUALMODE_t dual;
} p;
} AUDIO_ATTR_t;
typedef union {
AUDIO_ATTR_t attr;
AUDIO_CTRL_t ctrl;
} AUDIO_MSG_TYPE;
typedef struct {
UINT comm; /* reserved UINT for communication purpose */
AUDIO_MSG_GROUPID msg_groupid;
AUDIO_MSG_TYPE msg;
} AUDIO_Msg_t;
typedef enum {
AUDIO_DEC_INIT,
AUDIO_DEC_RETRY_PLAY,
AUDIO_DEC_PLAY,
AUDIO_DEC_STOP,
AUDIO_DEC_PAUSE, /* To support ADM-Decoding at Pause mode, add AUDIO_DEC_PAUSE -- 050709 hspark */
AUDIO_DEC_CHANGEMODE_PLAY, /* To support playmode change -- 050817 hspark */
AUDIO_DEC_CHANGEMODE_PLAYPAUSE, /* PLAY_WITH_PAUSE -- 050817 hspark */
AUDIO_DEC_CHANGEMODE_PAUSE, /* PAUSE -- 050817 hspark */
AUDIO_DEC_CHANGEMODE_STOP, /* STOP -- 050817 hspark */
AUDIO_DEC_CHANGEMODE_IMMEDIATE_STOP
} AUDIO_DEC_MESSAGE;
typedef struct {
UINT comm; /* reserved UINT for communication purpose */
AUDIO_DEC_MESSAGE msg_id;
IAD_PLAY_MODE_t new_playmode;
} AUDIO_DecodingMsg_t;
/*
Messages for Audio Decoder
*/
typedef enum {
IPS_NULL = 0,
IPS_PREINIT,
IPS_INIT,
IPS_PREPLAY, /* if "parse stream" is done, then it's IPS_PREPLAY state */
IPS_PLAY,
IPS_PAUSE,
IPS_STOP
} AUDIO_DEC_STATE_t;
typedef enum {
AD_CMD_HW_INIT = 0,
AD_CMD_POWERON_RESET,
AD_CMD_PARSE_STREAM,
AD_CMD_DECODE_ONE_FRAME,
AD_CMD_SET_PROPERTY
} AUDIO_DEC_CMD_TYPE;
typedef enum {
DECODER_BUFFER_STATE_OK = 0,
DECODER_BUFFER_STATE_FAIL,
DECODER_BUFFER_STATE_FATAL_ERROR
} AUDIO_DEC_BUFFER_STATE;
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -