⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 disp_api.h

📁 SAMSUNG 5009的源代码
💻 H
字号:
#ifndef _DISP_API_H_
#define _DISP_API_H_

#define PTM_V_SYNC_60			1500	/* 90000/60 */
#define PTM_V_SYNC_5994		1501	/* 90000/(60*1000/1001) */
#define PTM_V_SYNC_50			1800	/* 90000/50 */

/* AV sync threshold offset 
	If it gets larger, video will be displayed earlier than audio */

#if _USE_DYNAMIC_AV_SYNC
#define DEFAULT_DISP_AV_SYNC_OFFSET	(9000+1800)
	/* 
		changed default value to 10800 because of the AD_Underrun at start 
			--hspark 050829
	*/

#define DEFAULT_DISP_AV_SYNC_STEP		900

#define MAX_DISP_AV_SYNC_OFFSET		19000
#define MIN_DISP_AV_SYNC_OFFSET		1000

extern SINT	gDisp_AVSyncOffset;

#define DISP_AV_SYNC_OFFSET	gDisp_AVSyncOffset
#else
#define DISP_AV_SYNC_OFFSET	9000
#endif

typedef enum {
	PLAY_PREINIT,
	PLAY_PRESTOP,
	PLAY_STOP,
	PLAY_PREPARE,
	PLAY_FIRST,		/* First video available, wait for field ID matching */
	PLAY_NORMAL,
	PLAY_END		/* After last video is ordered, before stop is called */
} DISP_PlayState_et;

#if _USE_DYNAMIC_AV_SYNC
BOOL iDISP_extAudioBufferUnderrun(VOID);
BOOL iDISP_extVideoBufferUnderrun(VOID);
VOID iDISP_extResetAVSyncOffset(VOID);
#endif

VOID iDISP_PreInit(VOID);
VOID iDISP_DeInit(VOID);
VOID iDISP_Play(VOID);
VOID iDISP_PlayMem(VOID);
VOID iDISP_Stop(VOID);
VOID iDISP_SetStartPts(GenPtm_st *pStart_pts);
VOID iDISP_SetCurrentPtm(GenPtm_st *pPtm);
BOOL iDISP_GetCurrentPtm(GenPtm_st *pPtm);
VOID iDISP_SetRefVideoPtm(GenPtm_st *pPtm);
BOOL iDISP_GetRefVideoPtm(GenPtm_st *pPtm);
BOOL iDISP_extAudioBufferUnderrun(VOID);
DISP_PlayState_et iDISP_GetPlayState(VOID);
BM_NODE * iDISP_GetCurVideoFrame(VOID);
VOID iDISP_FreeCurVideoFrame(VOID);
VOID iDISP_RequestBpicRelease(VOID);
S5H_VideoInputStreamFormat_t iDISP_GetInputStreamFormat(VOID);
VOID iDISP_StartTrickPlay(VOID);
SSHORT iDISP_GetPsOffsetFromStream(VOID);
BOOL iDISP_IsProgFrame(VOID);
UINT iDISP_GetCurrentVideoLba(void);
VOID iDISP_SetCurrentVideoLba(UINT offset); /*Jiangshanbin 060104*/
VOID iDISP_SetAudioReady(VOID);
FieldRateConv_t iDISP_GetFieldRateConvInfo(VOID);
VOID iDISP_ClearLogoDisplayed(VOID);
BOOL iDISP_IsLogoDisplayed(VOID);

VOID iDISP_SetFirstVideo(UINT first_video_display_index, VideoFrameInfo_st *pVideo_info);
VOID iDISP_SetLastVideo(VOID);
VOID iDISP_SetCurVideo(UINT display_index, VideoFrameInfo_st *pVideo_info);
VOID iDISP_GetCurVideo(UINT *pDisplay_index, VideoFrameInfo_st **pVideo_info);
VOID iDISP_SetCurVideoStill(VOID);
BOOL iDISP_GetCurVideoStill(VOID);
BOOL iDISP_GetNeedNextPic(VOID);
VOID iDISP_SetVpShadowConfig(VOID);
VOID iDISP_SwitchToRefPicForStop(VOID);
BOOL iDISP_IsPreStopState(VOID);
#if _USE_B2R_ZOOM_CHANGE
VOID iDISP_SetDecodeRangeChanged(VOID);
#endif
VOID iDISP_DecNextVideo(VOID);
BOOL iDISP_GetDecAlreadyIssued(VOID);
BOOL iDISP_IsVsyncHandleDuration(VOID);
#if !(_USE_VD_VP_HANDSHAKE)	
VOID iDISP_SetRefPicHandshake(VOID);
#endif
VOID iDISP_Order(BOOL is_v_sync_shadow);
VOID iDISP_SwitchToRefPicInAdvance(BOOL is_v_sync_shadow);
#if _USE_FSMC
VOID iDISP_EnableFsmc(BOOL enable, UINT src_vert_size);
VOID iDISP_SetRewinded(BOOL rewinded);
#endif
VOID iDISP_StartAudioStreamChange(VOID);
BOOL iDISP_AudioChangeAllowed(VOID);
VOID iDISP_SetAudioOnlyStream(VOID);

#if _USE_HANDLE_B2R_LAST_MB_ERROR
VOID iDISP_SetRestartRewind(VOID);
#endif

VOID iDISP_ResetPtmIncrease(VOID);
#if (_USE_REAL_INTERLACE) && !(_USE_FSMC)
void iDISP_SwitchVpModeInZoom(UINT src_vert_size);
#endif
#if _USE_REAL_INTERLACE
BOOL iDISP_NeedSwitchToBob(UINT src_vert_size);
#endif

#if _USE_FIX_SVCD_ZOOM_BUG
BOOL iDISP_IsZoomChangeProhibited(VOID);
#endif

#if _USE_QUICK_HANDLE_CMD_RDY
/* (20051226,ishan) */
void iDISP_QuickOrderDec(UINT pic_struc, BOOL top_field_first, BOOL prog_frame, UINT vert_size);
VOID iDISP_PostSetVpShadowConfig(VOID);
#endif

#endif

⌨️ 快捷键说明

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