dwing吧 关注:5,670贴子:89,139
  • 29回复贴,共1

求指导,借鉴大佬分享的参数用H265软压remux,如何提升VMAF值?

只看楼主收藏回复

感谢吧内大佬分享了成熟的压制参数!借鉴这套参数,不论是处理H264转H265,还是蓝光的m2ts转H265,画质基本都非常满意。crf26-faster的组合下,SSIM和VMAF都能达到92以上。
最近从98上下了6T多的Remux原盘大包,文件都在20G左右。想用纯cpu软压成H265格式的mp4保存。借鉴吧内大佬分享的压制参数,ffmpeg命令行尝试了从crf26-faster到crf14-medium等不同的压制组合,然后跑FFMetrics测试画质。结果很悲剧,所有的PSNR都在32.xx,所有的SSIM都在95.xx,而所有的VMAF都在67-72之间。最好的crf14-medium组合也只有72.7。求大佬指导如何调整参数提升VMAF值,达到91以上的近似无损画质。谢谢!
ffmpeg -i "smbd-172.mkv" -c:a aac -b:a 128k -ac 2 -c:v hevc -x265-params min-keyint=5:scenecut=50:open-gop=0:rc-lookahead=60:lookahead-slices=0:me=hex:subme=2:merange=57:ref=3:max-merge=3:no-strong-intra-smoothing=1:no-sao=1:selective-sao=0:deblock=-3,-3:ctu=32:rdoq-level=2:psy-rdoq=1.0:crf=26:rskip=2 -preset faster -pix_fmt yuv420p smbd-172-H265-CPU-crf26-faster-aac.mp4


IP属地:北京1楼2023-09-19 21:28回复
    快速压制没啥用,软编预设开快速不如硬编了,软编上个veryslow


    IP属地:辽宁来自Android客户端2楼2023-09-20 07:41
    回复
      2025-05-19 17:16:49
      广告
      预设默认更没必要了


      IP属地:辽宁来自Android客户端3楼2023-09-20 07:42
      回复
        能跑到这么低分多半是方法有问题


        IP属地:福建来自Android客户端4楼2023-09-20 13:28
        收起回复
          用264.exe和ffmpeg的libx264,同样的参数,压出来的视频一般分数相同,或者差距很小,但偶尔也有视频分数差距很大,据说是因为音频不同步造成ffmepg压出来分数极低。虽然不一定能解决你的问题,但是至少能告诉你,不要迷信数据。

          ps:av1也是用ffmpeg管道输出给Svtav1压制。


          IP属地:江苏5楼2023-09-20 19:27
          收起回复
            感谢Z大回复!今天学习了大佬的“分享一下我主要用于BDrip的x265参数吧……”帖子,照猫画虎再次压制,速度超级慢,但三项指标PSNR、SSIM和VMAF依然没有个位数的提升,求指导!
            ffmpeg -i "smbd-172.mkv" -c:a aac -b:a 128k -ac 2 -c:v hevc -x265-params psy-rd=2:aq-mode=1:aq-strength=0.8:qcomp=0.7:pbratio=1.2:sao=0:rect=0:strong-intra-smoothing=0:b-intra=1:weightb=1:ctu=32:cbqpoffs=-2:crqpoffs=-2:deblock=-1,-1:rc-lookahead=80:keyint=360:min-keyint=1:open-gop=0:bframes=8:rd=5 -pix_fmt yuv420p10le -preset 6 -crf 14 smbd-172-H265-CPU-crf14-6-Z.mp4


            IP属地:北京6楼2023-09-20 21:05
            回复
              这是简化版的x265批处理脚本供你参考,把视频文件拖放到批处理文件上就行。需要提前准备好AviSynth的库文件,x265.exe和avs4x26x.exe这些都需要设置好环境变量,或者用绝对路径,ffmpeg只做转音频和合并的工作。


              IP属地:江苏7楼2023-09-20 22:20
              收起回复
                跟你说分数有问题了,我们正常vmaf 95分叫偏低,91分叫做很差了,码率不变改个参数哪来的地方让你个位数提升


                IP属地:福建来自Android客户端8楼2023-09-21 17:42
                收起回复
                  2025-05-19 17:10:49
                  广告
                  preset 要用中


                  IP属地:湖北9楼2023-09-22 08:30
                  收起回复
                    ffmpeg -r 指定帧数
                    -i 前面加


                    IP属地:湖北10楼2023-09-22 09:50
                    收起回复
                      大佬的方法还是很有效的,所有参数都没有动,就是在-i的前面加了 -r 29.97这个参数。用crf26和faster压制后测试,PSNR上到了41,SSIM也提升到97以上,最关键的VMAF直接从70左右一口气飞升到92.4。完美了。谢谢大佬!


                      IP属地:北京11楼2023-09-22 21:10
                      回复
                        md output
                        for %%i in (*.mp4) do ffmpeg.exe -noautorotate -i ".\%%i" -filter:v "scale=1920:-1" -vsync passthrough -c:v libx265 -pix_fmt yuv420p10le -preset 3 -crf 26 -x265-params psy-rd=2:aq-mode=1:aq-strength=0.8:qcomp=0.6:pbratio=1.2:sao=0:rect=0:strong-intra-smoothing=0:b-intra=1:weightb=1:ctu=32:cbqpoffs=-2:crqpoffs=-2:deblock=-1,-1:rc-lookahead=25:keyint=250:min-keyint=20:open-gop=0:bframes=5:rd=4 -acodec copy "G:\output\%%i.x265.crf26.10bit.ctu32.mp4"
                        给一个之前用过的BAT代码参数供参考。
                        说明:
                        1、md output在当前目录创建output文件夹(存放转码后的文件)
                        2、建议不改,用原始的scenecut=40(场景切换,充入i帧,会有连续影响,推荐原始值40)
                        3、转码后在ipad上看,可以把分辨率降到720p,上面代码是1080p,只是在ipad看crf可以加到默认值28
                        4、以上代码参考Mr-Z、flyabcdefg321在本吧的贴子,自己组装
                        5、没有万能的参数,只有适合自己的代码最好


                        IP属地:四川12楼2023-10-17 13:42
                        收起回复