功能说明
功能说明
VPSS模块接收VI/VDEC模块发送过来的图像,可对图像进行抠图、缩放、鱼眼矫正等处理,并实现同源输出两路不同分辨率的图像数据用于编码、预览或抓拍。
用户可调用hi_mpi_sys_bind接口,将VI/VDEC的视频流绑定到VPSS上,送给VPSS做进一步的处理,VPSS通过组Group以及组上的通道Channel来提供对应的处理能力,最终将图像输出给用户或下级模块(例如VO)。
图1 功能框图

VPSS相关概念说明如下:
-
Group
VPSS对用户提供组( Group )的概念,各个组通过分时复用方式共享VPSS硬件资源。
-
Channel
VPSS组的通道,一个VPSS组提供多个通道,每个通道具有独立的缩放、鱼眼矫正等功能。
-
FRC(Frame Rate Control)
帧率控制,按控制点分为组帧率控制和通道帧率控制。
- 组帧率控制,在hi_mpi_vpss_create_grp创建组时,可通过帧率控制属性控制各个Group对输入图像的接收。
- 通道帧率控制,在hi_mpi_vpss_set_chn_attr设置组通道属性时,可通过帧率控制属性控制各个通道图像的处理。
-
CROP
从图像中裁剪指定区域。
-
3DNR(Three-dimensional Noise Reduction)
3D去噪。通过参数配置,把图像中的高斯噪声去除,使得图像变得平滑,有助于降低编码码率。
-
Mosaic
马赛克,对 VPSS 输出图像在指定区域填充马赛克块。该功能需要配合区域管理功能一起使用。
-
Cover
视频遮挡区域,对 VPSS的输出图像填充纯色块。 该功能需要配合区域管理功能一起使用。
遮挡区域坐标类型分为绝对坐标遮挡和相对坐标比例遮挡。
-
Aspect Ratio
幅形比,指定输出画面相对于输入画面的宽高纵横比。
-
OverlayEx
视频叠加区域,对 VPSS物理通道的输出图像叠加位图。该功能需要配合区域管理功能一起使用。
-
FISHEYE
鱼眼矫正功能。
-
Scale
缩放,对图像进行缩小放大 。 缩放倍数指水平、垂直各缩放多少倍。
父主题: VPSS视频处理功能
约束说明
-
所有输入和输出分辨率的宽度必须以4像素对齐,高度必须4像素对齐。
-
视频防抖、畸变矫正下,鱼眼单矫正使用的是内部同一个硬件加速器,该加速器整体规格为4096*2160@45帧,所以仅开启鱼眼单区域矫正时,才能按4096*2160@45满规格运行,否则如果同时开启VI的视频防抖、畸变矫正功能,鱼眼规格降低,预计降一半。
-
VPSS的接口,除chn取流相关的接口(hi_mpi_vpss_get_chn_frame、hi_mpi_vpss_release_chn_frame)外,其他接口都不支持多线程并发调用。
-
在不同Group ID范围内的VPSS Group支持能力存在差别,相关的能力如下表所示:
VPSS Group ID范围 能力说明 Group ID取值在[0, 256)范围内 - 不支持3DNR功能。
- 与区域管理模块配合使用,支持马赛克、Cover、OSD等功能。
- 支持与VDEC、VO模块绑定,不支持与VI模块绑定(如何绑定请参考hi_mpi_sys_bind接口)。
- 输入、输出图像所支持处理的最小分辨率为64*64,最大分辨率为4096*8192。
- 若开启鱼眼矫正,输入图像分辨率约束为:宽在[1920,4096]范围内,高在[1080,8192]范围内。
- 不开启鱼眼矫正下,VPSS相关Group的整体处理性能规格为1200FPS@1080P。若开启OverlayEx视频叠加区域功能,则对整体性能规格有影响,影响程度取决于该功能的输出图片分辨率。
- 适用NVR场景,该场景支持多进程调用,具体使用流程请参见视频解码、处理和显示功能(NVR场景)。Group ID取值在[256, 264)范围内 - 支持3DNR功能。
- 不支持与区域管理模块配合使用。
- 支持与VI模块绑定,不支持与VDEC、VO模块绑定(如何绑定请参考hi_mpi_sys_bind接口)。
- 图像所支持处理的宽高有效范围为[64, 16384],包括通过hi_mpi_vpss_set_grp_crop设置的裁剪后的宽高或者通过hi_mpi_vpss_set_chn_attr接口设置的图像输出宽高。当用户调用hi_mpi_vpss_create_grp接口,开启3DNR后,图像宽高需满足如下约束:
- 不开启3DNR压缩:宽度[64, 16384];高度[64, 8192]。
- 开启3DNR压缩:宽度[640, 16384];高度[480, 4096]。
- 若开启鱼眼矫正,输入图像分辨率约束为:宽在[1920,8192]范围内,高在[1080,8192]范围内。
- VPSS整体处理性能规格为4096*2160@45帧。
- 适用Camera场景,该场景下VPSS需配套VI接口一起使用,VPSS相关业务必须和VI业务归属在同一个进程中实现,即只允许有一个进程实例在运行,具体使用流程请参见视频数据获取和处理功能(Camera场景)。
父主题: VPSS视频处理功能
hi_mpi_vpss_create_grp
函数功能
创建一个VPSS组。
约束说明
- 不支持重复创建。
- 如需使能3DNR,则高度不能超过8192,否则将自动bypass 3dnr算法。
函数原型
hi_s32 hi_mpi_vpss_create_grp(hi_vpss_grp grp, const hi_vpss_grp_attr *grp_attr);
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| grp | 输入 | VPSS组ID。 取值范围:[0, 264)。如果通过hi_mpi_vpss_create_grp接口的hi_vpss_grp_attr.nr_en参数开启3DNR功能,则VPSS组ID的取值范围为:[256, 264)。 |
| grp_attr | 输入 | VPSS组属性指针。 |
返回值说明
- 0:成功
- 非0:失败,参见6.10.7-VPSS视频处理子系统返回码
参考资源
接口调用流程,参见视频数据获取和处理功能(Camera场景)、视频解码、处理和显示功能(NVR场景)。
父主题: VPSS视频处理功能
hi_mpi_vpss_destroy_grp
函数功能
销毁一个VPSS组。
约束说明
- VPSS组必须已创建,请参见hi_mpi_vpss_create_grp接口。
- 调用此接口之前,必须先调用hi_mpi_vpss_stop_grp接口禁用此组。
- 调用此接口时,会一直等待此VPSS组中的当前任务处理结束,才会真正销毁该VPSS组。
函数原型
hi_s32 hi_mpi_vpss_destroy_grp(****hi_vpss_grp grp);
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| grp | 输入 | VPSS组ID。 取值范围:[0, 264)。如果通过hi_mpi_vpss_create_grp接口的hi_vpss_grp_attr.nr_en参数开启3DNR功能,则VPSS组ID的取值范围为:[256, 264)。 |
返回值说明
- 0:成功
- 非0:失败,参见6.10.7-VPSS视频处理子系统返回码
参考资源
接口调用流程,参见视频数据获取和处理功能(Camera场景)、视频解码、处理和显示功能(NVR场景)。
父主题: VPSS视频处理功能
hi_mpi_vpss_start_grp
函数功能
启用VPSS组。
约束说明
-
VPSS组必须已创建,请参见hi_mpi_vpss_create_grp接口。
-
重复调用该接口启用同一个组返回成功。
函数原型
hi_s32 hi_mpi_vpss_start_grp(hi_vpss_grp grp);
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| grp | 输入 | VPSS组ID。 取值范围:[0, 264)。如果通过hi_mpi_vpss_create_grp接口的hi_vpss_grp_attr.nr_en参数开启3DNR功能,则VPSS组ID的取值范围为:[256, 264)。 |
返回值说明
- 0:成功
- 非0:失败,参见6.10.7-VPSS视频处理子系统返回码
参考资源
接口调用流程,参见视频数据获取和处理功能(Camera场景)、视频解码、处理和显示功能(NVR场景)。
父主题: VPSS视频处理功能
hi_mpi_vpss_stop_grp
函数功能
禁用VPSS组。
约束说明
-
VPSS组必须已创建,请参见hi_mpi_vpss_create_grp接口。
-
重复调用本接口禁用同一个组返回成功。
函数原型
hi_s32 hi_mpi_vpss_stop_grp(****hi_vpss_grp grp);
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| grp | 输入 | VPSS组ID。 取值范围:[0, 264)。如果通过hi_mpi_vpss_create_grp接口的hi_vpss_grp_attr.nr_en参数开启3DNR功能,则VPSS组ID的取值范围为:[256, 264)。 |
返回值说明
- 0:成功
- 非0:失败,参见6.10.7-VPSS视频处理子系统返回码
参考资源
接口调用流程,参见视频数据获取和处理功能(Camera场景)、视频解码、处理和显示功能(NVR场景)。
父主题: VPSS视频处理功能
在线提单