
H265
ITRonnie
专注视频行业,一直在路上
展开
-
x264、x265中cuTree原理分析
mbtree是x264中引入的一项创新性技术,可以有效提高主客观质量(参考文章最后的表格1)。x265继承了这一算法,改名为cuTree,算法本身实现较为复杂,下面探讨一下cutree原理,结合代码来分析实现细节。 cutree和mbtree都是根据当前块被参考的程度调整qpOffset,要知道当前块被参考的程度,很显然需要一个编码的反推过程。 对于帧间参考,参考帧的质...原创 2019-11-27 11:23:05 · 5311 阅读 · 1 评论 -
HEVC如何计算Cu_Qp_Delta
研究HEVC标准发现,HEVC对cu_qp_delta的处理虽然有点晦涩难懂,但还是挺科学合理的。 HEVC中计算CuQpDelta的公式如下: CuQpDelta = (qp - qp_pred + 78 + qpBdOffsetY + (qpBdOffsetY / 2)) % (52 + qpBdOffsetY) - 26 - (qpBdOffsetY / 2) ----...原创 2019-10-25 16:17:30 · 2708 阅读 · 0 评论 -
开发一个HEVC码率分析工具
在开发编解码器时,经常需要分析码率波动情况,分析缓冲区是否有上下溢情况,所以用python开发一个简单的工具。它可以分析HM编码器的输出log,提取每一帧的比特数,结合视频帧率,就可以绘制码率波动图和VBV缓冲区状态的图像了。工具的UI如图1图2所示:plot type选项有两种选择:选项1"bitrate viewer"用于绘制每秒钟的码率情况;选项2"vbvbuffer view"用于绘制...原创 2019-10-14 17:12:21 · 1850 阅读 · 4 评论 -
HEVC中与dpb(decoder picture buffer)相关的语法元素的理解
hevc标准中有很多语法元素理解起来比较麻烦,所以在此记录下来,供以后查阅。sps中的sps_max_num_reorder_pics 标准中的解释:"sps_max_num_reorder_pics[ i ] indicates the maximum allowed number of pictures that can precede any picture in the CV原创 2017-12-21 11:24:07 · 3868 阅读 · 0 评论 -
两种HDR格式(HLG, HDR10)的理解
1、HLG只在sps的vui中会携带信息,包括colour_primaries(=9),transfer_characteristics(=18),matrix_coefficients(=9)2、HDR10除了SPS的VUI中携带的信息,在key frame会携带相应的SEI(mastering display、content light level)原创 2018-02-06 10:36:00 · 20498 阅读 · 3 评论 -
理解视频编码中的熵编码
首先理解算术编码的原理: 假设比特0、1概率分别为0.8和0.2。信源流为00100,对此信源进行算术编码,过程如下: 每输入一个新比特,都会缩小概率区间,当输入00100后,得到的概率区间为(0.512, 0.59392),解码过程与编码过程相反,给定最终概率区间可以解码出原始比特流:(1)、初始概率区间为(0, 1.0)。(2)、(0.512, 0.59392)落在(0, 0.8)之间,...原创 2018-04-10 11:09:25 · 1305 阅读 · 0 评论 -
hevc的量化系数编码之 最后一个非零系数的坐标编码方法
对量化后的系数,会根据扫描次序得到最后一个非零系数的(x, y)坐标。将其进行编码。 (x, y)分别都是由前缀和后缀部分组合得到的。 x,y的取值范围为0~31, 这个区间被分割为10段,如下图所示 前缀表示的就是段信息,10个段对应的prefix如下: 后缀表示的是段内信息,即相对于段的起始位置的偏移量,可以看到,只有segment 5, 6, 7, 8, 9, 10才需要后缀表...原创 2018-06-05 12:21:31 · 568 阅读 · 0 评论