H264(AVC)/H265(HEVC)/H266(VVC):GOP的区别

本文将对比分析H264/H265/H266中关于GOP的区别。

注:

1、本文参考了下列文章:

2、本文若有错的地方,请读者指正,谢谢!


GOP简介

  • 编码结构从编码的分层处理架构和编码后码流的语法架构进行描述,对有若干时间连续的图像构成的视频序列进行压缩时,先将其分割为若干个图像组GOP(Group of Picture,GOP):分为封闭GOP和开放GOP。
    • 封闭GOP:每个GOP都以IDR(Instantaneous Decoding Refresh)开始,各个GOP之间独立编码。
    • 开放GOP:第一个GOP的第一个帧内编码图像为IDR图像,后续GOP中的第一个帧内编码图像为non-IDR,就是后面GOP中的帧间编码图像可以越过non-IDR图像,使用前一个GOP中已编码的图像做参考图像。

封闭式GOP(H264):

H.264/AVC, H.265/HEVC, H.266/VVC技术对比整理-编码结构和块划分_第1张图片

开放式GOP(H265/H266):

H.264/AVC, H.265/HEVC, H.266/VVC技术对比整理-编码结构和块划分_第2张图片


H264/AVC

  • H.264编码首先将视频序列分为若干个GOP(Group of Picture),每个GOP的第一帧均为IDR(即时解码刷新)帧。
    • IDR帧一定是I帧,但反之不成立。
    • IDR帧的作用是立刻刷新,防止错误传播,从IDR帧开始,重新进行序列后续编码。换句话说,IDR帧具有随机访问的能力,IDR帧后续的编码,完全不依赖前面帧的信息。
    • IDR会使得DPB清空,而I帧不会。
  • H.264中所有GOP独立解码,不会互相参考,称为封闭GOP。
  • 在H264中:
    • GOP简单来说就是两个IDR帧之间的间隔。下图中GOPsize=4。
    • Reference(参考周期)指两个P帧之间的距离。下图中Reference=1。
    • 一个I帧所占用的字节数大于一个P帧,一个P帧所占用的字节数大于一个B帧。所以在码率不变的前提下:
      • GOP值越大,P、B帧的数量会越多,画面细节更多,也就更容易获取较好的图像质量;
      • Reference越大,B帧的数量越多,同理也更容易获得较好的图像质量。
      • 但是,通过提高GOP值来提高图像质量是有限度的,在遇到场景切换的情况时,H.264编码器会自动强制插入一个I帧,此时实际的GOP值被缩短了。另一方面,在一个GOP中,P、B帧是由I帧预测得到的,当I帧的图像质量比较差时,会影响到一个GOP中后续P、B帧的图像质量,直到下一个GOP开始才有可能得以恢复,所以GOP值也不宜设置过大。
      • 同时,由于P、B帧的复杂度大于I帧,所以过多的P、B帧会影响编码效率,使编码效率降低。另外,过长的GOP还会影响Seek操作(找I帧)的响应速度,由于P、B帧是由前面的I或P帧预测得到的,所以Seek操作需要直接定位,解码某一个P或B帧时,需要先解码得到本GOP内的I帧及之前的N个预测帧才可以,GOP值越长,需要解码的预测帧就越多,seek响应的时间也越长。

在这里插入图片描述


H265/HEVC

  • HEVC同样首先将视频序列分为若干个GOP,但是可以参考其他GOP的图像,称为开放式GOP。在HEVC中,GOP简单来说就是两个随机接入点(帧)之间的间隔。
  • HEVC为了应对不同的应用场景,设立了三种GOP的编码结构:全帧内(All Intra,AI)、低延时(LD)和随机接入(RA)。
    • 全帧内编码:所有GOP的每一帧图像都是按帧内方式进行空间域预测编码,不使用时间参考帧(即,GOPSize = 1)。
    • 低延时编码:只有第一帧图像按照帧内方式进行编码,并成为及时解码刷新帧(IDR),随后各帧都是普通P帧和B帧(也就是说,只有一个GOP,如下图所示)。
    • 随机接入编码:每个GOP中主要是B帧,周期性(大约1s)插入一个纯随机接入帧(CRA),这些CRA帧作为码流中的随机接入点(RAP)。对随机接入点(帧)的解码可以独立进行,不需要参考前面已解码的帧。
      • 该编码模式下,GOP的大小决定了B帧的数量,B帧数量为GOP中帧数减去1,即,number of B slice = GOPSize - 1。
      • HEVC之所以是开放式GOP,就是因为CRA的存在(关于CRA的介绍,可以参考博客:https://blog.csdn.net/Dillon2015/article/details/104305180)。
低延时编码结构

 


H266/VVC

VVC中GOP与HEVC类似,都是开放式的GOP。

 

 

 

 

  • 3
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
H.265/HEVC(High Efficiency Video Coding)是视频编码的新标准,也是H.264/AVC(Advanced Video Coding)的后继者。H.265/HEVC的目标是提供比H.264/AVC更高的压缩性能,即可以在相同的视频质量下减小文件大小,或者在相同的文件大小下保持更高的视频质量。 H.265/HEVC通过引入一系列新的技术和算法来实现高效率的视频编码。其中一项重要的改进是采用更高级的块划分和运动估计算法,以利用视频序列中的时空相关性。此外,H.265/HEVC还引入了新的预测模式、变换和量化方法,以更好地利用视频序列中的统计特性。通过这些改进,H.265/HEVC可以达到更高的编码效率,减小文件大小。 H.265/HEVC还支持更高的分辨率和更高的帧率。相比于H.264/AVC,H.265/HEVC可以编码更大尺寸的视频,以适应高清视频和超高清视频的需求。此外,H.265/HEVC还支持更高的帧率,可以编码更流畅的视频。 H.265/HEVC还有一些其他的扩展特性。例如,它可以支持更多的色彩空间和位深度,以提供更丰富和准确的颜色表现。它还支持有损和无损视频编码,以满足不同应用场景的需求。 总的来说,H.265/HEVC是一种具有高压缩性能和更好视频质量的视频编码标准。它在视频通信、视频点播和储存等领域有着广泛的应用前景,可以为用户提供更好的观看体验,并帮助节省带宽和存储空间。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Video Decoder丶

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值