day10_Himpp IPC V2.0 开发文档学习_概述

1.实现路径
VI–>VPSS–>VENC+OSD+h265 / VDA / VO
VI:捕获视频图像,进行剪切缩放处理;
VPSS:图像去噪、增强、锐化;实现同源输出多路不同分辨率的图像数据用于编码、预览或抓拍;
VENC:h265编码;
VDA:移动侦测和遮挡侦测,输出侦测结果;
VO:接收VPSS处理后的输出图像,进行播放控制,按用户配置的输出协议输出给外围设备。

2.视频缓存池:负责内存的分配和回收
视频输入通道:使用公共视频缓存池(不提供创建和销毁公共视频缓存池的功能);
在系统初始化之前,必须为视频输入通道配置公共视频缓存池;
根据业务的不同,公共缓存池的数量、缓存块的大小和数量不同;
缓存块的生存期:指经过 VPSS 的 bypass 通道传给后续模块的情形;
若该缓存块完全没有经过 VPSS 的 bypass 通道传给其他模块,则在 VPSS 模块处理后被放回公共缓存池。

3.系统绑定:HI_MPI_SYS_Bind
【只允许数据接收者绑定数据源】,绑定后,数据源生成的数据将自动发给接收者。
Himpp支持的绑定关系:
VI(数据接收者) bind VO/VENC/VDA/VPSS
VPSS(数据接收者) bind VO/VENC/VDA/VPSS
VO(数据接收者) bind VO/VENC/VPSS

同一个数据接收者只能绑定一个数据源。
VI 和 VDEC 作为数据源,是以通道为发送者,向其他模块发送数据,用户将设备号置为 0, SDK 不检查输入的设备号;
VO 作为数据源发送回写(WBC)数据时,是以设备为发送者,向其他模块发送数据,用户将通道号置为 0, SDK 不检查输入的通道号;
VPSS 作为数据接收者时,是以设备(GROUP)为接收者,接收其他模块发来的数据,用户将通道号置为 0, SDK 不检查输入的通道号;
VENC 作为数据接收者时,是以通道号为接收者,接收其他模块发过来的数据;
其他情况均需指定设备号和通道号。

4.VI/VPSS 离/在线模式
VI/VPSS 离线模式: VI 进行时序解析后将图像数据写出到 DDR, VPSS 从DDR 中载入 VI 采集的数据进行图像处理;
VI/VPSS 在线模式: VI 进行时序解析后直接在芯片内部将数据传递到 VPSS,中间无 DDR 写出的过程。在线模式可以省一定的带宽和内存,降低端到端的延时。
但是在线模式时,因为 VI 不写出数据到DDR,无法进行 CoverEx、 OverlayEx、Rotate、 LDC 等操作,需要在 VPSS 各通道写出后再进行 Rotate/LDC 等处理,而且有些功能只在离线下能支持,比如DIS。

阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/mingxia222/article/details/80349602
文章标签: hi3516a
个人分类: hi3516a开发
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭