93 lines
2.8 KiB
C
Executable File
93 lines
2.8 KiB
C
Executable File
/**
|
|
@brief Header file of vf_gfx module.\n
|
|
This file contains the functions which is related to vf_gfx in the chip.
|
|
|
|
@file vf_gfx.h
|
|
|
|
@ingroup mhdal
|
|
|
|
@note Nothing.
|
|
|
|
Copyright Novatek Microelectronics Corp. 2018. All rights reserved.
|
|
*/
|
|
|
|
#ifndef _VF_GFX_H_
|
|
#define _VF_GFX_H_
|
|
|
|
/********************************************************************
|
|
INCLUDE FILES
|
|
********************************************************************/
|
|
#include "hdal.h"
|
|
|
|
/********************************************************************
|
|
MACRO CONSTANT DEFINITIONS
|
|
********************************************************************/
|
|
|
|
#define VF_GFX_LINEOFFSET_PATTERN 0x80000000
|
|
|
|
/********************************************************************
|
|
MACRO FUNCTION DEFINITIONS
|
|
********************************************************************/
|
|
|
|
/********************************************************************
|
|
TYPE DEFINITION
|
|
********************************************************************/
|
|
|
|
typedef struct _VF_GFX_COPY {
|
|
HD_VIDEO_FRAME src_img;
|
|
HD_VIDEO_FRAME dst_img;
|
|
HD_IRECT src_region;
|
|
HD_IPOINT dst_pos;
|
|
UINT32 colorkey;
|
|
UINT32 alpha;
|
|
UINT32 engine;
|
|
} VF_GFX_COPY;
|
|
|
|
typedef struct _VF_GFX_SCALE {
|
|
HD_VIDEO_FRAME src_img;
|
|
HD_VIDEO_FRAME dst_img;
|
|
HD_IRECT src_region;
|
|
HD_IRECT dst_region;
|
|
HD_GFX_SCALE_QUALITY quality;
|
|
UINT32 engine;
|
|
} VF_GFX_SCALE;
|
|
|
|
typedef struct _VF_GFX_ROTATE {
|
|
HD_VIDEO_FRAME src_img;
|
|
HD_VIDEO_FRAME dst_img;
|
|
HD_IRECT src_region;
|
|
HD_IPOINT dst_pos;
|
|
UINT32 angle;
|
|
UINT32 engine;
|
|
} VF_GFX_ROTATE;
|
|
|
|
typedef struct _VF_GFX_DRAW_RECT {
|
|
HD_VIDEO_FRAME dst_img;
|
|
UINT32 color;
|
|
HD_IRECT rect;
|
|
HD_GFX_RECT_TYPE type;
|
|
UINT32 thickness;
|
|
UINT32 engine;
|
|
} VF_GFX_DRAW_RECT;
|
|
|
|
/********************************************************************
|
|
EXTERN VARIABLES & FUNCTION PROTOTYPES DECLARATIONS
|
|
********************************************************************/
|
|
|
|
HD_RESULT vf_init(HD_VIDEO_FRAME *p_img_buf, UINT32 width, UINT32 height, HD_VIDEO_PXLFMT pxlfmt, UINT32 lineoff, UINT32 addr, UINT32 available_size);
|
|
|
|
HD_RESULT vf_init_ex(HD_VIDEO_FRAME *p_img_buf, UINT32 width, UINT32 height, HD_VIDEO_PXLFMT pxlfmt, UINT32 lineoff[HD_VIDEO_MAX_PLANE], UINT32 pxladdr[HD_VIDEO_MAX_PLANE]);
|
|
|
|
HD_RESULT vf_gfx_copy(VF_GFX_COPY *p_param);
|
|
|
|
HD_RESULT vf_gfx_scale(VF_GFX_SCALE *p_param, int flush);
|
|
|
|
HD_RESULT vf_gfx_rotate(VF_GFX_ROTATE *p_param);
|
|
|
|
HD_RESULT vf_gfx_draw_rect(VF_GFX_DRAW_RECT *p_param);
|
|
|
|
HD_RESULT vf_gfx_I8_colorkey(VF_GFX_COPY *p_param);
|
|
|
|
#endif //_VF_GFX_H_
|
|
|