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

📄 disp.h

📁 ct952 source code use for Digital Frame Photo
💻 H
字号:
#ifndef __DISP_H__#define __DISP_H__#ifdef __cplusplus        extern  "C"     {#endif#ifndef AP_FRAMEWORK#define AVSYNC_ENABLE#endif#ifndef     __OSWRAP_H__#include "oswrap.h"#endif // __OSWRAP_H__typedef struct  tagDISP_CTRL{    DWORD   dwFY_Addr;    DWORD   dwFC_Addr;    DWORD   dwPTS;    volatile DWORD   dwTR;    SHORT   sFrame_center_horizontal_offset[3];    // SHORT   sframe_center_vertical_offset[3];    WORD    wNumber_of_frame_center_offsets;    BYTE    bGroup;    BYTE    bFieldNum;    BYTE    bTopField;    BYTE    bSrcFrame;    BYTE    bDispFrame;    BYTE    bPrevFrame;    BYTE    bBFR_Mode;#ifdef SUPPORT_N_STRIPE    BYTE    bNStripe_Mode;#endif} DISP_CTRL, *PDISP_CTRL;typedef struct  tagDIGESTVIDEO_INFO{    WIN_PARAMETER   DigestVideo;    DWORD           dwDestAddrY;    DWORD           dwDestAddrUV;    DWORD           dwDeFlicker_Addr;} DIGESTVIDEO_INFO, *PDIGESTVIDEO_INFO;// copying is permitted with restriction, NO APStypedef struct  tagCGMSA_DATA{    DWORD           dwStatus;    // 0:Unused 1: Ready 2: In Used    ULONG_UNION     ulunCGMSData[3];} CGMSA_DATA, *PCGMSA_DATA;#define     DISP_CGMSA_UNUSED           (0)#define     DISP_CGMSA_READY            (1)#define     DISP_CGMSA_INUSED           (2)typedef struct  tagAPTS_INFO{    DWORD   dwPTS;    DWORD   dwReserved;    ULONGLONG_UNION    ullAddress;} APTS_INFO, *PAPTS_INFO;#define     APTS_NUM                    (16)#define     APTS_MASK                   (APTS_NUM-1)#define     DISP_UNKNOWN_NEWSTC         (0x00000)       // F/W issue VideoMaster or AudioMaster to do initial value.// Wait Previous bitstream Ending#define     DISP_WAIT_SPU_DONE          (0x00010)       // Wait last SPU Done// Wait Next bitstream Playing#define     DISP_WAIT_STC_UPDATE        (0x01000)       // Wait Video/ or Audio Update STC#define     DISP_VIDEO_STC_UPDATED      (0x01100)       // Update STC by Video#define     DISP_AUDIO_STC_UPDATED      (0x01200)       // Update STC by Audio#define     DISP_STC_UPDATED            (0x01300)       // Update STC by Video/ or Audio// Cancel NewSTC control#define     DISP_CANCEL_NEWSTC          (0x10000)       // F/W force to cancel NewSTC (dis-continue -> continue)#define     DISP_STC_UNINITIALED        (0x20000)       // A/V don't update yet!#define     PTS_OVER                    (6L)#define     PTS_OVERFLOW                (0x60000L)#define     PTS_OVERFLOW_MAX            (0x150000L)#define     NULL_PTS                    (0xFFFFFFFFL)#define     NULL_TR                     (0xFFFFFFFFL)#define     NULL_FRAME                  (5)#define     DISP_FRAMEHALT              (0x10)                                        #define     DISP_MAINVIDEO              (0x1)#define     DISP_PIP                    (0x2)#define     DISP_OSD                    (0x4)#define     DISP_SP1                    (0x8)#define     DISP_SP2                    (0x10)#define     DISP_SPDEC                  (0x20)                                        #define     DISP_MISC                   (0x1)#define     DISP_TVMODE                 (0x2)#define     DISP_MAINVIDEOSET           (0x4)#define     DISP_PIPSET                 (0x8)#define     DISP_SLIDESHOW              (0x10)#define     DISP_SETPALETTE             (0x20)                                        #define     MODE_COLORBAR               (0x08)#define     MODE_PAL                    (0x10)#define     MODE_PAL_RGB                (0x11)#define     MODE_PAL_YUV                (0x12)#define     MODE_PAL_VGA                (0x13)#define     MODE_PAL_NORMAL             (0x14)#define     MODE_NTSC                   (0x20)#define     MODE_NTSC_RGB               (0x21)#define     MODE_NTSC_YUV               (0x22)#define     MODE_NTSC_VGA               (0x23)#define     MODE_NTSC_NORMAL            (0x24)/*#define     MODE_HDTV                   (0x40)#define     MODE_HDTV_RGB               (0x41)#define     MODE_HDTV_YUV               (0x42)#define     MODE_HDTV_VGA               (0x43)*/#define     MODE_TFT                    (0x40)#define     MODE_TFT_ANALOG             (0x45)#define     MODE_TFT_DIGITAL            (0x46)#define     MODE_PSCAN                  (0x80)#define     MODE_RGB                    (0x1)#define     MODE_YUV                    (0x2)#define     MODE_VGA                    (0x3)#define     MODE_NORMAL                 (0x4)#define     SLIDESHOW_RESET             (0)#define     SLIDESHOW_COVERUP           (1)#define     SLIDESHOW_COVERDOWN         (2)#define     SLIDESHOW_COVERLEFT         (3|0x80)#define     SLIDESHOW_COVERRIGHT        (4|0x80)#define     SLIDESHOW_UNCOVERUP         (5)#define     SLIDESHOW_UNCOVERDOWN       (6)#define     SLIDESHOW_UNCOVERLEFT       (7|0x80)#define     SLIDESHOW_UNCOVERRIGHT      (8|0x80)#define     SLIDESHOW_WIPEUP            (9)#define     SLIDESHOW_WIPEDOWN          (10)#define     SLIDESHOW_WIPELEFT          (11|0x80)#define     SLIDESHOW_WIPERIGHT         (12|0x80)#define     SLIDESHOW_PUSHUP            (13)#define     SLIDESHOW_PUSHDOWN          (14)#define     SLIDESHOW_PUSHLEFT          (15|0x80)#define     SLIDESHOW_PUSHRIGHT         (16|0x80)#define     SLIDESHOW_BOXIN             (20)#define     SLIDESHOW_BOXOUT            (21)#define     SLIDESHOW_FADE              (22)#define     SLIDESHOW_QUERY             (0xFF)                                        #define     SLIDESHOW_RET_PREPARE       (0)#define     SLIDESHOW_RET_UNFINISH      (1)#define     SLIDESHOW_RET_OK            (2)#define     SLIDESHOW_RET_UNSUPPORT     (3)                                        #define     DISP_ADDCONTRAST            (0)#define     DISP_SUBCONTRAST            (1)                                        #define     DISP_BRIGHT                 (0)#define     DISP_DARK                   (1)                                        #define     DISP_MAIN_BG                (0)#define     DISP_PIP_BG                 (1)#define     DISP_PIP_BORDER             (2)                                        // OSD EFFECT                           #define     DISP_OSD1X                  (0)#define     DISP_OSD2X                  (1)#define     DISP_OSD8BIT                (0)#define     DISP_OSD4BIT                (1)                                        #define     DISP_FRAME0                 (0)#define     DISP_FRAME1                 (1)#define     DISP_FRAME2                 (2)#define     DISP_FRAME3                 (3)#define     DISP_NEXTVSYNC              (0xF)                                        // The size of NTSC/PAL                 #define     HSIZE_NTSC_PAL              (720)#define     HSIZE_NTSC                  (720)#define     HSIZE_PAL                   (720)#define     VSIZE_NTSC                  (480)#define     VSIZE_PAL                   (576)                                        #define     HSTART_NTSC                 (132)#define     HSTART_PAL                  (141)#define     VSTART_NTSC                 (43)#define     VSTART_PAL                  (45)#define     OHT_NTSC                    (858)#define     OHT_PAL                     (864)#define     OVT_NTSC                    (525)#define     OVT_PAL                     (625)                                        #define     FRAMERATE_NTSC              (30 * 2)#define     FRAMERATE_PAL               (25 * 2)#define     FRAMERATE_TFT_DIGITAL       (37)                                        #define     TVSYNC_WIDTH                (20)#define     TVSYNC_HEIGHT               (10)#define     TFTSYNC_WIDTH               (1)#define     TFTSYNC_HEIGHT              (1)                                        #define     DISP_VIDEO_ON               (0x1)#define     DISP_VIDEO_READY            (0x2)#define     DISP_FORCE_ONEFIELD_FW      (0x1)#define     DISP_ONEFIELD               (0x2)#define     DISP_INFO_SETPALETTE_DONE   (0x1)#define     DISP_UNFREEZE_STC           (0x0)#define     DISP_FORCE_FREEZE_STC       (0x1)#define     DISP_WAIT_NEXT_STC          (0x2)#define     CHECK_CNT                   (2)#define     INT_LINE16_NO               (2)#define     DISP_CCO_EN                 (0x0200)#define     DISP_CCE_EN                 (0x0400)#define     DISP_WSSO_EN                (0x0800)#define     DISP_WSSE_EN                (0x1000)VOID    DISP_EnableDigestCopy(DWORD dwEnable);VOID    DISP_DelayVSYNC(DWORD dwVSYNC);VOID    DISP_FrameCopy(PDIGESTVIDEO_INFO DigestVideo_Info, DWORD dwFrameIdx);VOID    DISP_STCFreeze(DWORD dwSTC, DWORD dwCondition);VOID    DISP_UpdateSTC( DWORD dwPTS, DWORD dwNotify );VOID    DISP_UpdateNewSTC(DWORD dwSTC);VOID    DISP_VBIDataSet(DWORD dwWSS_D_E, DWORD dwWSS_D_O, DWORD dwWSS_CGMSEn);VOID    DISP_MonitorVBICtrl(VOID);VOID    DISP_PSMode(DWORD dwEnable);VOID    DISP_VideoMaster(DWORD dwEnable, DWORD dwOverRunPTS);VOID    DISP_ForceOneField(DWORD dwEnable);VOID    DISP_NewSTC(DWORD dwSTC, DWORD dwFlag);VOID    DISP_MainVideoSet(PWIN_PARAMETER MainVideo, DWORD dwSrcW, DWORD dwSrcH, DWORD dwFrameIdx);VOID    DISP_TVModeSet(DWORD dwMode, WORD wHStart, WORD wVStart);VOID    DISP_PIPSet(PWIN_PARAMETER PIP, DWORD dwSrcW, DWORD dwSrcH, DWORD dwFrameIdx);VOID    DISP_PIPBorderSet(DWORD dwWidth, DWORD dwHeight, DWORD dwEnable);VOID    DISP_DigestSet(PDIGESTVIDEO_INFO DigestVideo_Info);VOID    DISP_AdjustContrast (SHORT sValue);VOID    DISP_AdjustBright (SHORT sValue);VOID    DISP_SetPalette(DWORD *pdwPalette);VOID    DISP_OSDHighLight(PWIN_PARAMETER OSDBRK, SHORT sBRKAdjust);VOID    DISP_FrameBufferMode(DWORD dwFBRMode, DWORD dwBFRMode);VOID    DISP_OSDSet(PWIN_PARAMETER OSD, DWORD dwOSDWidth, DWORD dwOSDHeight);// VOID    DISP_OSDEffect(DWORD dwBlend, DWORD dwMode);VOID    DISP_OSDSetMixRatio(DWORD dwBlend);VOID    DISP_OSDSetColorMode(DWORD dwMode);VOID    DISP_FrameBufferSet(DWORD dwF0Adr, DWORD dwF1Adr, DWORD dwF2Adr, DWORD dwF3Adr, DWORD dwYMax);VOID    DISP_BGColorSet(WIN_COLOR Color, DWORD dwWindow);VOID    DISP_Clip(PWIN_PARAMETER ClipArea, DWORD dwFrameIdx, DWORD dwWindow);VOID    DISP_Display(DWORD dwFrameIdx, DWORD dwWindow);VOID    DISP_ForceDisplay(DWORD dwFrameIdx, DWORD dwWindow);VOID    DISP_DisplayCtrl(DWORD dwWindow, DWORD dwEnable);VOID    DISP_OneFieldCtrl(DWORD dwWindow, DWORD dwEnable);DWORD   DISP_ShowEffect(DWORD dwEffectCase, DWORD dwStep, DWORD dwFrame);VOID    DISP_Vsync(VOID);VOID    DISP_ScreenEnd(DWORD dwSTC);DWORD   DISP_QueryAvailableBuffer(VOID);VOID    ISR_DISPSaveClearStatus( VOID );VOID    ISR_VSYNC(VOID);/////////////////////////////////////////////////////////////////////// Global Variable Area/////////////////////////////////////////////////////////////////////// extern FLAG_T  __fDISPInfo;extern DISP_CTRL  __DISPFrameInfo[4];extern CGMSA_DATA  __sCGMSA_DATA[3];extern APTS_INFO __APTS_Info[APTS_NUM]; // Record Audio PTS & its addressextern DWORD   __dwDISPTR;extern volatile DWORD  __dwVSYNC;extern DWORD   __dwOSD_Region_Base;extern DWORD   __dwM_sel;extern DWORD   __dwDISPSlowCnt;extern DWORD   __dwDISPSlowLevel;extern DWORD   __dwDISPMode;extern DWORD   __dwVideo_en;extern DWORD   __dwFrame_Rate;extern DWORD   __dwOutputRate;extern DWORD   __dwVideoMaster;extern DWORD   __dwSTCUpdated;extern DWORD   __dwNewSTCStatus;extern DWORD   __dwDISP_PTS;extern DWORD   __dwFBRMode;extern DWORD   __dwBFRMode;extern DWORD   __dwAPTS_Rp;extern DWORD   __dwAPTS_Wp;#ifdef __cplusplus        }#endif#endif

⌨️ 快捷键说明

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