libx264和h264_nvenc有什么区别?

4

我试图对一些视频进行编码,但是当我使用libx264时它们无法正常工作,但是如果将编解码器更改为h264_nvenc,它们就可以播放。

当我在使用libx264时将配置文件更改为baseline时,这些视频可以播放。

它们之间有什么区别?我可以使用h264_nvenc,但我想要使用libx264以获得更好的存储质量。

我的代码:

bin\ffmpeg -i "Input-File" -c:v h264_nvenc -bf 3 -b_strategy 2 -temporal-aq 1 -rc-lookahead 20 -profile:v high -preset slow -rc vbr_hq -rc:v vbr_hq -qmin 0 -cq:v 19 -b:v 900k -maxrate:v 5000k -bufsize 2000K -c:a aac -ar 48000 -b:a 128k "Output-File.mp4"

您的播放器不支持x264的默认编码,但它支持h264_nvenc的默认编码。很可能,您想要达到更好的质量与您的播放器不兼容。 - Alex Cohn
@AlexCohn 这是我的想法。经过多个小时的试验和摸索,我得出了以下命令:bin\ffmpeg -i inputfile.ext -c:v libx264 -coder ac -refs 4 -me_range 24 -qblur 0.5 -chromaoffset -3 -x264-params deblock=-1,-1:fast_pskip=0:cplxblur=20.0:psy_rd=1.00,0.15:analyse=0x3,0x133 -crf 19 -b:v 1M -minrate 500k -maxrate 2M -bufsize 2M -preset slower -profile:v high422 -level 4.1 -pix_fmt yuv420p -c:a aac -ar 48000 -b:a 128k -movflags +faststart output-file.mp4 可能有点过度设计,但它确实有效。 - Jonathan Morrall
问题是,在进行这些调整后,您是否仍然可以通过使用libx264与h264_nvenc相比获得一些改进。 - Alex Cohn
1
使用libx264进行调整对于快速移动场景更好。 - Jonathan Morrall
1个回答

15

2
我猜测,在相同的比特率下,libx264提供的质量比h264_nvenc更好。事实如此。 h264_nvenc可能更快,使用的功率更少。也是正确的。 - szatmary
是的。相比之下,Nvenc 生成的文件要大得多。在我们的情况下,相同质量的文件大小可能会增加10倍。 - PRMan

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接