7.3.6 视频处理
概述
VPS(Video Process System)
是视频处 理系统,支持对图像进行缩小、放大、裁剪、旋转、GDC矫正、帧率控制以及金字塔图像输出。
功能描述
基本概念
-
Group
VPS
对用户提供组的概念,各个Group
分时复用IPU
,GDC
,PYM
硬件,可以将多个VPS Group
进行级联使用。 -
Channel
VPS
的通道,一路通道代表VPS
的一路输出。输出的通道主要分为普通图像通道和金字塔图像通道,普通通道输出缩放裁剪或旋转后的单层数据,金字塔通道输出多层金字塔缩放数据。
功能描述
VPS
可以通过调用 系统控制 提供的绑定接口与其他模块绑定,输入可以与VIN
、VDEC
模块绑定,VPS
输出可以与VOT
、VENC
模块绑定,前者为VPS
的输入源,后者为VPS
的接收者,也可以与另一个VPS
绑定实现更多的通道;支持处理用户回灌的图像数据。用户可以通过VPS
接口对Group
进行管理,每个Group
仅可以与一个输入源绑定,每个Channel
可以与不同的模块绑定。 VPS
与VIN
绑定场景下,需要调用HB_SYS_SetVINVPSMode
来配置VIN
与VPS
之间在线或离线的不同模式。
VPS
硬件由一个IPU
,一个PYM
,两个GDC
组成。共有7路输出Channel
(chn0chn6),chn0chn4可以实现downscale
,chn5可以实现upscale
,chn0~chn5均可实现裁剪(ROI)、旋转、矫正、帧率控制,chn6为金字塔online Channel。虚框为硬件复用,其中OSD
灰色块为CPU叠加,其余三个米色块为硬件叠加。
-
Upscale功能:
尺寸限制请参考下表
支持水平方向最大1.5倍放大,宽度需为4的倍数,最小32x32,最大4096
支持垂直方向最大1.5倍放大, 高度需为偶数,最小32x32,最大4096
只有channel5支持Upscale功能
-
Downscale功能:
尺寸限制参考下表
水平方向最大缩小为原尺寸的1/8(大于1/8), 最小32x32,最大4096
垂直方向最大缩小为原尺寸的1/8(大于1/8), 最小32x32,最大4096
Channel0~channel4支持Downscale功能
-
IPU各通道的尺寸限制如下:
Scaler | FIFO(bytes) | Resolution(pixel) |
---|---|---|
Scaler 5 (IPU US) | 4096 | 8M |
Scaler 2 (IPU DS2) | 4096 | 8M |
Scaler 1 (IPU DS1) | 2048 | 2M |
Scaler 3 (IPU DS3) | 2048 | 2M |
Scaler 4 (IPU DS4) | 1280 | 1M |
Scaler 0 (IPU DS0) | 1280 | 1M |
-
Crop功能:
VPS
可以对输入的图形进行裁剪,选择裁剪后的ROI区域去做放大或者缩小 -
PYM金字塔处理功能:
最大输入图像宽度4096,最大输入图像高度4096
最小输入图像宽度64,最小输入图像高度64
最大输出图像宽度4096,最大输出图像高度4096
最小输出图像宽度48,最小输出图像高度32
缩小图像层数24(0
23)层,其中0、4、8、12、16、20层为基础Base层,基础层每一层的size为上一层的1/2;其余层为ROI层,ROI层基于Base层作缩小(1、2、3层基于Base0层,5、6、7层基于Base4层,以此类推)各层可以单独使能,缩放区域、缩放系数可以配置放大图像层数为6(2429)层,放大比例固定,分别为1.28、1.6、2、2.56、3.2、4倍。PYM
通道也可以为0~5,此时为非online通道。每一个group下最多使用一个
PYM
。