请教如何保留更多X.264的细节
dwing吧
全部回复
仅看楼主
level 7
haierccc 楼主
曾几何时,XVID、DIVX一统高画质压缩的江山,属于收藏级别,而RM、RMVB由于其体积小巧下载快速,被用于“观看”,看完就删。
当时有新闻说正在开发一种叫做H.264的压缩算法,能以MPEG4一半的码率,实现相同的清晰度,我发帖问相关情况,没有几个回帖的。
时至今日,H.264算法已经成熟,以我的经验,1M码率的X264,大约等于1.5M码率的DIVX清晰度,最好情况等于2M的清晰度。
(另说一句,我曾经看过文章,说RMVB的PSNR曲线比H.264还好)
所以我在经过最初的繁琐的学习以后,逐步掌握了AVS、MEGUI这种麻烦的工具来压缩家庭视频。通过消耗大量的时间,来获得近乎于缩小一半的视频文件体积。
但是后来发现,压缩后的视频颜色不正,经本论坛高人指点,放弃DDS接口而使用ffmpegsource2接口,问题解决。
可现在还有一个问题,那就是,X264的细节,不如DIVX的细节。
见下图:
首先声明,以上2图的码率是不一样的,前者是 1M 的X264,后则是 2M 的DIVX.
我之所以这样压缩,是因为我想要在X264的1M码率下获得DIVX 2M码率的画质,很明显,在这个视频里是达不到的。比较这2张图,后者的细节明显多于前者。
但实际上我发现,哪怕用2M码率的X264,细节也比不上2M的DIVX。但是DIVX的马赛克多于X264。更高码率下2者差别不大了,所以在高码率下,我都用快速的DIVX。
我想请教的是,如何提高X264的细节。我对X264繁多的参数没有很深研究,我都是用DOOM9的Profile预制文件压缩。这个视频的参数如下:
X264:DXVA-HD-HQ
program --level 4.1 --pass 2 --bitrate 2000 --stats ".stats" --deblock -1:-1 --b-adapt 2 --ref 4 --qpmin 10 --qpmax 51 --vbv-bufsize 50000 --vbv-maxrate 50000 --me umh --direct auto --subme 6 --trellis 2 --output "output" "input"
这参数里,我有些怀疑deblock:-1:-1
我记得这2个参数如果往大里取,比如0,会保留更多细节,反之会抹去更多细节。
请问是这样么,请高人指点迷津!

2012年09月19日 11点09分 1
level 1
forum.doom9.org/showthread.php?t=109747
俺眼神不太好,x264某些参数的怎么调俺用肉眼都看不出区别
2012年09月19日 12点09分 2
level 7
haierccc 楼主
一下,用百度翻译
说deblock参数很容易被误使用。低值图像被软化,高值保留细节。
最高和最低不应该超过3
2012年09月19日 12点09分 3
level 13
应该是deblock值越小,越锐利吧.
LZ给的图中,DIVX的细节不一定是真的细节,那种也可能是DCT的瑕疵呢,应该找有规律的边缘来判断.
另外,这种放大这么多倍的细节,在实际观看中的感受有多大区别呢.
2012年09月19日 13点09分 4
实际上也是有明显感觉,图像被平滑
2012年09月21日 02点09分
level 13
X264还是低码率下适合压缩,质量更好。
国外似乎还是喜欢XVID,老外网速快,更追求画质,还不是容量更小
2012年09月19日 13点09分 5
level 5
我说些无关的吧~~~
看图样好象是小孩的视频,既然是记录家人(孩子的成长),就不要在乎压缩了,稍为压缩下就可以了。否则等你过多几年就可能会后悔了。
2012年09月19日 17点09分 6
你说得很对!
2012年09月20日 09点09分
level 12
要比应该和源视频的图比较,比哪个更接近源。
2012年09月20日 02点09分 7
level 6
deblock 值越大,除块的力度和范围就越明显。
2012年09月20日 02点09分 8
level 8
--crf 17 --preset slow --tune stillimage 试试看
2012年09月20日 11点09分 9
我试试看
2012年09月21日 02点09分
stillimage...这不是用于单张图像么?
2012年09月21日 04点09分
@小真诺诺 :x264预制配置的一个名称而已,按照说明上会保留更多的细节。
2012年09月21日 09点09分
回复 darkangel0224 :我UCI时用的参数--tune stillimage,zerolatency[揉脸]把--tune stillimage跟--tune zerolatency功能记重了。不过话说- stillimage:--aq-strength 1.2 --deblock -3:-3 --psy-rd 2.0:0.7是不是太狠了一点,码率不够的话会产生很多毛刺的。
2012年09月21日 11点09分
level 7
deblock 值越小,细节越多。不过一般不超过-3,
另外,你的图还真不好说是细节更多,还是瑕疵更多。
2012年09月21日 00点09分 10
的确是细微的头发
2012年09月21日 02点09分
回复 haierccc :有没有源视频同一帧的对比图
2012年09月21日 04点09分
level 9
crf不高于20的情况下--no-mbtree或者开mbtree并且--qcomp 0.80。
2012年09月23日 14点09分 12
[顶]
2012年09月23日 14点09分
看楼主的参数明显用的2pass,不是crf模式。
2012年09月24日 02点09分
那就是相当于crf=xx的码率呗,而且2pass也可以1st pass crf+2nd pass bitrate。
2012年09月24日 16点09分
回复 mawen1250 :呵呵,说的也是,不过看楼主显示是复制的megui上列出的, 1st pass crf+2nd pass bitrate估计对他来说可能比较麻烦。
2012年09月25日 01点09分
level 9
一定更要记住,用2pass的唯一目的就是控制大小在一个比较精确的范围。即使1st pass crf也是在目标码率已经确定的情况下,而不是根据1st pass的结果来定2nd pass的码率。
2012年09月27日 09点09分 13
了解,如果之前码率已经确定,那假如已经确定使用1000K的码率,如果1st pass crf跑出来2000,然后再用1000K的码率跑pass2和直接2pass bitrate 1000K两种方式压出来的文件有没有区别?
2012年09月27日 12点09分
回复 free077go :1st pass码率与2nd pass码率越接近参考价值越大,差得过多的话对2nd pass的结果负面影响也很明显。
2012年09月27日 15点09分
level 3

H.264特征
去马赛克:开启环路滤波,去除马赛克,默认值:勾选
筛选强度:当勾选了去马赛克可设置数值,设置环路滤波的AlphaC的参数,提供范围在-6—6。选负值时,画面会锐利,建议值为0
筛选阈值:同上,设置环路滤波Beta的参数,提供数值同上,建议值同上,默认。CABAC:基于上下文自适应的二进制算术编码(Context-based Adaptive Binary Arithmetic Coding)默认开启,选上后使码率降低10%左右而基本无质量损失,禁用后可以占用更少的CPU,就是压制速度会加快,但是会影响压缩性能,并会使得x264的一些高级功能被禁用。对比另一种熵编码算法CAVLC要好上不少。
2012年10月06日 04点10分 14
level 9
其实直接用--tune grain就行了,专门就对这种细节进行psy tuning。
2012年10月07日 16点10分 15
level 1
1m264赶得上2mdivx是以相同的高质量片源为前提的,压divx已经有损一次了,再压264只会损失更多细节,如果本来就是极限码率的divx,已经损失大量不可见参考细节,就算同码率,转264后画质照样下降,如果divx片源是1.2m的720p(要看当初是不是用了高画质慢速压参数),压264就别低于1m,否话画质渣的不能接受
divx流行时是p4年代,如果你的片是06年前且码率低于1.5m的720p,为编码速度调减了质量参数,建议别浪费时间二次压缩了,为保留细节压后你的总体体积无法缩小15%以上,而且未来divx-264-265这样多次有损压缩细节损失极严重的,考虑上大硬盘专放divx更实际
而且家庭照相设备(卡片机,单反)就算片源高码率,不代表不可见的参考细节能保留下来,我的sony hx1,1920x1440p,15m码率,播放较清洗,但一压成720p,360p就算高码率都出现噪点和马赛克,认为其高码率只是为了降低实时编码的复杂度情况下保证一定的画质,而不是通过深度来保证画质,所以大码率不代表就是高画质(家庭录影机没用过,不清楚画质状况)
2012年10月18日 02点10分 16
1