GOP 简介

  • GOP(Group Of Picture),在互联网流媒体领域也被称为 GOF(Group of frame),可以简单理解为一组视频帧;H26x编解码中视频帧分为I帧(关键帧)和以I帧为参考的P帧(参考帧),B帧等,因此视频帧可以划分成以I帧为间隔的组形式。
  • GOP值也是I帧的间隔帧数。

智能编码技术

  • 市场上售卖的安防产品时常会声称支持smartH264,smartH265,smartH264++,smartH265++等智能编码技术,很大部分是在GOP上做文章。
  • 智能编码技术的目的:降低码率,低码率的好处如下:
  1. 网络传输速度更快
  2. 硬盘存储占用更少
  3. 解码性能更好(数据量大小对解码性能影响比较大)
  4. 支持更高分辨率

GOP模式

  • P帧数据是参考其它帧的差异数据,参考帧个数有两种模式:
  1. 单帧参考:P帧以一帧为参考
  2. 双帧参考:P帧使用两帧数据作为参考
  • 两者优缺点
  1. 相对于单帧参考,双帧参考能够更好地利用时域相关性,进一步提高压缩性能,例如:新帧相对于上上帧的差异比相对于上一帧的差异更小,数据就可以传输相对上上帧的数据,以减小数据量,甚至更复杂的算法。
  2. 双帧参考编码性能会差一点,编码时需要做两次参考对比,但是由于安防设备编码由硬件实现,影响较小,但是可能可以获取更低的码率。
  3. 双帧参考数据传输和解码性能可能更好,数据量更小,数据传输也会更快,而解码时差异越少,解码性能也会越好。
  4. 双帧参考编解码内存占用更多,需要缓存两帧的数据,不然编解码时没有参考数据。
  • 问题
  1. 既然双帧参考比单帧能够进一步提高压缩性能,为什么没有三帧,四帧参考?

单帧参考

SingleP 模式(NormalP)

  • 该模式是最基础的模式。
  • 个人总结
  1. 为了减小码率,可以拉长GOP值,以减少单位时间内的I帧数量,增加P帧数量,由于I帧的大小远远大于P帧,因此可以减少码率。
  2. 但是GOP不能过大,因为每一个P帧都依赖于前一帧,如果发生传输丢帧或解码误码,后续的P帧可能都无法解码了(也可能播放器做兼容,参考帧改为收到的前一帧),画面可能出现花屏甚至黑屏,需要等到下一个I帧才能恢复。
  3. 从任意时间点播录像时需要解码前向I帧到点播时间帧之间的所有P帧造成的解码性能浪费和解码时间过长问题。

AdvSingleP 模式

  • 解释:在SingleP模式的基础上,新增虚拟I帧(本质上是一个P帧),虚拟I帧不是参考前一个P帧而是参考I帧,这样就可以将GOP设置的较大,本质上就是用虚拟I帧替换了I帧
  • 个人总结
  1. 实际上AdvSingleP模式很类似于SingleP模式,只是将SingleP模式中的I帧替换成了虚拟I帧,当虚拟I帧的帧间距拉长至原本SingleP模式中的GOP时,SingleP模式的问题依然会存在。
  2. 虚拟I帧大小会大于P帧。

双帧参考

DualP模式

  • 解释:该模式下P帧参考前两帧作为参考。

SmartP 模式

  • 解释:该模式类似于AdvSingleP 模式新增虚拟I帧,P帧参考I帧(长期参考帧)和前一个虚拟I帧(短期参考帧),利用两个参考帧的时域相关性提升编码压缩性能。

引用

  • H264++ H265++ 别被忽悠,“智能编码”才是正规名词!
  • 说明:以上GOP模式和名词都是海思平台上的,在海思文档中可以找到,其它平台实现,大部分支持的模式比较少,比较简单。

H26x 编解码 - GOP 模式相关推荐

  1. android硬编解码MediaCodec

    一 mediacodec简介 MediaCodec 类可以用来访问底层媒体编解码器,即编码器/解码器的组件. 它是 Android 底层多媒体支持架构的一部分(通常与 MediaExtractor,M ...

  2. 音视频编解码--Opus编解码系列1

    1 简介 Opus 是一个完全开源,免费的,通用性高的音频解码器.Opus 在网络上有着无与伦比的交互式语音和音乐传播功能,但也可以用来存储,在流媒体上使用.Opus 遵从 Internet Engi ...

  3. 视频编解码之常见GOP结构

    转载自海思GOP模式,内容整理如下: 一.单P帧GOP模式 1. SingleP 特点:该GOP结构仅由IDR帧和normal P帧组成,每个normal P帧参考前一帧,IDR帧之间的间隔相同,具体 ...

  4. 【FFMPEG】各种音视频编解码学习详解 h264 ,mpeg4 ,aac 等所有音视频格式

    目录(?)[-] 编解码学习笔记二codec类型 编解码学习笔记三Mpeg系列Mpeg 1和Mpeg 2 编解码学习笔记四Mpeg系列Mpeg 4 编解码学习笔记五Mpeg系列AAC音频 编解码学习笔 ...

  5. 音视频编解码学习详解

    音视频编解码学习详解 目录(?)[+] 编解码学习笔记二codec类型 编解码学习笔记三Mpeg系列Mpeg 1和Mpeg 2 编解码学习笔记四Mpeg系列Mpeg 4 编解码学习笔记五Mpeg系列A ...

  6. 即时通讯音视频开发(三):视频编解码之编码基础

    前言 即时通讯应用中的实时音视频技术,几乎是IM开发中的最后一道高墙.原因在于:实时音视频技术 = 音视频处理技术 + 网络传输技术 的横向技术应用集合体,而公共互联网不是为了实时通信设计的. 系列文 ...

  7. 视频编解码学习之二:编解码框架

    http://www.cnblogs.com/xkfz007/archive/2012/07/29/2613824.html 第四章 视频编码基础 1. 压缩码流 语法:码流中各个元素的位置关系 01 ...

  8. 编解码再进化:Ali266与下一代视频技术

    过去的一年见证了人类百年不遇的大事记,也见证了多种视频应用的厚积薄发.而因此所带来的视频数据量的爆发式增长更加加剧了对高效编解码这样的底层硬核技术的急迫需求.正是在这样的大环境下,在ITU-T VCE ...

  9. 手淘H265编解码算法与工程优化

    本文来自淘宝(中国)软件有限公司 高级算法专家 李晓波在LiveVideoStackCon 2018讲师热身分享,并由LiveVideoStack整理而成.在分享中李晓波详细解析了手淘在H.265高效 ...

  10. 我的Android进阶之旅------gt;Android中编解码学习笔记

    编解码学习笔记(一):基本概念 媒体业务是网络的主要业务之间.尤其移动互联网业务的兴起,在运营商和应用开发商中,媒体业务份量极重,其中媒体的编解码服务涉及需求分析.应用开发.释放license收费等等 ...

最新文章

  1. 当我们群嘲假博士时,不要忘了真博士们的艰辛
  2. 写你自己的MVC框架
  3. 2009年1月5日 洛基网络教室听课笔记
  4. Java 数据库连接
  5. 关系抽取---(三)基于文本的卷积神经网络(Text-CNN)的关系抽取
  6. 2018-4-17论文《狼群算法的研究与应用》笔记1 智能算法简介;狼群算法国内外研究现状以及参看文献
  7. 需求跟踪矩阵和需求评审
  8. php集成环境安装包网盘,php环境集成安装包下载|php5环境集成安装包正式版_ - 极光下载站...
  9. python剪切文件到另外路径_python剪切文件
  10. 【实用】Word如何转换成PDF格式,文件转换三步免费搞定
  11. Java中的“无限循环”结构
  12. Discord账号被封怎么办?Discord账号解封申诉方案
  13. Beagle X15 版本制作和烧录
  14. 【编译原理】LL(1)语法分析器
  15. 君子不玩物丧志,亦常以借物调心,网站集成二次元网页小组件(widget)石蒜模拟器,聊以赏玩
  16. 微信小程序连接阿里云物联网平台——物联网远程控制开发1
  17. 进程调度算法FCFS和RR
  18. C语言计算一个整数的位数
  19. Python实现小猪佩奇
  20. Python数据可视化学习笔记:第一章 关联图 第四节 使用Python绘制一般气泡图

热门文章

  1. 不小心把移动硬盘设置为活动分区后的解决方法
  2. linux ip转发 丢包,sendto频率过快导致发送丢包
  3. sql server在指定模式下创建表
  4. html超链接为变量,如何向超链接添加变量值
  5. 在html中 创建超链接使用的标记是,建立超链接标记是什么
  6. java回复功能_Java实现评论回复功能
  7. 计算机导论与程序设计pdf,西安电子科技大学计算机导论与C语言程序设计 操作系统与常用办公软件知识.pdf...
  8. 阿里云存储开通与使用
  9. 计算机图形图像设计构图的基本形式,构图一学就会!构图基本形式只有四种
  10. 没有mysql sock_找不到mysql.sock,mysql.sock丢失问题解决方法