[x264] mbtree 使用指南与源码分析

时间:2023-01-20 22:45:02

源码分析

x264源码解析:码率控制之mbtree — – – x264_macroblock_tree
x264源码解析:lookahead之frametype — x264_slicetype_path (Viterbi算法)
x264源码解析:lookahead之md/mv — — x264_slicetype_frame_cost
x264源码解析:lookahead之cost计算基础 x264_slicetype_mb_cost等
x264源码解析:mbtree propagate 计算流程
x264源码解析:mbtree qp调整

背景

Macroblock-tree derives its name from the fact that its operation can be represented as a tree structure over the macroblocks of a video where the nodes are macroblocks and the edges are prediction dependencies. The weights of the edges map to the propagate_fraction value. Despite the name, as seen above, macroblock-tree can be implemented without any mapping the lookahead into an explicit tree structure – the motion vectors and costs are sufficient to implicitly store the information for the tree.

使用

--no-mbtree Disable mb-tree ratecontrol.[not set] --rc-lookahead Number of frames for frametype lookahead [40] --qcomp <float> QP curve compression [0.60]

相关

--pbratio <float> QP factor between P and B [1.30]

控制mbtree使用的lookahead的帧数;控制mbtree作用的强度;去除目的相同的算法工具(mbtree要更灵活)

实验

选取不同复杂度视频进行测试。
为获得较为主观的质量评价结果,选择VMAF计算质量。
注意:rd性能变化和码率波动,见图。
注意:注意评价指标与主观评价的区别。(mbtree的效果可能会减弱)
注意:三张强弱标反了。。懒得换了。。注意。

[x264] mbtree 使用指南与源码分析
[x264] mbtree 使用指南与源码分析
[x264] mbtree 使用指南与源码分析