par_fanfare_types.h

来自「SAMSUNG 5009的源代码」· C头文件 代码 · 共 125 行

H
125
字号
/******************************************************************************
 * File name  :  FANFARE_PAR_Types.h
 * Start date :  2006.06.23
 * By         :  
 * Contact    : 
 * Description:  
 ******************************************************************************
 */
  
#ifndef _FANFARE_PAR_TYPES_H_
#define _FANFARE_PAR_TYPES_H_

#ifdef	__cplusplus
extern	"C" {
#endif


/*******************************************************
 *       Define
 ******************************************************/
typedef		signed int	FANFARE_RETURN;
#define	FANFARE_RET_NO_ERROR					0
#define	FANFARE_RET_ERROR						-1
#define	FANFARE_RET_OUTBUF_READY				-2
#define	FANFARE_RET_OUTBUF_NOT_READY		-3
#define	FANFARE_RET_STOP							-4
#define	FANFARE_RET_START						-5


typedef enum{
	FANFARE_MODE_WMA,
	FANFARE_MODE_MP3,
	FANFARE_MODE_JPG,
	FANFARE_MODE_MPG,		/* it is not spec for fanfare but for generalization purpose only */
	FANFARE_MODE_MPG_ES,	/* parsing for MPG video elementary stream only. so, it is Not spec for fanfare */
	FANFARE_MODE_MPG_PS,	/* parsing for MPG program stream, it is Not spec for fanfare */
/* 
*	MPG - >	1. MPG_PS : start with pack start code(0x000001BA)
*				2. MPG_ES : starts with sequence header code(0x000001B3)
*/
	FANFARE_MODE_UNKNOWN
}FANFARE_Type_Mode_et;


typedef enum{
	FANFARE_PLAY,
	FANFARE_CONTINUE,	
	FANFARE_STOP,

	FANFARE_VBV_OUTBUF_READY,
	FANFARE_AUD_OUTBUF_READY	
}FANFARE_Command_et;

typedef struct{
	UCHAR *pStart_Addr;
	UCHAR *pEnd_Addr;
	UINT	Size;
	SysSema_t	*pSema;

	FANFARE_Type_Mode_et		Type_Mode;
	FANFARE_Command_et		Command_Mode;
}FANFARE_Msg_st;


typedef	 enum{
	MPG_PS_NULL_STATE,
	MPG_PS_PACK_STATE,
	MPG_PS_SYSTEM_STATE,
	MPG_PS_PACKET_STATE
}MPG_PS_State_et;


typedef struct{
	UCHAR *pCurPtr;
	UCHAR *pEndPtr;
	UINT	size;
	MPG_PS_State_et	MPG_PS_State;
}FANFARE_InputManager_st;

typedef struct{
	UCHAR *pbAddr;
	UCHAR *pCurPtr;
	UCHAR *pEndPtr;
}FANFARE_BufferManager_st;


typedef struct{
FANFARE_BufferManager_st		audio;
FANFARE_BufferManager_st		video;
}FANFARE_OutputManager_st;


typedef enum{
	FANFARE_NULL_STATE,
	FANFARE_PLAY_STATE,
	FANFARE_STOP_STATE,
	
	FANFARE_OUTBUF_NOT_READY_STATE,
	FANFARE_OUTBUF_READY_STATE
}FANFARE_State_et;

typedef	 enum{
	FANFARE_NOT_INITAILIZED,
	FANFARE_INITAILIZED,
}FANFARE_Status_et;


typedef struct{
	FANFARE_Msg_st	Msg;
	FANFARE_Type_Mode_et		Type_Mode;
	FANFARE_Command_et		Command;

	FANFARE_InputManager_st		InMgr;
	FANFARE_OutputManager_st		OutMgr;
	FANFARE_State_et				State;

	FANFARE_Status_et				status;
}FANFARE_st;

#ifdef	__cplusplus
}
#endif

#endif /* _FANFARE_PAR_TYPES_H_ */

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?