NMM视频技术(旧)

 找回密码
 成为会员
搜索
查看: 6030|回复: 7

[AVC(H.264)] 请教x264编码日志的详细解释

[复制链接]
发表于 2008-9-22 01:05 | 显示全部楼层 |阅读模式
我虽然经常使用x264编码,但一直不了解它的日志的详细含义,特别是 mb I/P/B 部分。
我想知道如何通过日志来分辨编码质量的好坏。
下面是一段2pass的日志,用megui来自动2pass编码,没有打开PSNR和SSIM。

编码设置如下:
program --pass 2 --bitrate 1400 --stats ".stats" --level 4 --keyint 240 --min-keyint 1 --ref 5 --mixed-refs --no-fast-pskip --bframes 3 --b-pyramid --b-rdo --bime --direct auto --filter 1:1 --subme 7 --trellis 2 --psy-rd 0.0:0 --partitions p8x8,b8x8,i4x4,i8x8 --8x8dct --qpmin 12 --qpmax 24 --qpstep 8 --me umh --threads 2 --thread-input --aq-mode 0 --progress --no-dct-decimate --no-psnr --no-ssim --output "output" "input" --sar 40:33

1pass:     
avis [info]: 704x480 @ 23.98 fps (34800 frames)
x264 [info]: using SAR=40/33
x264 [info]: using cpu capabilities: MMX2 SSE2Fast SSSE3 PHADD SSE4 Cache64

x264 [info]: slice I:371   Avg QP:13.61  size: 57773
x264 [info]: slice P:12214 Avg QP:15.79  size: 16241
x264 [info]: slice B:22215 Avg QP:16.32  size:  1735
x264 [info]: consecutive B-frames:  9.6% 10.5%  8.0% 71.9%
x264 [info]: mb I  I16..4: 31.0%  0.0% 69.0%
x264 [info]: mb P  I16..4: 15.4%  0.0%  0.0%  P16..4: 64.1%  0.0%  0.0%  0.0%  0.0%    skip:20.5%
x264 [info]: mb B  I16..4:  0.3%  0.0%  0.0%  B16..8: 17.9%  0.0%  0.0%  direct:14.1%  skip:67.7%  L0:33.0% L1:58.7% BI: 8.2%
x264 [info]: final ratefactor: 15.84
x264 [info]: direct mvs  spatial:99.7%  temporal:0.3%
x264 [info]: kb/s:1424.0
encoded 34800 frames, 43.86 fps, 1424.04 kb/s


2pass:
avis [info]: 704x480 @ 23.98 fps (34800 frames)
x264 [info]: using SAR=40/33
x264 [info]: using cpu capabilities: MMX2 SSE2Fast SSSE3 PHADD SSE4 Cache64
mp4 [info]: initial delay 2002 (scale 24000)
                                                                              
x264 [info]: slice I:371   Avg QP:12.51  size: 58725
x264 [info]: slice P:12214 Avg QP:13.84  size: 16469
x264 [info]: slice B:22215 Avg QP:14.58  size:  1404
x264 [info]: consecutive B-frames:  9.6% 10.5%  8.0% 71.9%
x264 [info]: mb I  I16..4: 20.6% 36.9% 42.5%
x264 [info]: mb P  I16..4:  3.5%  6.6%  2.1%  P16..4: 51.0% 13.3% 14.0%  0.0%  0.0%    skip: 9.5%
x264 [info]: mb B  I16..4:  0.0%  0.0%  0.0%  B16..8: 29.7%  0.7%  0.9%  direct: 1.9%  skip:66.7%  L0:43.9% L1:51.8% BI: 4.4%
x264 [info]: 8x8 transform  intra:50.2%  inter:41.4%
x264 [info]: direct mvs  spatial:98.3%  temporal:1.7%
x264 [info]: ref P L0  66.5% 12.7%  8.7%  4.9%  7.2%
x264 [info]: ref B L0  72.1% 17.0%  8.0%  2.9%
x264 [info]: ref B L1  92.3%  7.7%
x264 [info]: kb/s:1400.7
encoded 34800 frames, 10.03 fps, 1400.77 kb/s


请各位高手给予详细解释,谢谢!
发表于 2008-9-22 22:04 | 显示全部楼层
log只能给出一个客观的数值作为参考,实际上压制质量的好坏还是要靠肉眼来分辨,当然从log数值也能了解一些最基本的信息。

最开始的三行不用解释也可以看明白吧……囧
之后的slice IPB,后面的数值分别对应 数量 平均Q值 体积
consecutive B-frames 后面的数字,是表示连续B帧所占的百分比,第一个是0,第二个是1,依此类推
mb的IPB那里我也不是很了解……
ref就是参考帧的数量

其实不用对参数太在意,质量还是用眼睛看吧~
发表于 2008-9-22 23:02 | 显示全部楼层
嗯。。观念同上~

看出QP很高,质量应该不会太差=。=
发表于 2008-9-24 09:20 | 显示全部楼层
不过一些固有缺陷真是一点办法也没有,比如暗部的颜色过度,很容易会出现banding,以及暗部的噪声,会出现block
倒是可以用过使用psyrd来解决,不过码率就……HOHO~
发表于 2008-9-24 19:39 | 显示全部楼层
ref是不是可以开到8=v=
话说psyrd似乎不是很好用?
 楼主| 发表于 2008-9-25 01:07 | 显示全部楼层
谢谢VempX的解答。
我重点想要了解的就是mb那里的部分。我自己的理解是,mb指的是macroblock。
I16..4: 20.6% 36.9% 42.5% 貌似指的是I帧16x16、8x8、4x4的分块数量分别为20.6%、36.9%、42.5%。
但是,在mb P以及mb B里面还出现了I帧的数值,我不太明白这是什么意思。
另外,skip是否和x264设置里的fast P-skip有关系呢?(我编码时打开了no fast P-skip)
还有mb B里面的东西,也是看不懂。
发表于 2008-9-25 20:51 | 显示全部楼层
http://forum.doom9.org/showthread.php?t=139827&page=3

再引用一遍,51楼52楼

不过vempx大都说明了,可能别人还不懂所以再废话一遍了
发表于 2008-9-26 14:21 | 显示全部楼层
下面一段文字 介绍了B帧的几种模式 我想可以解释 x264 log中的“direct”“ skip”

B帧的双向预测使用了直接模式(direct mode)、对称模式(symmetric mode)和跳过模式(skip mode)。使用对称模式时,码流只需要传送前向运动矢量,后向运动矢量可由前向运动矢量导出,从而节省后向运动矢量的编码开销。对于直接模式,当前块的前、后向运动矢量都是由后向参考图像相应位置块的运动矢量导出,无需传输运动矢量,因此也可以节省运动矢量的编码开销。跳过模式的运动矢量的导出方法和直接模式的相同,跳过模式编码的块运动补偿的残差为零,即该模式下宏块只需要传输模式信号,而不需要传输运动矢量、补偿残差等附加信息。
您需要登录后才可以回帖 登录 | 成为会员

本版积分规则

小黑屋|手机版|NMM视频技术

GMT+8, 2025-5-5 23:49 , Processed in 0.197813 second(s), 15 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表