liyujie
2025-08-28 d9927380ed7c8366f762049be9f3fee225860833
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
#ifndef __VDRV_ENC_I_H__
#define __VDRV_ENC_I_H__
 
#ifdef __cplusplus
extern "C" {
#endif /* __cplusplus */
 
#define OVERLAY_PALLETE_BASE_SIZE  1024         /* Öмä¼þÉêÇë¸øµ÷É«°åʹÓõĿռä´óС*/
#define OVERLAY_PIXELS_BUF_BASE_SIZE  50*1024   /* Öмä¼þÉêÇë¸øoverlayÊý¾ÝʹÓõĿռä´óС*/
 
#define MAX_OVERLAY_BLOCK_NUM 40
#define OVERLAY_PALETTE_SIZE  64
#define OVERLAY_DATA_BUF_SIZE  0x40000          /*256k*/
#define OVERLAY_MAX_SRC_GROUP_NUM 20            /* overlay×î¶à°üº¬¶àÉÙ×é×ÊÔ´ */
 
//add
#define OVERLAY_MAX_SRC_INGROUP 13
#define OVERLAY_MAX_LIST_LEN 20
#define EPDK_YES 0
 
 
typedef struct pos_t
{
    unsigned int x;
    unsigned int y;
}pos_t;
 
typedef struct __rectsz_t
{
    unsigned int width;
    unsigned int height;
}__rectsz_t;
 
 
 
typedef struct overlay_pic_info
{
    unsigned char       ID;                 //src id
    __rectsz_t          size;               //for the size of one picture
    unsigned char*      pOverlayPixel;           //the index of the RGB data
}overlay_pic_info;
 
typedef struct overlay_src_init
{
    unsigned char                srcPicNum;                 //src id
    overlay_pic_info      srcPic[OVERLAY_MAX_SRC_INGROUP];
    unsigned int               ppalette_yuv[16];              //the palette of yuv format
    unsigned char                color_num;                 //the color number of the palette
}overlay_src_init;
 
 
typedef struct dis_par
{
    pos_t   pos;               //the position of the log
    unsigned char     total;
    unsigned char     IDlist[OVERLAY_MAX_LIST_LEN];    //the index of the display of the picture
}dis_par;
  /* _MOD_HERB_GINGKO_H_ */
 
 
 
typedef struct overlay_block_header
{
    unsigned int    Next_BlkHdr_Addr;
    unsigned int    hor_plane;
    unsigned int    ver_plane;
    unsigned int    Mb_Pal_Idx;
}overlay_block_header;
 
 
typedef struct overlay_info
{
    unsigned char           isEnabled;                              /* µ±Ç°ÓжàÉÙblock */
    unsigned int            nblock;                                 /* µ±Ç°ÓжàÉÙblock */
    unsigned int            nsrc;                                   /* µ±Ç°ÓжàÉÙ×é×ÊÔ´ */
    overlay_src_init          srcPicGroup[OVERLAY_MAX_SRC_GROUP_NUM]; /* ×ÊÔ´ÐÅÏ¢ */
    dis_par                   dispInfo[MAX_OVERLAY_BLOCK_NUM];        /* ÏÔʾÐÅÏ¢ */
    unsigned char           dispGroupIndex[MAX_OVERLAY_BLOCK_NUM];  /* ÏÔʾͼƬÔÚ×ÊÔ´ÖеÄindex */
 
    overlay_block_header*     pblkHdrTbl;                             /*block header±í*/
    unsigned int            blkHdrTblSize;
    unsigned char*          ppalette;                               /*ÉèÖøø¼Ä´æÆ÷µÄµ÷É«°åÐÅÏ¢µØÖ·*/
    unsigned int            paletteBufSize;
    unsigned char*          pdata;                                  /*ÉèÖøø¼Ä´æÆ÷µÄÊý¾ÝµØÖ·*/
    unsigned int            dataBufSize;
}overlay_info;
 
#ifdef __cplusplus
}
#endif /* __cplusplus */
 
#endif