『漫游』酷论坛>『影音数码技术学习交流』>[原创]x264 rev767测试
Rouble@2008-03-26 00:21
引用
最初由 qyqgpower 发布
umh时提高merange不是单调上升,而是震荡折线式,这我早就说过了吧
esa和tesa是单调上升的
也不是的
偶前面也有数據説出這不是必然的
qyqgpower@2008-03-26 01:13
引用
最初由 Rouble 发布
也不是的
偶前面也有数據説出這不是必然的
我写了batch跑16~64的tesa和umh,醒来收结果[/TX]
vempx@2008-03-26 16:05
在加把劲,添2个数就到8系列了……
qyqgpower@2008-03-26 17:57
patched796
--pass 2 --bitrate 4000 --stats "test%counter%.stats" --level 4.1 --keyint 240 --min-keyint 24 --ref 5 --mixed-refs --no-fast-pskip --bframes 16 --b-pyramid --b-rdo --bime --weightb --direct auto --subme 7 --trellis 2 --analyse p8x8,b8x8,i4x4,i8x8 --8x8dct --merange %counter% --threads auto --sar 32:27
测试结果excel文件下载
http://qyqgpower.googlepages.com/merange_test.xls
Rouble@2008-03-26 20:12
偶回來了
又有無碼PP看...orz
恩 先假設大多数情况下
實際就如圖所視
multihexagon還是和予計一般
雖然range値越大還是會提高質量
不過如綫性圖所視很不穩定
實際情况還是看個人能消耗多一点還是小一点的處理時間
有能力的増加range search保險一点
不過exhaustive比較有意思
綫性圖顯視出mvrange在前半部份
有很明顯的質量提升
但在後部份就顯現出明顯的不穩定
這和想像的而不一樣
明智的應用mvrange還是不要太大
就算假設有這個可供消耗的能力
而且range search越大消耗的時間也是幾何級提升
可得到的益處卻不是
這圖表對exhaustive的應用很有參考性
維一的可惜就欠了一條時間軸
這非常有助於如何取得合適平衡点
當有需要利用exhaustive系時
3Q了!qyq兄
真的很有參考價値
做low res時着實有重新考慮再利用的可能就個人來説
米皇們就不必多想了應該利用...orz
techneek@2008-03-26 21:19
非常棒的测试!感谢qyqgpower!
在下载的excel表格内,为图表添加拟合线,使用对数拟合的时候可以明显的看出,在merange到30多的时候,SSIM和PSNR上升的趋势都明显趋缓,看来32确实是一个比较“经济”的设定~
还想请教qyqgpower的批处理是怎么做的?
另外,关于trellis的问题,我想换个片源再试一下,因为综合看qyqgpower和rouble的测试,均显示trellis=2的画质即使在crf下也大于trellis=1,而我的测试结果争则相反,我怀疑是不是因为片源的差异造成的,我准备换一个正常的电影片段试一试~
superkidx@2008-03-26 21:51
天那 这些数据要花些时间消化的说
techneek@2008-03-26 22:11
以下是换片源测试的结果,非常奇怪,我前面的结论此处仍然适用。
就是crf下,trellis=1的结果才是最好的,trellis=2显著降低码率和速度,但同时ssim和psnr也会跟着降低。
x264版本是798 patched
片源换成了DVDRip,普通的电视剧片段,动态不大。
数据如下,这回贴出详细参数:
引用
trellis=0
Job commandline: "D:\Program Files\megui\tools\x264\x264.exe" --crf 22 --level 3.1 --ref 5 --mixed-refs --no-fast-pskip --bframes 3 --b-pyramid --b-rdo --bime --weightb --direct auto --subme 6 --analyse p8x8,b8x8,i4x4,i8x8 --8x8dct --vbv-bufsize 14000 --vbv-maxrate 14000 --me umh --merange 32 --threads auto --thread-input --sar 1:1 --progress --no-dct-decimate --output "D:\RipTemp\264deblock\g.mkv" "D:\RipTemp\264deblock\g.avs"
avis [info]: 640x480 @ 25.00 fps (2001 frames)
x264 [info]: using SAR=1/1
x264 [info]: using cpu capabilities: MMX MMXEXT SSE SSE2 SSE3 3DNow!
x264 [info]: slice I:22 Avg QP:18.46 size: 19348 PSNR Mean Y:50.45 U:53.71 V:53.36 Avg:51.17 Global:47.79
x264 [info]: slice P:987 Avg QP:20.10 size: 8480 PSNR Mean Y:46.32 U:50.49 V:49.82 Avg:47.17 Global:46.38
x264 [info]: slice B:992 Avg QP:22.70 size: 2054 PSNR Mean Y:45.64 U:50.43 V:49.98 Avg:46.57 Global:45.44
x264 [info]: mb I I16..4: 19.5% 74.3% 6.2%
x264 [info]: mb P I16..4: 9.7% 23.4% 1.9% P16..4: 43.9% 14.0% 3.0% 0.0% 0.0% skip: 4.0%
x264 [info]: mb B I16..4: 0.7% 1.3% 0.1% B16..8: 32.1% 1.7% 2.3% direct: 2.3% skip:59.5%
x264 [info]: 8x8 transform intra:67.1% inter:84.8%
x264 [info]: direct mvs spatial:99.9% temporal:0.1%
x264 [info]: ref P 80.4% 11.3% 4.4% 2.0% 1.9%
x264 [info]: ref B 87.7% 8.0% 2.9% 1.4%
x264 [info]: SSIM Mean Y:0.9893034
x264 [info]: PSNR Mean Y:46.027 U:50.492 V:49.936 Avg:46.917 Global:45.901 kb/s:1082.67
encoded 2001 frames, 4.53 fps, 1082.80 kb/s
desired video bitrate of this job: 22 kbit/s - obtained video bitrate (approximate): 1085 kbit/s
trellis=1
Job commandline: "D:\Program Files\megui\tools\x264\x264.exe" --crf 22 --level 3.1 --ref 5 --mixed-refs --no-fast-pskip --bframes 3 --b-pyramid --b-rdo --bime --weightb --direct auto --subme 6 --trellis 1 --analyse p8x8,b8x8,i4x4,i8x8 --8x8dct --vbv-bufsize 14000 --vbv-maxrate 14000 --me umh --merange 32 --threads auto --thread-input --sar 1:1 --progress --no-dct-decimate --output "D:\RipTemp\264deblock\g1.mkv" "D:\RipTemp\264deblock\g.avs"
avis [info]: 640x480 @ 25.00 fps (2001 frames)
x264 [info]: using SAR=1/1
x264 [info]: using cpu capabilities: MMX MMXEXT SSE SSE2 SSE3 3DNow!
x264 [info]: slice I:22 Avg QP:18.80 size: 19657 PSNR Mean Y:50.47 U:53.79 V:53.34 Avg:51.11 Global:48.45
x264 [info]: slice P:987 Avg QP:20.09 size: 8735 PSNR Mean Y:46.65 U:50.49 V:49.81 Avg:47.44 Global:46.69
x264 [info]: slice B:992 Avg QP:22.71 size: 2370 PSNR Mean Y:46.02 U:50.40 V:49.95 Avg:46.87 Global:45.75
x264 [info]: mb I I16..4: 19.3% 74.1% 6.6%
x264 [info]: mb P I16..4: 9.9% 22.9% 2.2% P16..4: 44.1% 13.7% 3.1% 0.0% 0.0% skip: 4.1%
x264 [info]: mb B I16..4: 0.7% 1.5% 0.1% B16..8: 31.0% 1.7% 2.1% direct: 2.4% skip:60.5%
x264 [info]: 8x8 transform intra:65.9% inter:78.8%
x264 [info]: direct mvs spatial:99.9% temporal:0.1%
x264 [info]: ref P 79.6% 11.9% 4.5% 2.1% 1.9%
x264 [info]: ref B 87.6% 8.3% 2.8% 1.3%
x264 [info]: SSIM Mean Y:0.9898281
x264 [info]: PSNR Mean Y:46.379 U:50.483 V:49.918 Avg:47.197 Global:46.212 kb/s:1139.94
encoded 2001 frames, 4.40 fps, 1140.08 kb/s
desired video bitrate of this job: 22 kbit/s - obtained video bitrate (approximate): 1142 kbit/s
trellis=2
Job commandline: "D:\Program Files\megui\tools\x264\x264.exe" --crf 22 --level 3.1 --ref 5 --mixed-refs --no-fast-pskip --bframes 3 --b-pyramid --b-rdo --bime --weightb --direct auto --subme 6 --trellis 2 --analyse p8x8,b8x8,i4x4,i8x8 --8x8dct --vbv-bufsize 14000 --vbv-maxrate 14000 --me umh --merange 32 --threads auto --thread-input --sar 1:1 --progress --no-dct-decimate --output "D:\RipTemp\264deblock\g1.mkv" "D:\RipTemp\264deblock\g.avs"
avis [info]: 640x480 @ 25.00 fps (2001 frames)
x264 [info]: using SAR=1/1
x264 [info]: using cpu capabilities: MMX MMXEXT SSE SSE2 SSE3 3DNow!
x264 [info]: slice I:23 Avg QP:18.49 size: 19633 PSNR Mean Y:50.59 U:53.63 V:53.26 Avg:51.23 Global:48.44
x264 [info]: slice P:985 Avg QP:20.08 size: 8569 PSNR Mean Y:46.62 U:50.48 V:49.81 Avg:47.42 Global:46.66
x264 [info]: slice B:993 Avg QP:22.73 size: 2196 PSNR Mean Y:45.94 U:50.41 V:49.96 Avg:46.81 Global:45.69
x264 [info]: mb I I16..4: 16.9% 76.8% 6.3%
x264 [info]: mb P I16..4: 8.7% 24.6% 1.4% P16..4: 44.4% 13.9% 3.2% 0.0% 0.0% skip: 3.7%
x264 [info]: mb B I16..4: 0.6% 1.2% 0.1% B16..8: 31.3% 1.8% 2.0% direct: 2.5% skip:60.6%
x264 [info]: 8x8 transform intra:70.7% inter:92.5%
x264 [info]: direct mvs spatial:99.9% temporal:0.1%
x264 [info]: ref P 80.0% 11.6% 4.4% 2.1% 1.9%
x264 [info]: ref B 87.3% 8.4% 2.9% 1.4%
x264 [info]: SSIM Mean Y:0.9897400
x264 [info]: PSNR Mean Y:46.327 U:50.482 V:49.923 Avg:47.159 Global:46.170 kb/s:1106.71
encoded 2001 frames, 3.87 fps, 1106.84 kb/s
desired video bitrate of this job: 22 kbit/s - obtained video bitrate (approximate): 1109 kbit/s
Rouble@2008-03-26 22:29
trellis在crf一般情况能不能用應不應用要怎麼用
techneek兄一定看過不少訊息就不多説
偶還是覺得這兩段片的類型有關係大於crf値的問題
不過或者techneek兄再tune一下crf値再比較一下
理論是死人是活的
techneek@2008-03-26 22:40
又找了一段非常好压的动画片试了一下,结论照旧:
Job commandline: "D:\Program Files\megui\tools\x264\x264.exe" --crf 22 --level 3.1 --ref 5 --mixed-refs --no-fast-pskip --bframes 3 --b-pyramid --b-rdo --bime --weightb --direct auto --subme 6 --trellis 1 --analyse p8x8,b8x8,i4x4,i8x8 --8x8dct --vbv-bufsize 14000 --vbv-maxrate 14000 --me umh --merange 32 --threads auto --thread-input --sar 1:1 --progress --no-dct-decimate --output "D:\RipTemp\264deblock\g1.mkv" "D:\RipTemp\264deblock\g.avs"
avis [info]: 848x480 @ 24.04 fps (2001 frames)
x264 [info]: using SAR=1/1
x264 [info]: using cpu capabilities: MMX MMXEXT SSE SSE2 SSE3 3DNow!
x264 [info]: slice I:22 Avg QP:21.86 size: 21929 PSNR Mean Y:43.80 U:47.61 V:46.74 Avg:44.56 Global:40.84
x264 [info]: slice P:609 Avg QP:18.68 size: 2798 PSNR Mean Y:45.89 U:48.62 V:47.75 Avg:46.51 Global:46.29
x264 [info]: slice B:1370 Avg QP:21.06 size: 240 PSNR Mean Y:45.84 U:48.64 V:47.78 Avg:46.48 Global:46.28
x264 [info]: mb I I16..4: 35.5% 34.6% 29.9%
x264 [info]: mb P I16..4: 2.3% 2.0% 0.8% P16..4: 27.0% 3.7% 2.0% 0.0% 0.0% skip:62.1%
x264 [info]: mb B I16..4: 0.1% 0.0% 0.0% B16..8: 5.4% 0.1% 0.1% direct: 0.2% skip:94.1%
x264 [info]: 8x8 transform intra:37.2% inter:53.1%
x264 [info]: direct mvs spatial:95.7% temporal:4.3%
x264 [info]: ref P 67.2% 14.6% 10.8% 3.4% 4.1%
x264 [info]: ref B 77.5% 14.3% 6.2% 2.0%
x264 [info]: SSIM Mean Y:0.9942586
x264 [info]: PSNR Mean Y:45.832 U:48.622 V:47.760 Avg:46.465 Global:46.163 kb/s:241.71
encoded 2001 frames, 11.12 fps, 241.88 kb/s
desired video bitrate of this job: 22 kbit/s - obtained video bitrate (approximate): 244 kbit/s
Job commandline: "D:\Program Files\megui\tools\x264\x264.exe" --crf 22 --level 3.1 --ref 5 --mixed-refs --no-fast-pskip --bframes 3 --b-pyramid --b-rdo --bime --weightb --direct auto --subme 6 --trellis 2 --analyse p8x8,b8x8,i4x4,i8x8 --8x8dct --vbv-bufsize 14000 --vbv-maxrate 14000 --me umh --merange 32 --threads auto --thread-input --sar 1:1 --progress --no-dct-decimate --output "D:\RipTemp\264deblock\g2.mkv" "D:\RipTemp\264deblock\g.avs"
avis [info]: 848x480 @ 24.04 fps (2001 frames)
x264 [info]: using SAR=1/1
x264 [info]: using cpu capabilities: MMX MMXEXT SSE SSE2 SSE3 3DNow!
x264 [info]: slice I:22 Avg QP:22.10 size: 21483 PSNR Mean Y:43.68 U:47.58 V:46.72 Avg:44.44 Global:40.00
x264 [info]: slice P:609 Avg QP:18.78 size: 2744 PSNR Mean Y:45.78 U:48.58 V:47.72 Avg:46.42 Global:46.18
x264 [info]: slice B:1370 Avg QP:21.23 size: 212 PSNR Mean Y:45.72 U:48.60 V:47.75 Avg:46.37 Global:46.16
x264 [info]: mb I I16..4: 32.0% 38.1% 29.9%
x264 [info]: mb P I16..4: 2.1% 2.3% 0.8% P16..4: 27.1% 3.9% 2.2% 0.0% 0.0% skip:61.7%
x264 [info]: mb B I16..4: 0.1% 0.0% 0.0% B16..8: 5.3% 0.1% 0.1% direct: 0.2% skip:94.2%
x264 [info]: 8x8 transform intra:41.6% inter:59.0%
x264 [info]: direct mvs spatial:95.8% temporal:4.2%
x264 [info]: ref P 68.3% 13.8% 10.6% 3.2% 4.0%
x264 [info]: ref B 78.5% 13.6% 6.0% 1.9%
x264 [info]: SSIM Mean Y:0.9941641
x264 [info]: PSNR Mean Y:45.713 U:48.582 V:47.726 Avg:46.363 Global:46.021 kb/s:233.82
encoded 2001 frames, 10.24 fps, 233.99 kb/s
desired video bitrate of this job: 22 kbit/s - obtained video bitrate (approximate): 236 kbit/s
之所以说非常好压,是因为848×480×23.976的片子,crf=22下压出来只有240kbps,呵呵~
下面就依照rouble的提醒把crf的值调整一下看看,rouble能否赐教一下以您的理解Trellis应该怎么用呢?我正是因为对这方面的讯息了解的较少所以才会把测试重点放在此处的,谢谢~
techneek@2008-03-26 22:53
还是上面的片源,crf=16下 trelis=1和2的对比,结论照旧:
Job commandline: "D:\Program Files\megui\tools\x264\x264.exe" --crf 16 --level 3.1 --ref 5 --mixed-refs --no-fast-pskip --bframes 3 --b-pyramid --b-rdo --bime --weightb --direct auto --subme 6 --trellis 1 --analyse p8x8,b8x8,i4x4,i8x8 --8x8dct --vbv-bufsize 14000 --vbv-maxrate 14000 --me umh --merange 32 --threads auto --thread-input --sar 1:1 --progress --no-dct-decimate --output "D:\RipTemp\264deblock\g2.mkv" "D:\RipTemp\264deblock\g.avs"
avis [info]: 848x480 @ 24.04 fps (2001 frames)
x264 [info]: using SAR=1/1
x264 [info]: using cpu capabilities: MMX MMXEXT SSE SSE2 SSE3 3DNow!
x264 [info]: slice I:22 Avg QP:15.90 size: 35648 PSNR Mean Y:48.83 U:51.70 V:50.98 Avg:49.44 Global:46.54
x264 [info]: slice P:609 Avg QP:14.29 size: 5642 PSNR Mean Y:50.19 U:52.42 V:51.83 Avg:50.73 Global:50.49
x264 [info]: slice B:1370 Avg QP:13.67 size: 753 PSNR Mean Y:50.09 U:52.38 V:51.79 Avg:50.64 Global:50.41
x264 [info]: mb I I16..4: 31.7% 29.1% 39.2%
x264 [info]: mb P I16..4: 2.3% 1.6% 1.1% P16..4: 42.1% 6.3% 4.8% 0.0% 0.0% skip:41.8%
x264 [info]: mb B I16..4: 0.1% 0.1% 0.0% B16..8: 13.3% 0.3% 0.4% direct: 0.9% skip:84.9%
x264 [info]: 8x8 transform intra:31.1% inter:46.8%
x264 [info]: direct mvs spatial:94.9% temporal:5.1%
x264 [info]: ref P 67.4% 14.1% 10.2% 3.8% 4.5%
x264 [info]: ref B 71.7% 17.7% 7.9% 2.8%
x264 [info]: SSIM Mean Y:0.9971128
x264 [info]: PSNR Mean Y:50.104 U:52.385 V:51.794 Avg:50.654 Global:50.366 kb/s:504.70
encoded 2001 frames, 8.93 fps, 504.84 kb/s
desired video bitrate of this job: 16 kbit/s - obtained video bitrate (approximate): 507 kbit/s
Job commandline: "D:\Program Files\megui\tools\x264\x264.exe" --crf 16 --level 3.1 --ref 5 --mixed-refs --no-fast-pskip --bframes 3 --b-pyramid --b-rdo --bime --weightb --direct auto --subme 6 --trellis 2 --analyse p8x8,b8x8,i4x4,i8x8 --8x8dct --vbv-bufsize 14000 --vbv-maxrate 14000 --me umh --merange 32 --threads auto --thread-input --sar 1:1 --progress --no-dct-decimate --output "D:\RipTemp\264deblock\g3.mkv" "D:\RipTemp\264deblock\g.avs"
avis [info]: 848x480 @ 24.04 fps (2001 frames)
x264 [info]: using SAR=1/1
x264 [info]: using cpu capabilities: MMX MMXEXT SSE SSE2 SSE3 3DNow!
x264 [info]: slice I:22 Avg QP:17.73 size: 33716 PSNR Mean Y:48.34 U:51.48 V:50.79 Avg:48.97 Global:42.35
x264 [info]: slice P:609 Avg QP:14.27 size: 5466 PSNR Mean Y:50.17 U:52.43 V:51.83 Avg:50.71 Global:50.48
x264 [info]: slice B:1370 Avg QP:13.80 size: 683 PSNR Mean Y:50.06 U:52.39 V:51.80 Avg:50.63 Global:50.40
x264 [info]: mb I I16..4: 29.4% 34.7% 35.9%
x264 [info]: mb P I16..4: 2.0% 2.0% 1.2% P16..4: 41.4% 6.3% 4.3% 0.0% 0.0% skip:42.8%
x264 [info]: mb B I16..4: 0.1% 0.1% 0.0% B16..8: 12.8% 0.3% 0.4% direct: 0.9% skip:85.4%
x264 [info]: 8x8 transform intra:36.8% inter:48.4%
x264 [info]: direct mvs spatial:95.2% temporal:4.8%
x264 [info]: ref P 67.9% 13.8% 10.0% 3.8% 4.5%
x264 [info]: ref B 72.6% 17.2% 7.6% 2.6%
x264 [info]: SSIM Mean Y:0.9970893
x264 [info]: PSNR Mean Y:50.076 U:52.396 V:51.798 Avg:50.634 Global:50.175 kb/s:481.13
encoded 2001 frames, 7.80 fps, 481.27 kb/s
desired video bitrate of this job: 16 kbit/s - obtained video bitrate (approximate): 483 kbit/s
(这里的PSNR竟然过50了~)
Rouble@2008-03-26 23:37
偶也想不出為何all mode比final的出來差的原因
原則上crf値低的話應該有較大的空間rdo給trelis量化做微調
不過一般人的説法也是不太贊成one pass下去加入trelis量化
雖然偶還是覺得和片段上有段
不過techneek兄你兩段demo也有相同的問題
偶就覺得不能單單考慮ssim
techneek@2008-03-26 23:43
经过多次的测试,我始终没能复制出Rouble兄和qyqgpower兄测得的结论,我的测试结果始终是,crf模式下,trellis=2的输出总是比trellis=1的输出质量稍差。
但是经过计算发现,如果比较 psnr*ssim/bitrate 的值的话,会发现Trellis=2始终要大于 Trellis=1的值。
trellis=2 vs trellis=1
0.10395 0.09947
0.19553 0.18975
0.04128 0.04012
现在我觉得至少可以这样说,trellis是为PSNR:bit或者SSIM:bit优化的,Trellis总是能够获得更低的码率,
Trellis有的时候甚至能够获得更加的效果,
Trellis也可能会在降低码率的同时降低效果,但前提是码率降低的幅度更大。
也就是说:
在2pass模式下使用trellis是绝对安全的,在速度允许的情况下尽量使用trellis=2,以获得最佳效果。而在1pass模式下,使用trellis总能获得更经济的输出(指的是PSNR或SSIM与码率之比),但是如果更注重质量而不是容量的话,更安全的做法是使用Trelis=1。
EDIT:回头来看看这一结论,似乎相似的论调在doom9上早早就有人提过了,呵呵,没想到废了挺大的劲得出了一个火星结论~
rouble兄和qyqgpower兄对x264的理解比我深入许多啊,希望以后能多指教~
techneek@2008-03-26 23:58
引用
最初由 Rouble 发布
偶也想不出為何all mode比final的出來差的原因
原則上crf値低的話應該有較大的空間rdo給trelis量化做微調
不過一般人的説法也是不太贊成one pass下去加入trelis量化
雖然偶還是覺得和片段上有段
不過techneek兄你兩段demo也有相同的問題
偶就覺得不能單單考慮ssim
我也试着在播放器里播放两段视频来寻找差别,但是肉眼真的很难分辨,恐怕同帧截图仔细观察能发现差别,但是我还暂时还没时间做那个,不过Trellis本身也是一种rdo,而rdo本质上讲是为psnr:bit优化的,严格说来就是psnr:bit而不是ssim:bit,而psnr未必跟主管观感有联系,所以我觉得trellis的输出未必能提升观感这倒是真的。所以我想即使不考虑ssim和psnr这些纯数据,而用肉眼直接观看的话,恐怕也很难得出差异化的结论。anyway,这只是一种猜测罢了,我明天争取做一下主观比较。
多谢rouble兄的提醒~
Rouble@2008-03-27 00:05
這帖很好
偶自己記性不太好
久不久用到可以回來看下...orz
techneek兄也是很進取的人
事情總事要弄個明白
偶那敢在techneek兄前斑門弄斧
以後請多多指教了@@
時間不早
晩安了
techneek兄也早点睡吧~
話説楼主給偶趕走了...orz
«45678»共8页
| TOP