ffmpeg two pass、2pass、-pass编码问题?

我有大概20个T的视频,需要转码成m3u8,用libx264 preset veryslow crf 23,慢的很,但是文件小,质量高,如果20T都用这种方式转,恐怕要转到明年。

还有一种是用 h264_nvenc,也就是用显卡转,非常快,但是画质很差,配合cq参数,要想达到crf 23的画质级别,文件比原文件还大,除了快一无是处。。。

后来不断的找资料,看到知乎答主写的一篇文章:GPU 转码效果为什么不如纯 CPU? - 琴梨梨OvO的回答 - 知乎https://www.zhihu.com/questio...

里面提到一种two pass编码,第一遍用显卡生成编码信息,第二遍用处理器处理流数据,即快又清晰,文件也小,把原理都讲出来了。

然后我试着加了-pass 1 和 -passlogfile 参数,第一遍用h264_nvenc编码,没生成日志文件,有一个log文件还是空的,再用libx264 加上-pass 2 和 -passlogfile 参数,提示是报错打不开文件,肯定了,毕竟没生成日志文件。

然后我调换了一下顺序,第一遍用libx264,第二遍用h264_nvenc,速度也没见提升啊,而且效果该差还是差。

给知乎的答主发了私信,但是一直没回。。。
我到底该怎么弄这个2pass,求指教

阅读 1.9k
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
宣传栏