ISVP-SDK  3.12.0
Ingenic Smart Video Platform SDK
imp_osd.h
Go to the documentation of this file.
1 /*
2  * IMP OSD header file.
3  *
4  * Copyright (C) 2015 Ingenic Semiconductor Co.,Ltd
5  */
6 
7 #ifndef __IMP_OSD_H__
8 #define __IMP_OSD_H__
9 
10 #include "imp_common.h"
11 
12 #ifdef __cplusplus
13 #if __cplusplus
14 extern "C"
15 {
16 #endif
17 #endif /* __cplusplus */
18 
62 #define INVHANDLE (-1)
63 
67 typedef int IMPRgnHandle;
68 
72 typedef enum {
73  OSD_BLACK = 0xff000000,
74  OSD_WHITE = 0xffffffff,
75  OSD_RED = 0xffff0000,
76  OSD_GREEN = 0xff00ff00,
77  OSD_BLUE = 0xff0000ff,
79 
83 typedef enum {
91 
95 typedef struct {
96  uint32_t color;
97  uint32_t linewidth;
98 } lineRectData;
99 
103 typedef struct {
104  uint32_t color;
105 } coverData;
106 
107 
111 typedef struct {
112  void *pData;
113 } picData;
114 
118 typedef union {
119  void *bitmapData;
124 
128 typedef struct {
133 } IMPOSDRgnAttr;
134 
138 typedef struct {
139  uint64_t ts;
140  uint64_t minus;
141  uint64_t plus;
143 
147 typedef struct {
148  int show;
150  float scalex;
151  float scaley;
152  int gAlphaEn;
153  int fgAlhpa;
154  int bgAlhpa;
155  int layer;
157 
158 
173 int IMP_OSD_CreateGroup(int grpNum);
174 
189 int IMP_OSD_DestroyGroup(int grpNum);
190 
207 int IMP_OSD_AttachToGroup(IMPCell *from, IMPCell *to);
208 
223 IMPRgnHandle IMP_OSD_CreateRgn(IMPOSDRgnAttr *prAttr);
224 
238 void IMP_OSD_DestroyRgn(IMPRgnHandle handle);
239 
256 int IMP_OSD_RegisterRgn(IMPRgnHandle handle, int grpNum, IMPOSDGrpRgnAttr *pgrAttr);
257 
273 int IMP_OSD_UnRegisterRgn(IMPRgnHandle handle, int grpNum);
274 
290 int IMP_OSD_SetRgnAttr(IMPRgnHandle handle, IMPOSDRgnAttr *prAttr);
291 
308 int IMP_OSD_SetRgnAttrWithTimestamp(IMPRgnHandle handle, IMPOSDRgnAttr *prAttr, IMPOSDRgnTimestamp *prTs);
309 
325 int IMP_OSD_GetRgnAttr(IMPRgnHandle handle, IMPOSDRgnAttr *prAttr);
326 
342 int IMP_OSD_UpdateRgnAttrData(IMPRgnHandle handle, IMPOSDRgnAttrData *prAttrData);
343 
360 int IMP_OSD_SetGrpRgnAttr(IMPRgnHandle handle, int grpNum, IMPOSDGrpRgnAttr *pgrAttr);
361 
378 int IMP_OSD_GetGrpRgnAttr(IMPRgnHandle handle, int grpNum, IMPOSDGrpRgnAttr *pgrAttr);
379 
396 int IMP_OSD_ShowRgn(IMPRgnHandle handle, int grpNum, int showFlag);
397 
412 int IMP_OSD_Start(int grpNum);
413 
428 int IMP_OSD_Stop(int grpNum);
429 
434 #ifdef __cplusplus
435 #if __cplusplus
436 }
437 #endif
438 #endif /* __cplusplus */
439 
440 #endif /* __IMP_OSD_H__ */
IMPPoint offPos
display start coordinates
Definition: imp_osd.h:149
void * pData
picture data pointer
Definition: imp_osd.h:112
rectangle cover
Definition: imp_osd.h:88
float scalex
zoom x parameters
Definition: imp_osd.h:150
rectangle
Definition: imp_osd.h:86
OSD group region attribute.
Definition: imp_osd.h:147
float scaley
zoom y parameters
Definition: imp_osd.h:151
int IMP_OSD_SetRgnAttrWithTimestamp(IMPRgnHandle handle, IMPOSDRgnAttr *prAttr, IMPOSDRgnTimestamp *prTs)
Set region properties and effective time.
coverData coverData
cover data
Definition: imp_osd.h:121
uint32_t linewidth
line width
Definition: imp_osd.h:97
int IMP_OSD_SetGrpRgnAttr(IMPRgnHandle handle, int grpNum, IMPOSDGrpRgnAttr *pgrAttr)
Set OSD group region attributes.
IMPOsdRgnType type
OSD region type.
Definition: imp_osd.h:129
blue
Definition: imp_osd.h:77
OSD region picture data.
Definition: imp_osd.h:111
IMPOSDRgnAttrData data
OSD region attribute data.
Definition: imp_osd.h:132
red
Definition: imp_osd.h:75
line
Definition: imp_osd.h:85
green
Definition: imp_osd.h:76
OSD region attribute data.
Definition: imp_osd.h:128
OSD region attribute data.
Definition: imp_osd.h:118
int IMP_OSD_Stop(int grpNum)
Set the display to stop the OSD group.
int IMP_OSD_UnRegisterRgn(IMPRgnHandle handle, int grpNum)
Register OSD region.
IMPPixelFormat fmt
point format
Definition: imp_osd.h:131
int IMP_OSD_GetRgnAttr(IMPRgnHandle handle, IMPOSDRgnAttr *prAttr)
Get region attribute.
uint32_t color
color, only supports bgra color format
Definition: imp_osd.h:104
undefined region type
Definition: imp_osd.h:84
uint64_t ts
timestamp
Definition: imp_osd.h:139
int IMP_OSD_Start(int grpNum)
Set start OSD group display.
int IMP_OSD_DestroyGroup(int grpNum)
destory OSD group
int gAlphaEn
Alpha switch.
Definition: imp_osd.h:152
OSD region line and rectangle data.
Definition: imp_osd.h:95
IMPOsdRgnType
OSD region type.
Definition: imp_osd.h:83
int IMP_OSD_ShowRgn(IMPRgnHandle handle, int grpNum, int showFlag)
Set whether the group region is displayed or not.
white
Definition: imp_osd.h:74
int IMPRgnHandle
OSD region handle.
Definition: imp_osd.h:67
IMPRgnHandle IMP_OSD_CreateRgn(IMPOSDRgnAttr *prAttr)
Create OSD region.
int IMP_OSD_SetRgnAttr(IMPRgnHandle handle, IMPOSDRgnAttr *prAttr)
Set region properties.
uint32_t color
color,only supports OSD_WHITE,OSD_BLACK,OSD_RED three formats
Definition: imp_osd.h:96
uint64_t plus
max to timestamp
Definition: imp_osd.h:141
OSD Rgn vaild timestamp.
Definition: imp_osd.h:138
picData picData
picture data
Definition: imp_osd.h:122
int fgAlhpa
prospect Alpha
Definition: imp_osd.h:153
int IMP_OSD_RegisterRgn(IMPRgnHandle handle, int grpNum, IMPOSDGrpRgnAttr *pgrAttr)
Register OSD region.
void * bitmapData
bitmapData data
Definition: imp_osd.h:119
int layer
display layer
Definition: imp_osd.h:155
int IMP_OSD_CreateGroup(int grpNum)
create OSD group
int IMP_OSD_UpdateRgnAttrData(IMPRgnHandle handle, IMPOSDRgnAttrData *prAttrData)
Update the regional data attribute, only for OSD_REG_BITMAP and OSD_REG_PIC regional types...
IMP point coordinate information.
Definition: imp_common.h:141
int IMP_OSD_GetGrpRgnAttr(IMPRgnHandle handle, int grpNum, IMPOSDGrpRgnAttr *pgrAttr)
Get OSD group region attributes.
lineRectData lineRectData
line, rectangle data
Definition: imp_osd.h:120
int show
display variable
Definition: imp_osd.h:148
IMPRect rect
rectangle data
Definition: imp_osd.h:130
void IMP_OSD_DestroyRgn(IMPRgnHandle handle)
Destory OSD region.
IMPPixelFormat
IMP image format definition.
Definition: imp_common.h:90
IMPCell enumeration definition.
Definition: imp_common.h:45
picture, suitable for Logo or time stamp
Definition: imp_osd.h:89
dot matrix image
Definition: imp_osd.h:87
OSD region cover data.
Definition: imp_osd.h:103
SDK-T15 Public data structure header file.
uint64_t minus
mix to timestamp
Definition: imp_osd.h:140
IMPOsdColour
OSD color type, color format is bgra.
Definition: imp_osd.h:72
black
Definition: imp_osd.h:73
int bgAlhpa
background Alpha
Definition: imp_osd.h:154
int IMP_OSD_AttachToGroup(IMPCell *from, IMPCell *to)
Adding OSD group to the system.
IMP Rectangle area information.
Definition: imp_common.h:160