OSD模块,可在视频流上叠加图片、位图、直线、矩形框
更多...
|
int | IMP_OSD_CreateGroup (int grpNum) |
| 创建OSD组 更多...
|
|
int | IMP_OSD_DestroyGroup (int grpNum) |
| 销毁OSD组 更多...
|
|
int | IMP_OSD_AttachToGroup (IMPCell *from, IMPCell *to) |
| 将OSD组加入到系统中 更多...
|
|
IMPRgnHandle | IMP_OSD_CreateRgn (IMPOSDRgnAttr *prAttr) |
| 创建OSD区域 更多...
|
|
void | IMP_OSD_DestroyRgn (IMPRgnHandle handle) |
| 销毁OSD区域 更多...
|
|
int | IMP_OSD_RegisterRgn (IMPRgnHandle handle, int grpNum, IMPOSDGrpRgnAttr *pgrAttr) |
| 注册OSD区域 更多...
|
|
int | IMP_OSD_UnRegisterRgn (IMPRgnHandle handle, int grpNum) |
| 注销OSD区域 更多...
|
|
int | IMP_OSD_SetRgnAttr (IMPRgnHandle handle, IMPOSDRgnAttr *prAttr) |
| 设置区域属性 更多...
|
|
int | IMP_OSD_SetRgnAttrWithTimestamp (IMPRgnHandle handle, IMPOSDRgnAttr *prAttr, IMPOSDRgnTimestamp *prTs) |
| 设置区域属性和生效时间 更多...
|
|
int | IMP_OSD_GetRgnAttr (IMPRgnHandle handle, IMPOSDRgnAttr *prAttr) |
| 获取区域属性 更多...
|
|
int | IMP_OSD_UpdateRgnAttrData (IMPRgnHandle handle, IMPOSDRgnAttrData *prAttrData) |
| 更新区域数据属性,只针对OSD_REG_BITMAP和OSD_REG_PIC的区域类型 更多...
|
|
int | IMP_OSD_SetGrpRgnAttr (IMPRgnHandle handle, int grpNum, IMPOSDGrpRgnAttr *pgrAttr) |
| 设置OSD组区域属性 更多...
|
|
int | IMP_OSD_GetGrpRgnAttr (IMPRgnHandle handle, int grpNum, IMPOSDGrpRgnAttr *pgrAttr) |
| 获取OSD组区域属性 更多...
|
|
int | IMP_OSD_ShowRgn (IMPRgnHandle handle, int grpNum, int showFlag) |
| 设置组区域是否显示 更多...
|
|
int | IMP_OSD_Start (int grpNum) |
| 设置开始OSD组的显示 更多...
|
|
int | IMP_OSD_Stop (int grpNum) |
| 设置停止OSD组的显示 更多...
|
|
OSD模块,可在视频流上叠加图片、位图、直线、矩形框
1 模块介绍
OSD的全称是On-Screen Display。模块的功能就是在每张片源中叠加线条、图片等信息。
2 相关概念
2.1 Region
Region即是叠加区域,在API中简称Rgn。每个Region具有一定的图像信息,可以经过OSD模块叠加后,与背景图像合为一张图片。 对于图片的叠加,还可以实现Alpha效果。关于各种叠加类型的详细介绍请参考osd_region_type。
2.1 Region type
Region有几种类型,分别为:
OSD_REG_LINE:直线
OSD_REG_RECT:矩形框
OSD_REG_BITMAP:位图
OSD_REG_COVER:遮挡
OSD_REG_PIC:图片
其中,位图与图片的区别是,位图仅进行像素的单色覆盖,而图片是RGBA图像的Alpha叠加。
3 模块功能
OSD模块支持线条、矩形框、位图叠加、矩形遮挡和图片叠加。 线条、矩形框和位图采用软件实现;矩形遮挡和图片叠加采用硬件实现。
4 模块使用
OSD的使用一般有以下几个步骤
- 创建OSD组
- 绑定OSD组到系统中
- 创建OSD区域
- 注册OSD区域到OSD组中
- 设置OSD组区域属性和区域属性
- 设置OSD功能开关
OSD颜色类型,颜色格式为bgra.
枚举值 |
---|
OSD_BLACK |
黑色
|
OSD_WHITE |
白色
|
OSD_RED |
红色
|
OSD_GREEN |
绿色
|
OSD_BLUE |
蓝色
|
OSD区域类型
枚举值 |
---|
OSD_REG_INV |
未定义区域类型
|
OSD_REG_LINE |
线
|
OSD_REG_RECT |
矩形
|
OSD_REG_BITMAP |
点阵图片
|
OSD_REG_COVER |
矩形遮挡
|
OSD_REG_PIC |
图片,适合用作Logo或时间戳
|
将OSD组加入到系统中
- 参数
-
[in] | from | OSD单元 |
[in] | to | 系统中其他单元 |
- 返回值
-
- 注意
- 无。
int IMP_OSD_CreateGroup |
( |
int |
grpNum | ) |
|
创建OSD组
- 参数
-
[in] | grpNum | OSD组号,取值范围: [0, NR_MAX_OSD_GROUPS - 1] |
- 返回值
-
- 注意
- 无。
int IMP_OSD_DestroyGroup |
( |
int |
grpNum | ) |
|
销毁OSD组
- 参数
-
[in] | grpNum | OSD组号,取值范围: [0, NR_MAX_OSD_GROUPS - 1] |
- 返回值
-
- 注意
- 无。
销毁OSD区域
- 参数
-
[in] | prAttr | 区域句柄,IMP_OSD_CreateRgn的返回值 |
- 返回值
-
- 注意
- 无。
获取OSD组区域属性
- 参数
-
[in] | handle | 区域句柄,IMP_OSD_CreateRgn的返回值 |
[in] | grpNum | OSD组号 |
[out] | pgrAttr | OSD组区域属性 |
- 返回值
-
- 注意
- 无。
获取区域属性
- 参数
-
[in] | handle | 区域句柄,IMP_OSD_CreateRgn的返回值 |
[out] | prAttr | OSD区域属性 |
- 返回值
-
- 注意
- 无。
注册OSD区域
- 参数
-
[in] | handle | 区域句柄,IMP_OSD_CreateRgn的返回值 |
[in] | grpNum | OSD组号 |
[in] | pgrAttr | OSD组显示属性 |
- 返回值
-
- 注意
- 无。
设置OSD组区域属性
- 参数
-
[in] | handle | 区域句柄,IMP_OSD_CreateRgn的返回值 |
[in] | grpNum | OSD组号 |
[in] | pgrAttr | OSD组区域属性 |
- 返回值
-
- 注意
- 无。
设置区域属性
- 参数
-
[in] | handle | 区域句柄,IMP_OSD_CreateRgn的返回值 |
[in] | prAttr | OSD区域属性 |
- 返回值
-
- 注意
- 无。
设置区域属性和生效时间
- 参数
-
[in] | handle | 区域句柄,IMP_OSD_CreateRgn的返回值 |
[in] | prAttr | OSD区域属性 |
[in] | prTs | 生效时间 |
- 返回值
-
- 注意
- 无。
int IMP_OSD_ShowRgn |
( |
IMPRgnHandle |
handle, |
|
|
int |
grpNum, |
|
|
int |
showFlag |
|
) |
| |
设置组区域是否显示
- 参数
-
[in] | handle | 区域句柄,IMP_OSD_CreateRgn的返回值 |
[in] | grpNum | OSD组号 |
[in] | showFlag | OSD组区域显示开关 |
- 返回值
-
- 注意
- 无。
int IMP_OSD_Start |
( |
int |
grpNum | ) |
|
int IMP_OSD_Stop |
( |
int |
grpNum | ) |
|
int IMP_OSD_UnRegisterRgn |
( |
IMPRgnHandle |
handle, |
|
|
int |
grpNum |
|
) |
| |
注销OSD区域
- 参数
-
[in] | handle | 区域句柄,IMP_OSD_CreateRgn的返回值 |
[in] | grpNum | OSD组号 |
- 返回值
-
- 注意
- 无。
更新区域数据属性,只针对OSD_REG_BITMAP和OSD_REG_PIC的区域类型
- 参数
-
[in] | handle | 区域句柄,IMP_OSD_CreateRgn的返回值 |
[in] | prAttrData | OSD区域数据属性 |
- 返回值
-
- 注意
- 无。