视频编码
总概述
视频编码器是一个支持SVAC3.0/H.265/H.264/JPEG/MJPEG的多协议编码器,包括VEDU和JPGE两部分,其中,VEDU实现SVAC3.0、H.265和H.264协议的编码,JPGE实现JPEG/MJPEG协议的编码。
NOTE:
Hi3516CV610-00S/20S/10B/00G/20G支持SVAC3.0/H.265/H.264,其中Hi3516CV610-10B SVAC3.0不支持SmartCRR。
VEDU
概述
VEDU(Video Encode Unit)是一个硬件实现的支持SVAC3.0/H.265/H.264视频标准的编码器。VEDU具有CPU占用率低、总线带宽占用小、低延时、低功耗等优点。
特点
VEDU编码器具有以下特点:
-
支持标准SVAC3.0主要档次,level 8.0.30编码
- 支持1/2、1/4像素精度运动补偿
- 支持I、P帧
- 支持最多两个参考帧,支持长期参考帧
- 帧间预测支持32x32、16x16、8x8三种PU类型
- 帧内预测支持32x32、16x16、8x8、4x4四种PU类型
- 支持最多候选数目为2的Merge/SKIP模式
- 支持32x32、16x16、8x8、4x4四种TU类型
- 支持CABAC熵编码
- 支持De-blocking滤波
- 支持PATCH
- 支持PRDO
- 支持SAO
- 支持QPMap/SkipMap
-
支持ITU-T H.265 Main Profile@Level 5 Main Tier编码
- 支持1/2、1/4像素精度运动补偿
- 支持I、P帧
- 支持最多两个参考帧,支持长期参考帧
- 帧间预测支持32x32、16x16、8x8三种PU类型
- 帧内预测支持32x32、16x16、8x8、4x4四种PU类型
- 支持最多候选数目为2的Merge/SKIP模式
- 支持32x32、16x16、8x8、4x4四种TU类型
- 支持CABAC熵编码
- 支持De-blocking滤波
- 支持SAO
- 支持QPMap/SkipMap
-
支持ITU-T H.264 High Profile/Main Profile/Baseline Profile@Level 5.1编码
- 支持1/2、1/4像素精度运动补偿
- 支持I、P帧
- 支持最多两个参考帧,支持长期参考帧
- 支持帧间预测16x16、8x8两种子块类型
- 支持所有Intra4x4、Intra8x8、Intra16x16预测模式
- 支持Trans4x4、Trans8x8
- 支持CABAC、CAVLC熵编码
- 支持De-blocking滤波
-
支持H.264 SVC时域分层(SVC-T)
- 支持输入图像格式:Semi-Planar YUV420
-
SVAC3.0/H.265/H.264多码流编码性能:
- 3200×1800@30fps+1280×720@30fps编码
- 3840×2160@20fps+1280×720@20fps编码
-
支持图像分辨率可配置
- 最小图像分辨率:114x114
- 最大图像分辨率:3840x2160
- 图像宽度/高度的配置步长为2
-
支持感兴趣区域编码
- 支持最多8个区域的感兴趣区域编码
- 每个感兴趣区域编码功能可独立使能/禁止
-
支持OSD区域编码保护
OSD区域编码保护功能可使能/禁止
-
支持视频前端OSD叠加处理
- 支持最多8个区域的编码前OSD叠加
- 支持任意大小,任意位置(不超出图像大小和位置)OSD叠加
- 支持256级的alpha叠加
- OSD叠加功能可使能/禁止
- 支持OSD ARGB1555、ARGB4444、CLUT2、CLUT4格式
-
支持彩转灰编码功能
- 支持输入低延时功能
- 支持输入低延时卷绕功能
- 支持输入CROP
- 支持视频前端叠加mosaic处理
- 支持智能编码2.0
- 支持CBR/VBR/ABR/AVBR/CVBR/QVBR/FIXQP/QPMAP等多种码率控制模式
- 输出码率SVAC3.0/H.265/H.264最高均为80Mbps。
须知:
VEDU的区域编码保护功能只对VEDU叠加的OSD起作用。
功能描述
VEDU功能框图如Figure 1所示。
VEDU编码实现了运动估计/帧间预测、帧内预测、运动矢量预测、变换/量化、反量化/反变换、熵编码及码流生成、de-blocking滤波、SAO等协议/算法处理(SVAC3.0/H.265),ARM软件则完成码率控制和中断处理等编码控制处理。
在启动VEDU进行视频编码前,软件需要为其在外部存储器(DDR SDRAM)中分配以下三种类型的缓冲区。
-
输入图像缓冲区
VEDU在编码过程中会从该缓冲区读取待编码的原始图像。该缓冲区通常由视频输入单元写入。
-
重构图像/参考图像缓冲区
VEDU在编码过程中会向该缓冲区中写入重构图像、以作为后续图像的参考图像,在进行P帧编码时会从该缓冲区读取参考图像。
-
码流缓冲区
该缓冲区用于存放编码输出的码流。VEDU在编码过程中会将码流写入该缓冲区。该缓冲区通常由软件读取。

JPGE
概述
JPGE是一个硬件实现的高性能Jpeg编码器,可实现图片抓拍、高清图像MJPEG编码功能。
特点
JPGE具有以下特点:
-
支持ISO/IEC 10918-1(CCITT T.81) Baseline Process(DCT Sequential)编码
- 支持Semi-Planar YUV420/Semi-Planar YUV422两种色度采样格式的图像编码
- 量化表可配置:Y、U、V三个分量各提供一张量化表
- 支持彩转灰功能
- 支持输入低延时功能
- 支持输入低延时卷绕功能
- 支持输入CROP
- 支持输入图像格式:Semi-Planar YUV420/Semi-Planar YUV422
- 编码性能:3200x1800@30fps编码
-
支持的图像分辨率
最小图像分辨率:32x32
最大图像分辨率:4096x4096
图像宽度/高度的配置步长为2
-
支持视频前端OSD叠加处理
支持最多8个区域的编码前OSD叠加
支持任意大小,任意位置(不超出图像大小和位置)OSD叠加
支持256级的alpha叠加
OSD叠加功能可使能/禁止
支持OSD ARGB1555、ARGB4444、CLUT2、CLUT4格式
-
MJPEG输出码率范围:2kbps~60Mbps
功能描述
JPGE功能如Figure 1所示,由图可见,JPGE硬件实现了OSD、level shift、DCT、量化、扫描、VLC编码及码流生成等运算量较大的协议处理,而ARM软件则完成量化表配置和中断处理等编码控制处理。
在启动JPGE进行视频编码前,软件需要为其在外部存储器(DDR SDRAM)中分配以下两种类型的缓冲区。
-
输入图像缓冲区
JPGE在编码过程中会从该缓冲区读取待编码的原始图像。该缓冲区通常由视频输入单元写入。
-
码流缓冲区
该缓冲区用于存放编码输出的码流。JPGE在编码过程中会将码流写入该缓冲区。该缓冲区通常由软件读取。
