视频参考帧和重构帧复用

1、 视频编码中的参考帧和重构帧

从下图的编码框架可以看出,每编码一帧需要先使用当前帧CU(n)减去当前帧的参考帧CU'(n)得到残差。同时,需要将当前帧的重构帧CU*(n)输出,然后再读取重构帧进行预测,得到下一帧的参考帧CU'(n+1)。

考虑单P帧,且没有进行参考帧复用的情况下,我们需要申请2块buffer分别存放当前帧的参考帧和重构帧。如下图所示,rcn位写入重构帧指针,ref为读取参考帧指针。

由于读者和写者都只有一个,那么理论上可以设计成队列的形式,使用一块buffer来完成,当参考帧的一部分数据被读走以后就可以写入重构帧数据。这样的设计可以节省内存,但是由于参考帧内容读取 以后被覆盖,因此该过程不可逆,在出现异常时,无法重编当前帧。

2、单P帧的参考帧重构帧复用方案

单P帧的参考帧重构帧复用情况如下,类似于环形队列,从下图也可以看出,参考帧重构帧复用节省的内存<1帧所需要的buffer大小,原因时需要保持一定的安全距离,安全距离的大小和配置的搜索窗大小有关,目的是保证被覆盖的参考帧数据在搜索窗之外,不影响编码的参考。

3、双P帧的参考帧重构帧复用方案

  1. 双P帧的GOP结构

双P帧模式下P帧参考就近的两个前向参考帧,能够利用更多参考帧的时域相关性提升编码压缩性能。主要应用在运动且有低延时要求的场景,双P帧的压缩性能高于单P帧模式。

双P帧分为无SP帧和有SP帧两种情况,SP帧指特殊的P帧,这里简称SP帧,该帧Qp值推荐小于其他P帧Qp值。

无SP帧的GOP结构如下图所示:

有SP帧的GOP结构如下图所示:

  1. 无SP帧的buffer轮转

双P帧有2个前向参考帧,开启参考帧重构帧复用以后,需要申请两块buffer,无SP帧时,buffer的轮转如下图所示。参考帧有两帧,在每一帧的处理中,重构帧只需要与其中一个参考帧buffer复用。

  1. 有SP帧的buffer轮转

有SP帧时,SP帧和I帧作为长期参考帧不能被覆盖,仅当长期参考帧刷新时与重构帧复用。

4、参考帧和重构帧复用优缺点

优点:

  1. 节省内存

缺点:

1、 由于参考帧会被覆盖,整个过程不可逆,所以不支持重编

2、 单参考帧情况下省内存明显,多参考帧效果变差。参考帧数量

大于(图像高度 / 搜索框高)时,出现负收益

3、 参考帧重构帧采用紧凑压缩方式存储时,局部可能会发生压缩膨胀,导致预留空间不足

相关推荐
智能直播1 天前
RK3576 + NDI 框架:HX2 编码输出与 HX2/FULL介绍
音视频·实时音视频·视频编解码
Industio_触觉智能3 天前
瑞芯微RK平台视频硬解排障指南-上|编解码、GStreamer与零拷贝全解析
视频编码·视频编解码·零拷贝·gstreamer·视频解码·rk3576
ACP广源盛139246256733 天前
项目评估记录:4K 远距离视频 Serdes 传输方案调研,GSV5800@ACP参数与工程问题记录
笔记·硬件架构·音视频·视频·国产芯片
ACP广源盛139246256734 天前
硬件选型笔记:GSV2231@ACP,DP1.4 MST 一进三出多屏扩展方案评估
笔记·硬件架构·视频·mst·国产芯片
voipmaker4 天前
选煤厂智能化:UWB 人员定位系统 WebAPI 对接融合通信平台实战
物联网·实时互动·json·音视频·实时音视频·web·视频
DogDaoDao4 天前
当视频理解撞上大语言模型:一篇 37 页综述的全景拆解
人工智能·语言模型·音视频·知识图谱·视频
常州晟凯电子科技4 天前
8路CVBS/AHD模拟视频编码器评测
音视频·视频编解码
ACP广源盛139246256734 天前
项目评估记录:Type‑C DP Alt Mode 转 HDMI 桥接方案调研,GSV1201D @ACP参数与工程问题记录
笔记·硬件架构·视频·hdmi·国产芯片
ACP广源盛139246256735 天前
项目评估记录:4K 视频墙方案调研,GSV9001E @ACP参数与工程问题记录
硬件架构·音视频·硬件工程·视频·国产芯片
VidDown5 天前
上线三个月后的第一次事故:一个 Django 服务的日志、监控与故障复盘
数据库·python·django·wpf·音视频·视频编解码