Introduction HEVC学习笔记系列目录 GEM5是一款模块化的离散事件驱动全系统模拟器,它结合了M5和GEMS中最优秀的部分,是一款高度可配置、集成多种ISA和多种CPU模型的体系结构模拟器。M5是由Michigan大学开发的一款开源的多处理机模拟器,受到了业内的广泛关注,很多高水平论文都采用M5作为研究工具。另一方面,Wisconsin推出的GEMS能够对储存层次进行详细而灵活的模拟,包括对多种不同的cache一
more ...
Pre HEVC学习笔记系列目录 GOP一直没有理清楚,现在记笔记总结一下现有的理解和遇到的问题。有错误请指正。 GOP 视频序列由若干时间连续的图像构成,在对其进行压缩时,先将视频序列分割为若干个小的图像组(Group Of Pictures,GOP).在视频编码中,存在两种GOP类型:封闭式GOP(Closed GOP)和开放式GOP(Open GOP),封闭式GOP如下图所示,每个GOP以IDR(Instantaneous De
more ...
Pre HEVC学习笔记系列目录 从这一节开始,才开始深入重点部分。接下来的几节,会比较详细的结合代码看。我讲述的方法遵循一贯的习惯:先看整体大概可能做什么,然后再分部分看,确认符合自己预期或者调整对框架的理解。 predInterSearch 先接着看checkInter_rd5_6,抛去关于analysisMode的,整个函数就只剩下了8行:
more ...
Pre HEVC学习笔记系列目录 两个if构成了compressInterCU_rd5_6函数的主要内容,来看如果当前不继续划分四叉树会出现什么情况。 if (mightNotSplit) 还是先看大体过程: 两个initSubCU 然后根据earlySkip进行PU的划分,可以从if (!earlySkip)的内部看到很多PRED_2Nx2N等的字眼,符合
more ...
Pre 接下来直接看x265中对CTU块的编码,从对一个CTU的编码开始,CTU的四叉树划分,PU的划分,sad值计算,然后选择最佳匹配块,我将尽可能把我的理解以正确的方式写出来,欢迎大家批评指正。 HEVC学习笔记系列目录 我的x265的版本(hg log查看到的): changeset
more ...
Pre HEVC学习笔记系列目录 视频压缩时,先分割为若干个小的图像组(Group Of Pictures,GOP),每个GOP又被划分为多个片(Slice),一幅图像可以被分割为一个或者多个Slice,每个slice由一个或多个片段(Slice Segement,SS)组成,一个SS在编码时,先被分割为相同大小的树形结构单元(Coding Tree Unit,CTU),每个CTU包括一个亮度属性编码块(Coding Tree Block,CTB)和两个色差CTB,
more ...
Pre HEVC仅仅是一个标准,而落实到代码上,官方给出了HM,截止目前(2015.8.27)为止,版本已经到了16.6。 HEVC官网 HM移植到Arm平台 而x265则是民间的实现,而且支持多线程,速度比HM快很多,但是也忽略了HEVC的一些标准细节。 官网:x265.org docs:
more ...