流媒体相关参数视频压缩、音频压缩、图像压缩、媒体容器视频压缩ISO/IECMJPEG、MPEG-2 (Part 2)、MPEG-4 (Part 2/ASP · Part 10/AVC)ITU-TH.263 · H.264 · H.265 (HEVC)其它AVS、VP6、VP7、VP8、VP9音频压缩...
分类:
其他好文 时间:
2015-01-31 14:17:03
阅读次数:
457
在 HEVC/H265 代码中,有三个使用的namespace:
1. df
2. df::program_options_lite
3. RasterAddress
对于第一个 df 的namespace,我一直百思不得其解,df 是什么含义?老外对起名是很重视的,肯定有原因。 HEVC/H265 代码的编写者有:vidyo, toshiba, ti, ten, technicolor,...
分类:
其他好文 时间:
2015-01-26 11:53:58
阅读次数:
245
巧妇难为无米之炊,身为一个码农怎能碗里没有米呢?想必很多朋友都碰到下载测试序列的困惑,为了减少麻烦,现提供HEVC所有测试序列的下载,上传到百度云网盘上,方便大家下载。主要的测试序列如下:Test sequencesClassSequence nameFrame countFrame rateBit...
分类:
其他好文 时间:
2015-01-18 14:15:28
阅读次数:
335
这里主要是结合HEVC的解码端I帧进行讲解的,其中P,B帧基本上没有太大的出入,主要是PU还存在不规则的情况,因为我现在刚做完I帧,对P帧还没有把握
之后清楚解析后,再进行补充
在之前的博文中提到了编码树结构的相关概念,这里主要结合代码进行进一步的讲解
在帧内模式中:
35中预测模式是在PU的基础上进行定义的,但是在具体的帧内预测过程中是以TU为单位的,标准规定PU可以四叉树的形式划分为T...
分类:
其他好文 时间:
2015-01-08 18:04:47
阅读次数:
452
这两天一直纠结于pcPicYuvOrg与getPicYuvOrg()的对应关系,这是因为我自定义了一个pcPicYuvBgf与getPicYuvBgf(),初衷是实现类似于pcPicYuvOrg与getPicYuvOrg()的对应关系,以便于我后面的处理。调试了两天,最后才发现败给了自己的“想太多”。其实这个超简单~~~碰到这种自己想扇自己一巴掌的东西,真心想哭!!!...
分类:
其他好文 时间:
2015-01-07 11:07:50
阅读次数:
169
如果色度信号使用较大的量化步长会出现颜色漂移现象。为了应对这一问题,HEVC标准将色度信号的量化参数限制为0~45。具体来说,亮度信号QP小于30时,色度信号QP与前者相同;而当亮度信号QP为30~51时,二者对应关系如下表所示。
---------------------------------------------------------------------------------...
分类:
其他好文 时间:
2015-01-06 17:53:44
阅读次数:
535
变换系数熵编码简介:
变换系数的扫描是基于4*4大小的子块进行的,子块和子块内部递归扫描。较大的TB首先被分割为多个4*4子块,扫描一般起始于最后一个系数,终止于DC系数,扫描包括子块的扫描和子块内部的扫描。每一个子块内的扫描方式都是一样的。
三种扫描方式:对角,水平,垂直
编码过程:
非零系数位置信息编码:
1 最后一个非零系数的位置:
扫描最后一个非零系数在TB中的位...
分类:
其他好文 时间:
2015-01-05 18:46:48
阅读次数:
271
上一篇中主要介绍了编码中的原理,这里主要是结合HM中的代码介绍读残差系数的方法
HM变换系数熵解码简介:
初始一个TU对象
成员变量介绍:
public:
typedef enum TU_SPLIT_MODE { DONT_SPLIT=0, VERTICAL_SPLIT=1, QUAD_SPLIT=2, NUMBER_OF_SPLIT_MODES=3 } SPLI...
分类:
其他好文 时间:
2015-01-05 18:45:16
阅读次数:
817
这两天在写HEVC中读CTU的部分,包括PartMode,partSize,PredInfo
还有特别重要的扫描表和残差系数的几个函数,经过调试已经没有问题,但是在调试过程中因为涉及到码字等相关问题,调试的复杂度比较大,
后来根据写TRACE文件的方法,调试基本就是流程性的工作了,不再会出现没有头绪的情况
在HM代码模型中,在
/** \file TComRom.h
...
分类:
其他好文 时间:
2014-12-30 15:14:11
阅读次数:
585
逆扫描在整个解码器标准代码中的位置如下图所示:
图3 逆扫描在整个解码器标准代码中的位置
在上图中,在TDecEntropy::xDecodeTransform()函数中通过递归调用将CU划分成TU,在TDecSbac::parseCoeffNxN()函数中完成对TU以4x4为单位的逆扫描。...
分类:
其他好文 时间:
2014-12-28 15:39:56
阅读次数:
221