叠加模块基础
用户通常需要在视频中叠加OSD(如通道号、时间戳等)以显示特定信息,并在必要时填充色块。这些叠加在视频上的OSD和遮挡在视频上的色块统称为“区域”。REGION(叠加)模块用于统一管理这些区域资源。如下图所示:
可以看到在一段视频流中使用叠加模块就可以在视频流增加图形和色块等信息。
1.叠加模块介绍
区域管理可以实现区域的创建,并叠加到视频中或对视频进行遮挡。例如,实际应用中,用户创建一个区域,通过AW_MPI_RGN_AttachToChn,将该区域叠加到某个通道(如VENC 通道)中。
在通道进行调度时,则会将OSD 叠加在视频中。一个区域支持通过设置通道显示属性接口指定到多个通道中(如:多个VENC 通道,多个VideoScaler 通道,甚至多个VENC 和VideoScaler 通道),且支持在每个通道的显示属性(如位置、透明度等)都不同。
常用的区域叠加类型如下:
- overlay:视频叠加区域,其中区域支持位图的加载、背景色更新等功能。
- OverlayEx:扩展视频叠加区域,功能与 Overlay 类似,支持位图加载、背景色更新等。
- cover:视频遮挡区域,其中区域支持纯色块遮挡。
- CoverEx:扩展视频遮挡区域,功能与 Cover 类似,支持纯色块遮挡。
- Object Rectangle Label:物体矩形框标注。
区域层次(区域叠加等级)
区域层次表示区域的叠加级别,层次值越大,表示区域的显示级别越高。当发生重叠时,层次值大的将会覆盖层次值小的。如果是同一级别,则根据区域叠加的先后顺序,后叠加的将显示在上层。
2.叠加模块使用方法
- 设置叠加区域属性
- 创建叠加区域
- 设置区域位图
- 设置区域通道属性
- 将区域叠加到通道上
- 在结束时,需要将该区域从通道撤出,并销毁区域。