9.2. 设计概述

9.2.1. 系统架构

区域管理可以实现区域的创建,控制迭加到哪个视频,并可以控制暂时隐藏,或是改迭加到其他的视频中。

  • 区域类型

    • Overlay: 视频迭加区域,支持Bitmap图片加载、背景色更新等功能

    • OverlayEx: 扩展视频迭加区域,支持Bitmap图片加载、背景色更新等功能,与Overlay不同处为支持区域层次

    • Cover: 视频遮挡区域,支持纯色块遮挡

    • CoverEx: 扩展视频遮挡区域,支持纯色块遮挡,与Cover不同处为支持区域层次

    • Mosaic: 暂不支持

  • 区域层次

    区域层次表示区域的迭加级别,层次值越大,表示区域的显示级别越高。当发生重迭时,层次大的将会覆盖层次小的。仅OverlayEx, CoverEx类型的区域支持。

    ../_images/image11.png

    使用支持重迭的区域类型时(OverlayEx, CoverEx),VPSS mode需设定为VPSS_MODE_RGNEX,使用 CVI_SYS_SetVPSSMode 来设定。

  • Bitmap图加载

    这是指将Bitmap的数据填到区域的内存空间中,若是Bitmap和区域的格式有差异,例如Bitmap为ARGB8888,区域为ARGB1555,需要做些数据的转换。Bitmap会从内存的左上角开始填充,Bitmap不可大于区域内存。

    Bitmap图加载支持两种方式:

  1. 透过 CVI_RGN_SetBitMap 将Bitmap复制到区域画布内存。

  2. 透过 CVI_RGN_GetCanvasInfo 取得区域画布内存的地址,直接更新在画布上。更新完成后,在由 CVI_RGN_UpdateCanvas 让此画布更新为显示的画布。

  • 区域属性

    创建一个区域时,需要设定该区域的属性。以OverLayEx为例,包含像素格式,大小和背景色等。

  • 通道属性

    通道属性定义区域在某个绑定通道上的显示特性。例如,OverlayEx的通道属性包含了显示位置。

9.2.2. 注意事项

region支援的模块信息(CV180X不支援VO模块)

类型

支援模块

设备号范围

通道号范围

OVERLAY

VPSS

[0, VPSS_MAX_GRP_NUM -1]

[0, VPSS_MAX_PHY_CHN_NUM -1]

VO

[0, VO_MAX_LAYER_NUM -1]

[0, VO_MAX_CHN_NUM -1]

OVERLAYEX

VPSS

[0, VPSS_MAX_GRP_NUM -1]

[0, VPSS_MAX_PHY_CHN_NUM -1]

COVER

VPSS

[0, VPSS_MAX_GRP_NUM -1]

[0, VPSS_MAX_PHY_CHN_NUM -1]

VO

[0, VO_MAX_LAYER_NUM -1]

[0, VO_MAX_CHN_NUM -1]

COVEREX

VPSS

[0, VPSS_MAX_GRP_NUM -1]

[0, VPSS_MAX_PHY_CHN_NUM -1]

功能

OVERLAY

OVERLAYEX

COVER

COVEREX

模块

VPSS

VO

VPSS

VPSS

VO

VPSS

像素格式

ARGB1555
ARGB4444
ARGB8888
ARGB1555
ARGB4444
ARGB8888
ARGB1555
ARGB4444
ARGB8888
ARGB1555
ARGB4444
ARGB8888
ARGB1555
ARGB4444
ARGB8888
ARGB1555
ARGB4444
ARGB8888

迭加层次

N/A

N/A

支持

N/A

N/A

支持

位图填充

支持

支持

支持

N/A

N/A

N/A