分页: 8 / 8

Re: flash3kyuu_deband 1.5.1 x86/x64 [2012-04-07]

发表于 : 2012-04-13 23:28
zhongpang

代码: 全选

AVISource("D:\Program Files\Encoder\x264\x64\10bit\FFV1.avi", pixel_type="RGB32") Dither_convert_rgb_to_yuv(lsb=true) f3kdb(Y=0,Cb=0,Cr=0,grainY=0,grainC=0,sample_mode=1,input_mode=1,input_depth=16,output_mode=2,dither_algo=2,output_depth=10)
我用这个avs脚本压出来的10bit视频(没有dither产生的杂点)
播放时试了大部分渲染器,颜色都是错误的
如果在madvr开启了dither,那么大片区域会产生dither后的杂点
如果在madvr关闭dither,那么颜色是正确的
想请教是在哪里出了问题呢?
是madvr的dither算法有问题
还是avs里有问题造成了颜色损失?

Re: flash3kyuu_deband 1.5.1 x86/x64 [2012-04-07]

发表于 : 2012-04-13 23:34
longhuizhu
用那个1 CRF 1pass来压,输入全是一片绿色,估计设置的不对,用avs4x264mod-laa.exe来压,就是只读错误,折腾一晚了,以后再说吧,还是用1 CRF 1pass老老实实的压吧

Re: flash3kyuu_deband 1.5.1 x86/x64 [2012-04-07]

发表于 : 2012-04-14 5:53
06_taro
1st和2nd pass分辨率不一致,檢查一下是否兩次都加了--input-depth 10。個人懷疑1st pass忘了加了

Re: flash3kyuu_deband 1.5.1 x86/x64 [2012-04-07]

发表于 : 2012-04-14 12:10
SAPikachu
zhongpang 写了:

代码: 全选

AVISource("D:\Program Files\Encoder\x264\x64\10bit\FFV1.avi", pixel_type="RGB32") Dither_convert_rgb_to_yuv(lsb=true) f3kdb(Y=0,Cb=0,Cr=0,grainY=0,grainC=0,sample_mode=1,input_mode=1,input_depth=16,output_mode=2,dither_algo=2,output_depth=10)
我用这个avs脚本压出来的10bit视频(没有dither产生的杂点)
播放时试了大部分渲染器,颜色都是错误的
如果在madvr开启了dither,那么大片区域会产生dither后的杂点
如果在madvr关闭dither,那么颜色是正确的
想请教是在哪里出了问题呢?
是madvr的dither算法有问题
还是avs里有问题造成了颜色损失?
使用Dither_convert_rgb_to_yuv来做RGB->YUV转换的话,lsb本来就不是空白的,所以会出现dither噪声。

Re: flash3kyuu_deband 1.5.1 x86/x64 [2012-04-07]

发表于 : 2012-04-15 0:07
zhongpang
感谢,现在搞懂了
还想问下,
f3kdb是在420的环境下进行处理的吗?
不支持在全采样环境下处理并输出吗?

Re: flash3kyuu_deband 1.5.1 x86/x64 [2012-04-07]

发表于 : 2012-04-15 3:31
06_taro
422的YV16和444的YV24都是支持的吧

Re: flash3kyuu_deband 1.5.1 x86/x64 [2012-04-07]

发表于 : 2012-04-15 9:43
SAPikachu
YV16和YV24都支持的。YUY2也支持,不过速度很慢而且可能有bug,所以不推荐,建议先转换到YV16再处理。

Re: flash3kyuu_deband 1.5.1 x86/x64 [2012-04-07]

发表于 : 2012-04-15 11:51
zhongpang
感谢指点

原来是2.6才加入了YV24,
用2.5在Dither_convert_rgb_to_yuv加上output="YV24"不会报错,
会被隐式转为YV12

这下可以在avs里无损处理RGB了

不过还有个问题

Dither_convert_rgb_to_yuv(lsb=true,output="YV24")
Dither_lut16(expr="x 64 /")
Dither_lut16(expr="x 6 <<")
down10.c16或 down10(dither=-1).c16

然后x264 10bit i444输出
然后在madvr用rounding
结果也不是无损的
原因好像是Dither_lut16只在Y平面处理了
U,V的lsb还是不为0

用yexpr,uexpr,vexpr
分别写,U,V也没有效果
不知是哪里出了问题
还望指点

Re: flash3kyuu_deband 1.5.1 x86/x64 [2012-04-07]

发表于 : 2012-04-15 14:53
Holy
Dither_lut16("ooxx", u=3, v=3)……後續問題若與本帖主題無關就不要繼續在這討論了。

Re: flash3kyuu_deband 1.5.1 / 2.0pre+b98d6bc x86/x64 [2015-05-02]

发表于 : 2019-06-28 1:25
msg7086
f3kdb 2.1 (测试中)

基于2.0,加入了AviSynth+中的原生高位深支持(意味着以前的stacked/interleave都废弃了)
支持YUV4xxP8/P10/P12/P14/P16和I420输入。
不再支持旧版AviSynth。

GitHub | 下载

欢迎测试。