HM代码学习-概念整理

代码版本:HM-16.6

“概念整理”部分记录学习HM代码过程中遇到的一些之前不了解的概念。

场编码和帧编码

遇到这个概念,是在看TAppEncCfg类中有一个成员变量m_isField,这个变量会影响TAppEncTop的encode函数中创建TComPicYuv的时候分配的内存的高度不同,所以比较好奇蛇哥flag是控制什么的。

又发现encoder_lowdelay_main_field_coding.cfg之类的cfg文件中会指定FieldCoding为1,而正常的cfg文件中则不会设置这个值。所以解析cfg的时候,这个值默认为0。

查了一些资料,原来这个叫做场编码,对应的就是正常的帧编码。场编码分成顶场和底场,主要是应用在早期的编码场景中。具体内容可以参考这些链接:

H264编码的场格式编码 - 知乎

帧编码与场编码的区别分析_飞翔的鲲的博客-CSDN博客_场编码

新的编码场景下应该用的不多了,不过也还是了解一下吧。 

Slice/Slice Segment/Tile的差别

这几个概念困扰我已久,直到看到这篇知乎上的文章:

hevc t

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值